@sima-land/isomorph 10.0.0 → 11.0.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cache/types.d.ts +7 -0
- package/cache/types.js +3 -0
- package/cache/types.js.map +1 -0
- package/config/browser.d.ts +6 -0
- package/config/browser.js +13 -0
- package/config/browser.js.map +1 -0
- package/config/index.d.ts +7 -0
- package/config/index.js +20 -0
- package/config/index.js.map +1 -0
- package/config/node.d.ts +6 -0
- package/config/node.js +19 -0
- package/config/node.js.map +1 -0
- package/config/types.d.ts +7 -0
- package/config/types.js +3 -0
- package/config/types.js.map +1 -0
- package/config/utils.d.ts +5 -0
- package/config/utils.js +12 -0
- package/config/utils.js.map +1 -0
- package/container/application.d.ts +25 -0
- package/container/application.js +63 -0
- package/container/application.js.map +1 -0
- package/container/index.d.ts +16 -13
- package/container/index.js +60 -161
- package/container/index.js.map +1 -1
- package/container/types.d.ts +14 -0
- package/container/types.js +3 -0
- package/container/types.js.map +1 -0
- package/error-tracker/browser.d.ts +8 -0
- package/error-tracker/browser.js +40 -0
- package/error-tracker/browser.js.map +1 -0
- package/error-tracker/node.d.ts +8 -0
- package/error-tracker/node.js +40 -0
- package/error-tracker/node.js.map +1 -0
- package/error-tracker/types.d.ts +18 -0
- package/error-tracker/types.js +3 -0
- package/error-tracker/types.js.map +1 -0
- package/error-tracker/utils.d.ts +12 -0
- package/error-tracker/utils.js +19 -0
- package/error-tracker/utils.js.map +1 -0
- package/http-client/middleware/cookie.d.ts +19 -0
- package/http-client/middleware/cookie.js +62 -0
- package/http-client/middleware/cookie.js.map +1 -0
- package/http-client/middleware/tracing.d.ts +32 -0
- package/http-client/middleware/tracing.js +67 -0
- package/http-client/middleware/tracing.js.map +1 -0
- package/http-client/types.d.ts +6 -0
- package/http-client/types.js +3 -0
- package/http-client/types.js.map +1 -0
- package/http-client/utils.d.ts +36 -0
- package/http-client/utils.js +49 -0
- package/http-client/utils.js.map +1 -0
- package/http-server/constants.d.ts +4 -0
- package/http-server/constants.js +8 -0
- package/http-server/constants.js.map +1 -0
- package/http-server/handler/health-check.d.ts +6 -0
- package/http-server/handler/health-check.js +15 -0
- package/http-server/handler/health-check.js.map +1 -0
- package/http-server/middleware/logging.d.ts +10 -0
- package/http-server/middleware/logging.js +31 -0
- package/http-server/middleware/logging.js.map +1 -0
- package/http-server/middleware/metrics.d.ts +23 -0
- package/http-server/middleware/metrics.js +60 -0
- package/http-server/middleware/metrics.js.map +1 -0
- package/http-server/middleware/tracing.d.ts +8 -0
- package/http-server/middleware/tracing.js +32 -0
- package/http-server/middleware/tracing.js.map +1 -0
- package/http-server/template/index.d.ts +1 -0
- package/http-server/template/index.js +36 -0
- package/http-server/template/index.js.map +1 -0
- package/http-server/types.d.ts +33 -0
- package/http-server/types.js +3 -0
- package/http-server/types.js.map +1 -0
- package/http-server/utils.d.ts +30 -0
- package/http-server/utils.js +100 -0
- package/http-server/utils.js.map +1 -0
- package/logger/handler/console.d.ts +8 -0
- package/logger/handler/console.js +36 -0
- package/logger/handler/console.js.map +1 -0
- package/logger/handler/sentry.d.ts +8 -0
- package/logger/handler/sentry.js +36 -0
- package/logger/handler/sentry.js.map +1 -0
- package/logger/index.d.ts +6 -0
- package/logger/index.js +31 -0
- package/logger/index.js.map +1 -0
- package/logger/types.d.ts +24 -0
- package/logger/types.js +3 -0
- package/logger/types.js.map +1 -0
- package/metrics/constants.d.ts +4 -0
- package/metrics/constants.js +8 -0
- package/metrics/constants.js.map +1 -0
- package/metrics/node.d.ts +18 -0
- package/metrics/node.js +74 -0
- package/metrics/node.js.map +1 -0
- package/package.json +44 -63
- package/preset/index.d.ts +7 -0
- package/preset/index.js +25 -0
- package/preset/index.js.map +1 -0
- package/preset/node/index.d.ts +15 -0
- package/preset/node/index.js +90 -0
- package/preset/node/index.js.map +1 -0
- package/preset/node/response.d.ts +17 -0
- package/preset/node/response.js +78 -0
- package/preset/node/response.js.map +1 -0
- package/preset/types.d.ts +7 -0
- package/preset/types.js +3 -0
- package/preset/types.js.map +1 -0
- package/saga-runner/index.d.ts +8 -0
- package/saga-runner/index.js +79 -0
- package/saga-runner/index.js.map +1 -0
- package/saga-runner/types.d.ts +10 -0
- package/saga-runner/types.js +3 -0
- package/saga-runner/types.js.map +1 -0
- package/tokens.d.ts +41 -0
- package/tokens.js +44 -0
- package/tokens.js.map +1 -0
- package/tracer/node.d.ts +10 -0
- package/tracer/node.js +38 -0
- package/tracer/node.js.map +1 -0
- package/tracer/types.d.ts +2 -0
- package/tracer/types.js +3 -0
- package/tracer/types.js.map +1 -0
- package/{browser → utils/browser}/analytics/data-layer.d.ts +0 -0
- package/{browser → utils/browser}/analytics/data-layer.js +1 -2
- package/utils/browser/analytics/data-layer.js.map +1 -0
- package/{browser → utils/browser}/analytics/oko.d.ts +0 -0
- package/{browser → utils/browser}/analytics/oko.js +6 -7
- package/utils/browser/analytics/oko.js.map +1 -0
- package/utils/browser/storage/index.d.ts +4 -0
- package/utils/browser/storage/index.js +63 -0
- package/utils/browser/storage/index.js.map +1 -0
- package/utils/number.d.ts +6 -0
- package/utils/number.js +13 -0
- package/utils/number.js.map +1 -0
- package/utils/react/error-handlers/index.d.ts +38 -0
- package/utils/react/error-handlers/index.js +47 -0
- package/utils/react/error-handlers/index.js.map +1 -0
- package/utils/redux/remote-data.d.ts +23 -0
- package/utils/redux/remote-data.js +28 -0
- package/utils/redux/remote-data.js.map +1 -0
- package/utils/redux-saga/take-chain.d.ts +24 -0
- package/utils/redux-saga/take-chain.js +56 -0
- package/utils/redux-saga/take-chain.js.map +1 -0
- package/utils/webpack/module-federation/index.d.ts +21 -0
- package/utils/webpack/module-federation/index.js +74 -0
- package/utils/webpack/module-federation/index.js.map +1 -0
- package/utils/webpack/module-federation/types.d.ts +26 -0
- package/utils/webpack/module-federation/types.js +3 -0
- package/utils/webpack/module-federation/types.js.map +1 -0
- package/utils/webpack/module-federation/utils.d.ts +15 -0
- package/utils/webpack/module-federation/utils.js +36 -0
- package/utils/webpack/module-federation/utils.js.map +1 -0
- package/browser/analytics/data-layer.js.map +0 -1
- package/browser/analytics/oko.js.map +0 -1
- package/cache/helpers.d.ts +0 -4
- package/cache/helpers.js +0 -39
- package/cache/helpers.js.map +0 -1
- package/cache/local-storage.d.ts +0 -34
- package/cache/local-storage.js +0 -90
- package/cache/local-storage.js.map +0 -1
- package/cache/redis.d.ts +0 -10
- package/cache/redis.js +0 -54
- package/cache/redis.js.map +0 -1
- package/cache/wrap-in-trace.d.ts +0 -8
- package/cache/wrap-in-trace.js +0 -68
- package/cache/wrap-in-trace.js.map +0 -1
- package/config/create.d.ts +0 -8
- package/config/create.js +0 -32
- package/config/create.js.map +0 -1
- package/config/helpers.d.ts +0 -11
- package/config/helpers.js +0 -71
- package/config/helpers.js.map +0 -1
- package/config/validate.d.ts +0 -18
- package/config/validate.js +0 -107
- package/config/validate.js.map +0 -1
- package/container/create-inject.d.ts +0 -7
- package/container/create-inject.js +0 -36
- package/container/create-inject.js.map +0 -1
- package/container/get-dependencies.d.ts +0 -13
- package/container/get-dependencies.js +0 -54
- package/container/get-dependencies.js.map +0 -1
- package/container/is-container.d.ts +0 -7
- package/container/is-container.js +0 -17
- package/container/is-container.js.map +0 -1
- package/container/service-not-found-error.d.ts +0 -10
- package/container/service-not-found-error.js +0 -18
- package/container/service-not-found-error.js.map +0 -1
- package/create-proxy/create-proxy-middleware/index.d.ts +0 -16
- package/create-proxy/create-proxy-middleware/index.js +0 -47
- package/create-proxy/create-proxy-middleware/index.js.map +0 -1
- package/create-proxy/index.d.ts +0 -12
- package/create-proxy/index.js +0 -25
- package/create-proxy/index.js.map +0 -1
- package/create-response-sender/index.d.ts +0 -8
- package/create-response-sender/index.js +0 -42
- package/create-response-sender/index.js.map +0 -1
- package/get-dynamic-data/index.d.ts +0 -8
- package/get-dynamic-data/index.js +0 -23
- package/get-dynamic-data/index.js.map +0 -1
- package/graceful-shutdown/index.d.ts +0 -26
- package/graceful-shutdown/index.js +0 -87
- package/graceful-shutdown/index.js.map +0 -1
- package/helpers/add-error-handling/index.d.ts +0 -1
- package/helpers/add-error-handling/index.js +0 -42
- package/helpers/add-error-handling/index.js.map +0 -1
- package/helpers/api/create-enhancer.d.ts +0 -12
- package/helpers/api/create-enhancer.js +0 -52
- package/helpers/api/create-enhancer.js.map +0 -1
- package/helpers/api/create-instance.d.ts +0 -11
- package/helpers/api/create-instance.js +0 -39
- package/helpers/api/create-instance.js.map +0 -1
- package/helpers/api/middlewares/collect-cookie-middleware.d.ts +0 -10
- package/helpers/api/middlewares/collect-cookie-middleware.js +0 -39
- package/helpers/api/middlewares/collect-cookie-middleware.js.map +0 -1
- package/helpers/api/middlewares/count-api-response-time.d.ts +0 -12
- package/helpers/api/middlewares/count-api-response-time.js +0 -39
- package/helpers/api/middlewares/count-api-response-time.js.map +0 -1
- package/helpers/api/middlewares/error-handlers-middlewares.d.ts +0 -5
- package/helpers/api/middlewares/error-handlers-middlewares.js +0 -114
- package/helpers/api/middlewares/error-handlers-middlewares.js.map +0 -1
- package/helpers/api/middlewares/helpers.d.ts +0 -11
- package/helpers/api/middlewares/helpers.js +0 -27
- package/helpers/api/middlewares/helpers.js.map +0 -1
- package/helpers/api/middlewares/pass-headers-middleware.d.ts +0 -3
- package/helpers/api/middlewares/pass-headers-middleware.js +0 -27
- package/helpers/api/middlewares/pass-headers-middleware.js.map +0 -1
- package/helpers/api/middlewares/prepare-request-headers.d.ts +0 -5
- package/helpers/api/middlewares/prepare-request-headers.js +0 -20
- package/helpers/api/middlewares/prepare-request-headers.js.map +0 -1
- package/helpers/api/middlewares/set-http-agents-middleware.d.ts +0 -15
- package/helpers/api/middlewares/set-http-agents-middleware.js +0 -34
- package/helpers/api/middlewares/set-http-agents-middleware.js.map +0 -1
- package/helpers/api/middlewares/stages-trace-middleware.d.ts +0 -17
- package/helpers/api/middlewares/stages-trace-middleware.js +0 -57
- package/helpers/api/middlewares/stages-trace-middleware.js.map +0 -1
- package/helpers/api/middlewares/trace-request-middleware.d.ts +0 -24
- package/helpers/api/middlewares/trace-request-middleware.js +0 -69
- package/helpers/api/middlewares/trace-request-middleware.js.map +0 -1
- package/helpers/api/server-adapter/__fixtures__/fake-keys.d.ts +0 -10
- package/helpers/api/server-adapter/__fixtures__/fake-keys.js +0 -61
- package/helpers/api/server-adapter/__fixtures__/fake-keys.js.map +0 -1
- package/helpers/api/server-adapter/constants.d.ts +0 -5
- package/helpers/api/server-adapter/constants.js +0 -16
- package/helpers/api/server-adapter/constants.js.map +0 -1
- package/helpers/api/server-adapter/helpers.d.ts +0 -26
- package/helpers/api/server-adapter/helpers.js +0 -208
- package/helpers/api/server-adapter/helpers.js.map +0 -1
- package/helpers/api/server-adapter/index.d.ts +0 -10
- package/helpers/api/server-adapter/index.js +0 -118
- package/helpers/api/server-adapter/index.js.map +0 -1
- package/helpers/development/use-dot-env.d.ts +0 -6
- package/helpers/development/use-dot-env.js +0 -11
- package/helpers/development/use-dot-env.js.map +0 -1
- package/helpers/get-params/index.d.ts +0 -4
- package/helpers/get-params/index.js +0 -51
- package/helpers/get-params/index.js.map +0 -1
- package/helpers/http/request-getters.d.ts +0 -5
- package/helpers/http/request-getters.js +0 -49
- package/helpers/http/request-getters.js.map +0 -1
- package/helpers/http/statuses-validator.d.ts +0 -3
- package/helpers/http/statuses-validator.js +0 -25
- package/helpers/http/statuses-validator.js.map +0 -1
- package/helpers/logger/create-pino-instance/index.d.ts +0 -6
- package/helpers/logger/create-pino-instance/index.js +0 -39
- package/helpers/logger/create-pino-instance/index.js.map +0 -1
- package/helpers/logger/format-time/index.d.ts +0 -6
- package/helpers/logger/format-time/index.js +0 -9
- package/helpers/logger/format-time/index.js.map +0 -1
- package/helpers/metrics/index.d.ts +0 -23
- package/helpers/metrics/index.js +0 -42
- package/helpers/metrics/index.js.map +0 -1
- package/helpers/prometheus/index.d.ts +0 -4
- package/helpers/prometheus/index.js +0 -13
- package/helpers/prometheus/index.js.map +0 -1
- package/helpers/prometheus/measure-middleware.d.ts +0 -5
- package/helpers/prometheus/measure-middleware.js +0 -69
- package/helpers/prometheus/measure-middleware.js.map +0 -1
- package/helpers/prometheus/metric-adapter.d.ts +0 -36
- package/helpers/prometheus/metric-adapter.js +0 -98
- package/helpers/prometheus/metric-adapter.js.map +0 -1
- package/helpers/react/error-handlers/index.d.ts +0 -40
- package/helpers/react/error-handlers/index.js +0 -52
- package/helpers/react/error-handlers/index.js.map +0 -1
- package/helpers/redux/constants.d.ts +0 -5
- package/helpers/redux/constants.js +0 -14
- package/helpers/redux/constants.js.map +0 -1
- package/helpers/redux/create-compose-middleware.d.ts +0 -15
- package/helpers/redux/create-compose-middleware.js +0 -23
- package/helpers/redux/create-compose-middleware.js.map +0 -1
- package/helpers/redux/get-dev-compose-creator.d.ts +0 -6
- package/helpers/redux/get-dev-compose-creator.js +0 -13
- package/helpers/redux/get-dev-compose-creator.js.map +0 -1
- package/helpers/redux/prepare-on-ready.d.ts +0 -9
- package/helpers/redux/prepare-on-ready.js +0 -16
- package/helpers/redux/prepare-on-ready.js.map +0 -1
- package/helpers/redux/remote-data.d.ts +0 -40
- package/helpers/redux/remote-data.js +0 -91
- package/helpers/redux/remote-data.js.map +0 -1
- package/helpers/redux/selector/statuses.d.ts +0 -23
- package/helpers/redux/selector/statuses.js +0 -34
- package/helpers/redux/selector/statuses.js.map +0 -1
- package/helpers/redux/wait-on-store-readiness.d.ts +0 -11
- package/helpers/redux/wait-on-store-readiness.js +0 -29
- package/helpers/redux/wait-on-store-readiness.js.map +0 -1
- package/helpers/render/get-react-markup-data.d.ts +0 -14
- package/helpers/render/get-react-markup-data.js +0 -20
- package/helpers/render/get-react-markup-data.js.map +0 -1
- package/helpers/render/index.d.ts +0 -21
- package/helpers/render/index.js +0 -72
- package/helpers/render/index.js.map +0 -1
- package/helpers/render/render-app.d.ts +0 -12
- package/helpers/render/render-app.js +0 -12
- package/helpers/render/render-app.js.map +0 -1
- package/helpers/saga/__fixtures__/do-safe-request.d.ts +0 -43
- package/helpers/saga/__fixtures__/do-safe-request.js +0 -50
- package/helpers/saga/__fixtures__/do-safe-request.js.map +0 -1
- package/helpers/saga/cache-result.d.ts +0 -46
- package/helpers/saga/cache-result.js +0 -71
- package/helpers/saga/cache-result.js.map +0 -1
- package/helpers/saga/create-store.d.ts +0 -20
- package/helpers/saga/create-store.js +0 -106
- package/helpers/saga/create-store.js.map +0 -1
- package/helpers/saga/do-safe-request.d.ts +0 -38
- package/helpers/saga/do-safe-request.js +0 -45
- package/helpers/saga/do-safe-request.js.map +0 -1
- package/helpers/saga/safe-request.d.ts +0 -7
- package/helpers/saga/safe-request.js +0 -15
- package/helpers/saga/safe-request.js.map +0 -1
- package/helpers/saga/take-chain.d.ts +0 -20
- package/helpers/saga/take-chain.js +0 -56
- package/helpers/saga/take-chain.js.map +0 -1
- package/helpers/tracer/create-child-tracing-middleware.d.ts +0 -7
- package/helpers/tracer/create-child-tracing-middleware.js +0 -40
- package/helpers/tracer/create-child-tracing-middleware.js.map +0 -1
- package/helpers/tracer/index.d.ts +0 -24
- package/helpers/tracer/index.js +0 -144
- package/helpers/tracer/index.js.map +0 -1
- package/helpers/utils/check-feature-by-segment.d.ts +0 -2
- package/helpers/utils/check-feature-by-segment.js +0 -31
- package/helpers/utils/check-feature-by-segment.js.map +0 -1
- package/helpers/utils/format-object-keys.d.ts +0 -6
- package/helpers/utils/format-object-keys.js +0 -27
- package/helpers/utils/format-object-keys.js.map +0 -1
- package/helpers/utils/get-ms-from-hrt.d.ts +0 -2
- package/helpers/utils/get-ms-from-hrt.js +0 -22
- package/helpers/utils/get-ms-from-hrt.js.map +0 -1
- package/helpers/utils/is-match-pattern-list.d.ts +0 -8
- package/helpers/utils/is-match-pattern-list.js +0 -16
- package/helpers/utils/is-match-pattern-list.js.map +0 -1
- package/helpers/utils/is-not-empty-array.d.ts +0 -2
- package/helpers/utils/is-not-empty-array.js +0 -12
- package/helpers/utils/is-not-empty-array.js.map +0 -1
- package/helpers/utils/is-not-empty-string.d.ts +0 -2
- package/helpers/utils/is-not-empty-string.js +0 -15
- package/helpers/utils/is-not-empty-string.js.map +0 -1
- package/helpers/utils/is-numeric.d.ts +0 -7
- package/helpers/utils/is-numeric.js +0 -16
- package/helpers/utils/is-numeric.js.map +0 -1
- package/helpers/utils/wrap-in-measure-event.d.ts +0 -9
- package/helpers/utils/wrap-in-measure-event.js +0 -50
- package/helpers/utils/wrap-in-measure-event.js.map +0 -1
- package/logger/create-logger-middleware/index.d.ts +0 -14
- package/logger/create-logger-middleware/index.js +0 -41
- package/logger/create-logger-middleware/index.js.map +0 -1
- package/logger/create-sentry-instance/index.d.ts +0 -29
- package/logger/create-sentry-instance/index.js +0 -63
- package/logger/create-sentry-instance/index.js.map +0 -1
- package/logger/create-sentry-middleware/index.d.ts +0 -14
- package/logger/create-sentry-middleware/index.js +0 -19
- package/logger/create-sentry-middleware/index.js.map +0 -1
- package/logger/handler-creators/index.d.ts +0 -5
- package/logger/handler-creators/index.js +0 -41
- package/logger/handler-creators/index.js.map +0 -1
- package/logger/initialize-sentry-creator/index.d.ts +0 -17
- package/logger/initialize-sentry-creator/index.js +0 -35
- package/logger/initialize-sentry-creator/index.js.map +0 -1
- package/logger/sentry-logger/index.d.ts +0 -9
- package/logger/sentry-logger/index.js +0 -36
- package/logger/sentry-logger/index.js.map +0 -1
- package/module-federation/__example__/webpack-config.example.d.ts +0 -366
- package/module-federation/__example__/webpack-config.example.js +0 -51
- package/module-federation/__example__/webpack-config.example.js.map +0 -1
- package/module-federation/enhanced-module-federation-plugin.d.ts +0 -46
- package/module-federation/enhanced-module-federation-plugin.js +0 -72
- package/module-federation/enhanced-module-federation-plugin.js.map +0 -1
- package/module-federation/utils/index.d.ts +0 -8
- package/module-federation/utils/index.js +0 -28
- package/module-federation/utils/index.js.map +0 -1
- package/observe-middleware/index.d.ts +0 -9
- package/observe-middleware/index.js +0 -67
- package/observe-middleware/index.js.map +0 -1
- package/set-header-middleware/create.d.ts +0 -10
- package/set-header-middleware/create.js +0 -16
- package/set-header-middleware/create.js.map +0 -1
- package/src/browser/analytics/data-layer.ts +0 -12
- package/src/browser/analytics/oko.ts +0 -42
- package/src/cache/helpers.js +0 -32
- package/src/cache/local-storage.ts +0 -92
- package/src/cache/redis.js +0 -79
- package/src/cache/wrap-in-trace.js +0 -57
- package/src/config/create.js +0 -33
- package/src/config/helpers.js +0 -71
- package/src/config/validate.js +0 -114
- package/src/container/create-inject.js +0 -32
- package/src/container/get-dependencies.js +0 -46
- package/src/container/index.js +0 -188
- package/src/container/is-container.js +0 -14
- package/src/container/service-not-found-error.js +0 -14
- package/src/create-proxy/create-proxy-middleware/index.js +0 -47
- package/src/create-proxy/index.js +0 -27
- package/src/create-response-sender/index.js +0 -48
- package/src/get-dynamic-data/index.js +0 -26
- package/src/graceful-shutdown/index.js +0 -97
- package/src/helpers/add-error-handling/index.js +0 -24
- package/src/helpers/api/create-enhancer.js +0 -52
- package/src/helpers/api/create-instance.js +0 -42
- package/src/helpers/api/middlewares/collect-cookie-middleware.js +0 -27
- package/src/helpers/api/middlewares/count-api-response-time.js +0 -31
- package/src/helpers/api/middlewares/error-handlers-middlewares.js +0 -124
- package/src/helpers/api/middlewares/helpers.js +0 -26
- package/src/helpers/api/middlewares/pass-headers-middleware.js +0 -19
- package/src/helpers/api/middlewares/prepare-request-headers.js +0 -18
- package/src/helpers/api/middlewares/set-http-agents-middleware.js +0 -22
- package/src/helpers/api/middlewares/stages-trace-middleware.js +0 -46
- package/src/helpers/api/middlewares/trace-request-middleware.ts +0 -86
- package/src/helpers/api/server-adapter/__fixtures__/fake-keys.js +0 -58
- package/src/helpers/api/server-adapter/constants.js +0 -12
- package/src/helpers/api/server-adapter/helpers.js +0 -244
- package/src/helpers/api/server-adapter/index.js +0 -155
- package/src/helpers/development/use-dot-env.js +0 -9
- package/src/helpers/get-params/index.js +0 -59
- package/src/helpers/http/request-getters.js +0 -42
- package/src/helpers/http/statuses-validator.js +0 -20
- package/src/helpers/logger/create-pino-instance/index.js +0 -41
- package/src/helpers/logger/format-time/index.js +0 -6
- package/src/helpers/metrics/index.js +0 -40
- package/src/helpers/prometheus/index.js +0 -9
- package/src/helpers/prometheus/measure-middleware.js +0 -73
- package/src/helpers/prometheus/metric-adapter.js +0 -99
- package/src/helpers/react/error-handlers/index.tsx +0 -68
- package/src/helpers/redux/constants.js +0 -10
- package/src/helpers/redux/create-compose-middleware.js +0 -24
- package/src/helpers/redux/get-dev-compose-creator.js +0 -9
- package/src/helpers/redux/prepare-on-ready.js +0 -16
- package/src/helpers/redux/remote-data.js +0 -124
- package/src/helpers/redux/selector/statuses.js +0 -30
- package/src/helpers/redux/wait-on-store-readiness.js +0 -40
- package/src/helpers/render/get-react-markup-data.js +0 -18
- package/src/helpers/render/index.js +0 -69
- package/src/helpers/render/render-app.js +0 -15
- package/src/helpers/saga/__fixtures__/do-safe-request.js +0 -49
- package/src/helpers/saga/cache-result.js +0 -77
- package/src/helpers/saga/create-store.js +0 -102
- package/src/helpers/saga/do-safe-request.js +0 -47
- package/src/helpers/saga/safe-request.js +0 -11
- package/src/helpers/saga/take-chain.js +0 -53
- package/src/helpers/tracer/create-child-tracing-middleware.js +0 -42
- package/src/helpers/tracer/index.js +0 -171
- package/src/helpers/utils/check-feature-by-segment.js +0 -32
- package/src/helpers/utils/format-object-keys.js +0 -23
- package/src/helpers/utils/get-ms-from-hrt.js +0 -16
- package/src/helpers/utils/is-match-pattern-list.js +0 -13
- package/src/helpers/utils/is-not-empty-array.js +0 -8
- package/src/helpers/utils/is-not-empty-string.js +0 -11
- package/src/helpers/utils/is-numeric.ts +0 -12
- package/src/helpers/utils/wrap-in-measure-event.js +0 -35
- package/src/logger/create-logger-middleware/index.js +0 -46
- package/src/logger/create-sentry-instance/index.js +0 -74
- package/src/logger/create-sentry-middleware/index.js +0 -16
- package/src/logger/handler-creators/index.js +0 -38
- package/src/logger/initialize-sentry-creator/index.js +0 -43
- package/src/logger/sentry-logger/index.js +0 -33
- package/src/module-federation/__example__/webpack-config.example.js +0 -57
- package/src/module-federation/enhanced-module-federation-plugin.js +0 -92
- package/src/module-federation/utils/index.js +0 -32
- package/src/observe-middleware/index.js +0 -70
- package/src/set-header-middleware/create.js +0 -17
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tracing.js","sourceRoot":"","sources":["../../../src/http-server/middleware/tracing.ts"],"names":[],"mappings":";;;AAAA,4CAA8C;AAC9C,4CAA+D;AAI/D;;;;GAIG;AACH,SAAgB,iBAAiB,CAAC,MAAc;IAC9C,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;QACxB,MAAM,WAAW,GAAG,iBAAW,CAAC,OAAO,CAAC,kBAAY,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;QACnE,MAAM,QAAQ,GAAG,MAAM,CAAC,SAAS,CAAC,UAAU,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QAEtE,GAAG,CAAC,MAAM,CAAC,OAAO,GAAG;YACnB,QAAQ;YACR,WAAW;SACZ,CAAC;QAEF,GAAG,CAAC,IAAI,CAAC,0BAAc,CAAC,WAAW,EAAE,GAAG,EAAE;YACxC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QACrF,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,IAAI,CAAC,0BAAc,CAAC,YAAY,EAAE,GAAG,EAAE;YACzC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE;YACtB,QAAQ,CAAC,GAAG,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;QAEH,IAAI,EAAE,CAAC;IACT,CAAC,CAAC;AACJ,CAAC;AAxBD,8CAwBC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const pageTemplate: import("ejs").TemplateFunction;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.pageTemplate = void 0;
|
|
4
|
+
const ejs_1 = require("ejs");
|
|
5
|
+
exports.pageTemplate = (0, ejs_1.compile)(`
|
|
6
|
+
<!DOCTYPE html>
|
|
7
|
+
<html lang="ru">
|
|
8
|
+
<head>
|
|
9
|
+
<meta charset="UTF-8">
|
|
10
|
+
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
11
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
12
|
+
<title><%= title %></title>
|
|
13
|
+
<style>
|
|
14
|
+
* {
|
|
15
|
+
margin: 0;
|
|
16
|
+
padding: 0;
|
|
17
|
+
border: 0;
|
|
18
|
+
outline: 0;
|
|
19
|
+
box-sizing: border-box;
|
|
20
|
+
font: inherit;
|
|
21
|
+
line-height: inherit;
|
|
22
|
+
}
|
|
23
|
+
</style>
|
|
24
|
+
<% if (assets.css) { %>
|
|
25
|
+
<link rel="stylesheet" href="<%= assets.css %>">
|
|
26
|
+
<% } %>
|
|
27
|
+
</head>
|
|
28
|
+
<body>
|
|
29
|
+
<%- markup %>
|
|
30
|
+
<% if (assets.js) { %>
|
|
31
|
+
<script src="<%= assets.js %>"></script>
|
|
32
|
+
<% } %>
|
|
33
|
+
</body>
|
|
34
|
+
</html>
|
|
35
|
+
`);
|
|
36
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/http-server/template/index.ts"],"names":[],"mappings":";;;AAAA,6BAA8B;AAEjB,QAAA,YAAY,GAAG,IAAA,aAAO,EAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8BnC,CAAC,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { Request, Response, NextFunction, Handler, ErrorRequestHandler } from 'express';
|
|
2
|
+
export interface ResponseContext {
|
|
3
|
+
req: Request;
|
|
4
|
+
res: Response;
|
|
5
|
+
next: NextFunction;
|
|
6
|
+
}
|
|
7
|
+
export interface PageAssets {
|
|
8
|
+
js: string;
|
|
9
|
+
css: string;
|
|
10
|
+
}
|
|
11
|
+
export interface PageTemplateData {
|
|
12
|
+
markup: string;
|
|
13
|
+
assets: PageAssets;
|
|
14
|
+
type: 'json' | 'html';
|
|
15
|
+
}
|
|
16
|
+
export interface PageTemplate {
|
|
17
|
+
(data: PageTemplateData): string;
|
|
18
|
+
}
|
|
19
|
+
export interface ConventionalJson {
|
|
20
|
+
markup: string;
|
|
21
|
+
bundle_js: string;
|
|
22
|
+
bundle_css: string;
|
|
23
|
+
critical_js?: string;
|
|
24
|
+
critical_css?: string;
|
|
25
|
+
meta?: any;
|
|
26
|
+
}
|
|
27
|
+
export interface DefaultMiddleware {
|
|
28
|
+
start: Handler[];
|
|
29
|
+
logging: Handler[];
|
|
30
|
+
tracing: Handler[];
|
|
31
|
+
metrics: Handler[];
|
|
32
|
+
finish: Array<Handler | ErrorRequestHandler>;
|
|
33
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/http-server/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { Request, Response } from 'express';
|
|
2
|
+
import type { PageTemplate, PageTemplateData } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* Определяет IP входящего запроса.
|
|
5
|
+
* @param req Входящий запрос.
|
|
6
|
+
* @return IP.
|
|
7
|
+
*/
|
|
8
|
+
export declare function getXClientIp(req: Request): string;
|
|
9
|
+
/**
|
|
10
|
+
* Определяет служебные заголовки по соглашению.
|
|
11
|
+
* @param req Входящий запрос.
|
|
12
|
+
* @return Служебные заголовки.
|
|
13
|
+
*/
|
|
14
|
+
export declare function getServiceHeaders(req: Request): Record<string, string | undefined>;
|
|
15
|
+
export declare class PageResponse {
|
|
16
|
+
private type;
|
|
17
|
+
private html;
|
|
18
|
+
private assets;
|
|
19
|
+
private _template;
|
|
20
|
+
static create(): PageResponse;
|
|
21
|
+
static defineFormat(req: Request): PageResponse['type'];
|
|
22
|
+
static defaultTemplate({ markup }: PageTemplateData): string;
|
|
23
|
+
constructor();
|
|
24
|
+
markup(html: string): this;
|
|
25
|
+
script(url: string): this;
|
|
26
|
+
styles(url: string): this;
|
|
27
|
+
format(type: PageResponse['type']): this;
|
|
28
|
+
template(template: PageTemplate): this;
|
|
29
|
+
send(res: Response): void;
|
|
30
|
+
}
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PageResponse = exports.getServiceHeaders = exports.getXClientIp = void 0;
|
|
4
|
+
const net_1 = require("net");
|
|
5
|
+
/**
|
|
6
|
+
* Определяет IP входящего запроса.
|
|
7
|
+
* @param req Входящий запрос.
|
|
8
|
+
* @return IP.
|
|
9
|
+
*/
|
|
10
|
+
function getXClientIp(req) {
|
|
11
|
+
const headerValue = req.get('x-client-ip') || req.get('x-forwarded-for') || req.socket.remoteAddress || '';
|
|
12
|
+
return (0, net_1.isIP)(headerValue) ? headerValue : '';
|
|
13
|
+
}
|
|
14
|
+
exports.getXClientIp = getXClientIp;
|
|
15
|
+
/**
|
|
16
|
+
* Определяет служебные заголовки по соглашению.
|
|
17
|
+
* @param req Входящий запрос.
|
|
18
|
+
* @return Служебные заголовки.
|
|
19
|
+
*/
|
|
20
|
+
function getServiceHeaders(req) {
|
|
21
|
+
const result = {};
|
|
22
|
+
for (const [key] of Object.entries(req.headers)) {
|
|
23
|
+
if (key.toLowerCase().indexOf('simaland-') === 0) {
|
|
24
|
+
result[key] = req.header(key);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
return result;
|
|
28
|
+
}
|
|
29
|
+
exports.getServiceHeaders = getServiceHeaders;
|
|
30
|
+
/* eslint-disable require-jsdoc, jsdoc/require-jsdoc */
|
|
31
|
+
class PageResponse {
|
|
32
|
+
constructor() {
|
|
33
|
+
this.type = 'html';
|
|
34
|
+
this.html = '';
|
|
35
|
+
this.assets = { js: '', css: '' };
|
|
36
|
+
this._template = PageResponse.defaultTemplate;
|
|
37
|
+
}
|
|
38
|
+
static create() {
|
|
39
|
+
return new PageResponse();
|
|
40
|
+
}
|
|
41
|
+
static defineFormat(req) {
|
|
42
|
+
let result = 'html';
|
|
43
|
+
if ((req.header('accept') || '').toLowerCase().includes('application/json')) {
|
|
44
|
+
result = 'json';
|
|
45
|
+
}
|
|
46
|
+
return result;
|
|
47
|
+
}
|
|
48
|
+
static defaultTemplate({ markup }) {
|
|
49
|
+
return markup;
|
|
50
|
+
}
|
|
51
|
+
markup(html) {
|
|
52
|
+
this.html = html;
|
|
53
|
+
return this;
|
|
54
|
+
}
|
|
55
|
+
script(url) {
|
|
56
|
+
this.assets.js = url;
|
|
57
|
+
return this;
|
|
58
|
+
}
|
|
59
|
+
styles(url) {
|
|
60
|
+
this.assets.css = url;
|
|
61
|
+
return this;
|
|
62
|
+
}
|
|
63
|
+
format(type) {
|
|
64
|
+
this.type = type;
|
|
65
|
+
return this;
|
|
66
|
+
}
|
|
67
|
+
template(template) {
|
|
68
|
+
this._template = template;
|
|
69
|
+
return this;
|
|
70
|
+
}
|
|
71
|
+
send(res) {
|
|
72
|
+
const templateData = {
|
|
73
|
+
type: this.type,
|
|
74
|
+
markup: this.html,
|
|
75
|
+
assets: this.assets,
|
|
76
|
+
};
|
|
77
|
+
switch (this.type) {
|
|
78
|
+
case 'json': {
|
|
79
|
+
const result = {
|
|
80
|
+
markup: this._template(templateData),
|
|
81
|
+
bundle_js: this.assets.js,
|
|
82
|
+
bundle_css: this.assets.css,
|
|
83
|
+
};
|
|
84
|
+
res.json(result);
|
|
85
|
+
break;
|
|
86
|
+
}
|
|
87
|
+
case 'html': {
|
|
88
|
+
res.setHeader('simaland-bundle-js', this.assets.js);
|
|
89
|
+
res.setHeader('simaland-bundle-css', this.assets.css);
|
|
90
|
+
res.send(this._template(templateData));
|
|
91
|
+
break;
|
|
92
|
+
}
|
|
93
|
+
default:
|
|
94
|
+
throw Error(`Unknown response format ${String(this.type)}`);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
exports.PageResponse = PageResponse;
|
|
99
|
+
/* eslint-enable require-jsdoc, jsdoc/require-jsdoc */
|
|
100
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/http-server/utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { BaseConfig } from '../../config/types';
|
|
2
|
+
import { LoggerEventHandler } from '../types';
|
|
3
|
+
/**
|
|
4
|
+
* Возвращает новый handler для logger'а для вывода событий в терминал.
|
|
5
|
+
* @param config Конфиг.
|
|
6
|
+
* @return Handler.
|
|
7
|
+
*/
|
|
8
|
+
export declare function createConsoleHandler(config: BaseConfig): LoggerEventHandler;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.createConsoleHandler = void 0;
|
|
7
|
+
const pino_1 = __importDefault(require("pino"));
|
|
8
|
+
const pino_pretty_1 = __importDefault(require("pino-pretty"));
|
|
9
|
+
/**
|
|
10
|
+
* Возвращает новый handler для logger'а для вывода событий в терминал.
|
|
11
|
+
* @param config Конфиг.
|
|
12
|
+
* @return Handler.
|
|
13
|
+
*/
|
|
14
|
+
function createConsoleHandler(config) {
|
|
15
|
+
const isProd = config.env === 'production';
|
|
16
|
+
const logger = (0, pino_1.default)(isProd
|
|
17
|
+
? {
|
|
18
|
+
formatters: {
|
|
19
|
+
// ВАЖНО: для Fluent необходимо наличие поля level: string
|
|
20
|
+
level: label => ({ level: label }),
|
|
21
|
+
},
|
|
22
|
+
}
|
|
23
|
+
: (0, pino_pretty_1.default)({ colorize: true }));
|
|
24
|
+
return function (event) {
|
|
25
|
+
switch (event.type) {
|
|
26
|
+
case 'info':
|
|
27
|
+
logger.info(event.data);
|
|
28
|
+
break;
|
|
29
|
+
case 'error':
|
|
30
|
+
logger.error(event.data);
|
|
31
|
+
break;
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
exports.createConsoleHandler = createConsoleHandler;
|
|
36
|
+
//# sourceMappingURL=console.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"console.js","sourceRoot":"","sources":["../../../src/logger/handler/console.ts"],"names":[],"mappings":";;;;;;AACA,gDAAwB;AACxB,8DAAqC;AAGrC;;;;GAIG;AACH,SAAgB,oBAAoB,CAAC,MAAkB;IACrD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,KAAK,YAAY,CAAC;IAE3C,MAAM,MAAM,GAAG,IAAA,cAAI,EACjB,MAAM;QACJ,CAAC,CAAC;YACE,UAAU,EAAE;gBACV,0DAA0D;gBAC1D,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;aACnC;SACF;QACH,CAAC,CAAC,IAAA,qBAAU,EAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CACnC,CAAC;IAEF,OAAO,UAAU,KAAK;QACpB,QAAQ,KAAK,CAAC,IAAI,EAAE;YAClB,KAAK,MAAM;gBACT,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACxB,MAAM;YACR,KAAK,OAAO;gBACV,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACzB,MAAM;SACT;IACH,CAAC,CAAC;AACJ,CAAC;AAxBD,oDAwBC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { SentryLib } from '../../error-tracker/types';
|
|
2
|
+
import type { LoggerEventHandler } from '../types';
|
|
3
|
+
/**
|
|
4
|
+
* Возвращает новый handler для logger'а для отправки событий в Sentry.
|
|
5
|
+
* @param sentry Набор данных для работы с Sentry.
|
|
6
|
+
* @return Handler.
|
|
7
|
+
*/
|
|
8
|
+
export declare function createSentryHandler(sentry: SentryLib): LoggerEventHandler;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createSentryHandler = void 0;
|
|
4
|
+
const utils_1 = require("../../error-tracker/utils");
|
|
5
|
+
/**
|
|
6
|
+
* Возвращает новый handler для logger'а для отправки событий в Sentry.
|
|
7
|
+
* @param sentry Набор данных для работы с Sentry.
|
|
8
|
+
* @return Handler.
|
|
9
|
+
*/
|
|
10
|
+
function createSentryHandler(sentry) {
|
|
11
|
+
return event => {
|
|
12
|
+
if (event.type === 'error') {
|
|
13
|
+
const error = event.data;
|
|
14
|
+
if (error instanceof utils_1.SentryError) {
|
|
15
|
+
const { level, context, extra } = error.data;
|
|
16
|
+
sentry.withScope(scope => {
|
|
17
|
+
if (level) {
|
|
18
|
+
scope.setLevel(level);
|
|
19
|
+
}
|
|
20
|
+
if (context) {
|
|
21
|
+
scope.setContext(context.key, context.data);
|
|
22
|
+
}
|
|
23
|
+
if (extra) {
|
|
24
|
+
scope.setExtra(extra.key, extra.data);
|
|
25
|
+
}
|
|
26
|
+
sentry.client.captureException(error);
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
else {
|
|
30
|
+
sentry.client.captureException(error);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
exports.createSentryHandler = createSentryHandler;
|
|
36
|
+
//# sourceMappingURL=sentry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sentry.js","sourceRoot":"","sources":["../../../src/logger/handler/sentry.ts"],"names":[],"mappings":";;;AAEA,qDAAwD;AAExD;;;;GAIG;AACH,SAAgB,mBAAmB,CAAC,MAAiB;IACnD,OAAO,KAAK,CAAC,EAAE;QACb,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE;YAC1B,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC;YAEzB,IAAI,KAAK,YAAY,mBAAW,EAAE;gBAChC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC;gBAE7C,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;oBACvB,IAAI,KAAK,EAAE;wBACT,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;qBACvB;oBAED,IAAI,OAAO,EAAE;wBACX,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;qBAC7C;oBAED,IAAI,KAAK,EAAE;wBACT,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;qBACvC;oBAED,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;gBACxC,CAAC,CAAC,CAAC;aACJ;iBAAM;gBACL,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;aACvC;SACF;IACH,CAAC,CAAC;AACJ,CAAC;AA5BD,kDA4BC"}
|
package/logger/index.js
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createLogger = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Возвращает новый logger - объект для журналирования событий подобно console.
|
|
6
|
+
* @return Logger.
|
|
7
|
+
*/
|
|
8
|
+
function createLogger() {
|
|
9
|
+
const handlers = [];
|
|
10
|
+
// eslint-disable-next-line require-jsdoc, jsdoc/require-jsdoc
|
|
11
|
+
function createMethod(type) {
|
|
12
|
+
return function (data) {
|
|
13
|
+
const event = { type, data };
|
|
14
|
+
for (const handler of handlers) {
|
|
15
|
+
handler(event);
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
return {
|
|
20
|
+
log: createMethod('log'),
|
|
21
|
+
info: createMethod('info'),
|
|
22
|
+
warn: createMethod('warn'),
|
|
23
|
+
error: createMethod('error'),
|
|
24
|
+
debug: createMethod('debug'),
|
|
25
|
+
subscribe: handler => {
|
|
26
|
+
handlers.push(handler);
|
|
27
|
+
},
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
exports.createLogger = createLogger;
|
|
31
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/logger/index.ts"],"names":[],"mappings":";;;AAEA;;;GAGG;AACH,SAAgB,YAAY;IAC1B,MAAM,QAAQ,GAAyB,EAAE,CAAC;IAE1C,8DAA8D;IAC9D,SAAS,YAAY,CAAC,IAAqB;QACzC,OAAO,UAAU,IAAS;YACxB,MAAM,KAAK,GAAgB,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;YAC1C,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;gBAC9B,OAAO,CAAC,KAAK,CAAC,CAAC;aAChB;QACH,CAAC,CAAC;IACJ,CAAC;IAED,OAAO;QACL,GAAG,EAAE,YAAY,CAAC,KAAK,CAAC;QACxB,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC;QAC1B,IAAI,EAAE,YAAY,CAAC,MAAM,CAAC;QAC1B,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC;QAC5B,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC;QAE5B,SAAS,EAAE,OAAO,CAAC,EAAE;YACnB,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzB,CAAC;KACF,CAAC;AACJ,CAAC;AAxBD,oCAwBC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export declare type LoggerEventType = 'error' | 'log' | 'info' | 'warn' | 'debug';
|
|
2
|
+
export interface LoggerEvent {
|
|
3
|
+
type: LoggerEventType;
|
|
4
|
+
data: unknown;
|
|
5
|
+
}
|
|
6
|
+
export interface LoggerEventHandler {
|
|
7
|
+
(event: LoggerEvent): void;
|
|
8
|
+
}
|
|
9
|
+
export interface Logger {
|
|
10
|
+
error(data: any): void;
|
|
11
|
+
log(data: any): void;
|
|
12
|
+
info(data: any): void;
|
|
13
|
+
warn(data: any): void;
|
|
14
|
+
debug(data: any): void;
|
|
15
|
+
subscribe(handler: LoggerEventHandler): void;
|
|
16
|
+
}
|
|
17
|
+
export interface ConventionalFluentInfo {
|
|
18
|
+
version: string;
|
|
19
|
+
latency: number;
|
|
20
|
+
method: string;
|
|
21
|
+
remote_ip: string;
|
|
22
|
+
route: string;
|
|
23
|
+
status: number;
|
|
24
|
+
}
|
package/logger/types.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/logger/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ConventionalLabels = void 0;
|
|
4
|
+
exports.ConventionalLabels = {
|
|
5
|
+
HTTP_RESPONSE: ['version', 'route', 'code', 'method'],
|
|
6
|
+
SSR: ['version', 'route', 'method'],
|
|
7
|
+
};
|
|
8
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/metrics/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,kBAAkB,GAAG;IAChC,aAAa,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC;IACrD,GAAG,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,CAAC;CAC3B,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Application } from 'express';
|
|
2
|
+
import * as PromClient from 'prom-client';
|
|
3
|
+
import { ConventionalLabels } from './constants';
|
|
4
|
+
export interface DefaultNodeMetrics {
|
|
5
|
+
requestCount: PromClient.Counter<typeof ConventionalLabels.HTTP_RESPONSE[number]>;
|
|
6
|
+
responseDuration: PromClient.Histogram<typeof ConventionalLabels.HTTP_RESPONSE[number]>;
|
|
7
|
+
renderDuration: PromClient.Histogram<typeof ConventionalLabels.SSR[number]>;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Возвращает новое express-приложение, настроенное для выдачи информации о метриках.
|
|
11
|
+
* @return Приложение.
|
|
12
|
+
*/
|
|
13
|
+
export declare function createMetricsHttpApp(): Application;
|
|
14
|
+
/**
|
|
15
|
+
* Возвращает набор готовых метрик по умолчанию для приложений.
|
|
16
|
+
* @return Набор метрик.
|
|
17
|
+
*/
|
|
18
|
+
export declare function createDefaultMetrics(): DefaultNodeMetrics;
|
package/metrics/node.js
ADDED
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
26
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
27
|
+
};
|
|
28
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
+
exports.createDefaultMetrics = exports.createMetricsHttpApp = void 0;
|
|
30
|
+
const express_1 = __importDefault(require("express"));
|
|
31
|
+
const PromClient = __importStar(require("prom-client"));
|
|
32
|
+
const constants_1 = require("./constants");
|
|
33
|
+
/**
|
|
34
|
+
* Возвращает новое express-приложение, настроенное для выдачи информации о метриках.
|
|
35
|
+
* @return Приложение.
|
|
36
|
+
*/
|
|
37
|
+
function createMetricsHttpApp() {
|
|
38
|
+
const app = (0, express_1.default)();
|
|
39
|
+
PromClient.collectDefaultMetrics();
|
|
40
|
+
app.get('/', async function (req, res) {
|
|
41
|
+
const metrics = await PromClient.register.metrics();
|
|
42
|
+
res.setHeader('Content-Type', PromClient.register.contentType);
|
|
43
|
+
res.send(metrics);
|
|
44
|
+
});
|
|
45
|
+
return app;
|
|
46
|
+
}
|
|
47
|
+
exports.createMetricsHttpApp = createMetricsHttpApp;
|
|
48
|
+
/**
|
|
49
|
+
* Возвращает набор готовых метрик по умолчанию для приложений.
|
|
50
|
+
* @return Набор метрик.
|
|
51
|
+
*/
|
|
52
|
+
function createDefaultMetrics() {
|
|
53
|
+
return {
|
|
54
|
+
requestCount: new PromClient.Counter({
|
|
55
|
+
name: 'http_request_count',
|
|
56
|
+
help: 'Incoming HTTP request count',
|
|
57
|
+
labelNames: constants_1.ConventionalLabels.HTTP_RESPONSE,
|
|
58
|
+
}),
|
|
59
|
+
responseDuration: new PromClient.Histogram({
|
|
60
|
+
name: 'http_response_duration_ms',
|
|
61
|
+
help: 'Duration of incoming HTTP requests in ms',
|
|
62
|
+
labelNames: constants_1.ConventionalLabels.HTTP_RESPONSE,
|
|
63
|
+
buckets: [30, 100, 200, 500, 1000, 2500, 5000, 10000],
|
|
64
|
+
}),
|
|
65
|
+
renderDuration: new PromClient.Histogram({
|
|
66
|
+
name: 'render_duration_ms',
|
|
67
|
+
help: 'Duration of SSR ms',
|
|
68
|
+
labelNames: constants_1.ConventionalLabels.SSR,
|
|
69
|
+
buckets: [0.1, 15, 50, 100, 250, 500, 800, 1500],
|
|
70
|
+
}),
|
|
71
|
+
};
|
|
72
|
+
}
|
|
73
|
+
exports.createDefaultMetrics = createDefaultMetrics;
|
|
74
|
+
//# sourceMappingURL=node.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/metrics/node.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sDAA+C;AAC/C,wDAA0C;AAC1C,2CAAiD;AAQjD;;;GAGG;AACH,SAAgB,oBAAoB;IAClC,MAAM,GAAG,GAAG,IAAA,iBAAO,GAAE,CAAC;IAEtB,UAAU,CAAC,qBAAqB,EAAE,CAAC;IAEnC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,WAAW,GAAG,EAAE,GAAG;QACnC,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QAEpD,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC/D,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACpB,CAAC,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC;AAbD,oDAaC;AAED;;;GAGG;AACH,SAAgB,oBAAoB;IAClC,OAAO;QACL,YAAY,EAAE,IAAI,UAAU,CAAC,OAAO,CAAC;YACnC,IAAI,EAAE,oBAAoB;YAC1B,IAAI,EAAE,6BAA6B;YACnC,UAAU,EAAE,8BAAkB,CAAC,aAAa;SAC7C,CAAC;QACF,gBAAgB,EAAE,IAAI,UAAU,CAAC,SAAS,CAAC;YACzC,IAAI,EAAE,2BAA2B;YACjC,IAAI,EAAE,0CAA0C;YAChD,UAAU,EAAE,8BAAkB,CAAC,aAAa;YAC5C,OAAO,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC;SACtD,CAAC;QACF,cAAc,EAAE,IAAI,UAAU,CAAC,SAAS,CAAC;YACvC,IAAI,EAAE,oBAAoB;YAC1B,IAAI,EAAE,oBAAoB;YAC1B,UAAU,EAAE,8BAAkB,CAAC,GAAG;YAClC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC;SACjD,CAAC;KACH,CAAC;AACJ,CAAC;AApBD,oDAoBC"}
|