@signageos/lib 23.8.1 → 23.8.2-master.4405
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/dist/AMQP/CQRS/ICommand.d.ts +38 -0
- package/dist/AMQP/CQRS/ICommand.js +3 -0
- package/dist/AMQP/CQRS/ICommand.js.map +1 -0
- package/dist/AMQP/CQRS/ICommandError.d.ts +4 -0
- package/dist/AMQP/CQRS/ICommandError.js +3 -0
- package/dist/AMQP/CQRS/ICommandError.js.map +1 -0
- package/dist/AMQP/CQRS/commandQueue.d.ts +59 -0
- package/dist/AMQP/CQRS/commandQueue.js +313 -0
- package/dist/AMQP/CQRS/commandQueue.js.map +1 -0
- package/dist/AMQP/CQRS/commandResponseHelper.d.ts +3 -0
- package/dist/AMQP/CQRS/commandResponseHelper.js +8 -0
- package/dist/AMQP/CQRS/commandResponseHelper.js.map +1 -0
- package/dist/AMQP/CQRS/storedCommandQueue.d.ts +27 -0
- package/dist/AMQP/CQRS/storedCommandQueue.js +301 -0
- package/dist/AMQP/CQRS/storedCommandQueue.js.map +1 -0
- package/dist/AMQP/ChannelProvider.d.ts +37 -0
- package/dist/AMQP/ChannelProvider.js +886 -0
- package/dist/AMQP/ChannelProvider.js.map +1 -0
- package/dist/AMQP/DeviceActions/Bridge/deviceActionBridgeFactory.d.ts +39 -0
- package/dist/AMQP/DeviceActions/Bridge/deviceActionBridgeFactory.js +292 -0
- package/dist/AMQP/DeviceActions/Bridge/deviceActionBridgeFactory.js.map +1 -0
- package/dist/AMQP/DeviceActions/IDeviceAction.d.ts +4 -0
- package/dist/AMQP/DeviceActions/IDeviceAction.js +3 -0
- package/dist/AMQP/DeviceActions/IDeviceAction.js.map +1 -0
- package/dist/AMQP/DeviceActions/deviceActionsQueue.d.ts +83 -0
- package/dist/AMQP/DeviceActions/deviceActionsQueue.js +538 -0
- package/dist/AMQP/DeviceActions/deviceActionsQueue.js.map +1 -0
- package/dist/AMQP/EventSourcing/EventConsumer/AmqpEventConsumer.d.ts +47 -0
- package/dist/AMQP/EventSourcing/EventConsumer/AmqpEventConsumer.js +218 -0
- package/dist/AMQP/EventSourcing/EventConsumer/AmqpEventConsumer.js.map +1 -0
- package/dist/AMQP/EventSourcing/EventConsumer/IEventConsumer.d.ts +13 -0
- package/dist/AMQP/EventSourcing/EventConsumer/IEventConsumer.js +3 -0
- package/dist/AMQP/EventSourcing/EventConsumer/IEventConsumer.js.map +1 -0
- package/dist/AMQP/EventSourcing/EventConsumer/InMemoryEventConsumer.d.ts +15 -0
- package/dist/AMQP/EventSourcing/EventConsumer/InMemoryEventConsumer.js +76 -0
- package/dist/AMQP/EventSourcing/EventConsumer/InMemoryEventConsumer.js.map +1 -0
- package/dist/AMQP/EventSourcing/IEvent.d.ts +72 -0
- package/dist/AMQP/EventSourcing/IEvent.js +3 -0
- package/dist/AMQP/EventSourcing/IEvent.js.map +1 -0
- package/dist/AMQP/EventSourcing/Locked/deferredState.d.ts +21 -0
- package/dist/AMQP/EventSourcing/Locked/deferredState.js +72 -0
- package/dist/AMQP/EventSourcing/Locked/deferredState.js.map +1 -0
- package/dist/AMQP/EventSourcing/Locked/lockedEventConsumer.d.ts +63 -0
- package/dist/AMQP/EventSourcing/Locked/lockedEventConsumer.js +261 -0
- package/dist/AMQP/EventSourcing/Locked/lockedEventConsumer.js.map +1 -0
- package/dist/AMQP/EventSourcing/Locked/rejectedTimestamps.d.ts +24 -0
- package/dist/AMQP/EventSourcing/Locked/rejectedTimestamps.js +64 -0
- package/dist/AMQP/EventSourcing/Locked/rejectedTimestamps.js.map +1 -0
- package/dist/AMQP/EventSourcing/Locked/withLock.d.ts +42 -0
- package/dist/AMQP/EventSourcing/Locked/withLock.js +141 -0
- package/dist/AMQP/EventSourcing/Locked/withLock.js.map +1 -0
- package/dist/AMQP/EventSourcing/eventQueue.d.ts +87 -0
- package/dist/AMQP/EventSourcing/eventQueue.js +139 -0
- package/dist/AMQP/EventSourcing/eventQueue.js.map +1 -0
- package/dist/AMQP/EventSourcing/eventQueue.utils.d.ts +73 -0
- package/dist/AMQP/EventSourcing/eventQueue.utils.js +157 -0
- package/dist/AMQP/EventSourcing/eventQueue.utils.js.map +1 -0
- package/dist/AMQP/EventSourcing/eventQueueDetached.d.ts +49 -0
- package/dist/AMQP/EventSourcing/eventQueueDetached.js +428 -0
- package/dist/AMQP/EventSourcing/eventQueueDetached.js.map +1 -0
- package/dist/AMQP/EventSourcing/eventQueueDomain.d.ts +42 -0
- package/dist/AMQP/EventSourcing/eventQueueDomain.js +371 -0
- package/dist/AMQP/EventSourcing/eventQueueDomain.js.map +1 -0
- package/dist/AMQP/EventSourcing/eventQueuePublish.d.ts +19 -0
- package/dist/AMQP/EventSourcing/eventQueuePublish.js +209 -0
- package/dist/AMQP/EventSourcing/eventQueuePublish.js.map +1 -0
- package/dist/AMQP/EventSourcing/synchronization.d.ts +39 -0
- package/dist/AMQP/EventSourcing/synchronization.js +12 -0
- package/dist/AMQP/EventSourcing/synchronization.js.map +1 -0
- package/dist/AMQP/Exchange.d.ts +1 -0
- package/dist/AMQP/Exchange.js +3 -0
- package/dist/AMQP/Exchange.js.map +1 -0
- package/dist/AMQP/IAMQPPool.d.ts +5 -0
- package/dist/AMQP/IAMQPPool.js +3 -0
- package/dist/AMQP/IAMQPPool.js.map +1 -0
- package/dist/AMQP/IAsyncGotMessage.d.ts +15 -0
- package/dist/AMQP/IAsyncGotMessage.js +3 -0
- package/dist/AMQP/IAsyncGotMessage.js.map +1 -0
- package/dist/AMQP/IChannel.d.ts +43 -0
- package/dist/AMQP/IChannel.js +3 -0
- package/dist/AMQP/IChannel.js.map +1 -0
- package/dist/AMQP/IConsumeOptions.d.ts +106 -0
- package/dist/AMQP/IConsumeOptions.js +3 -0
- package/dist/AMQP/IConsumeOptions.js.map +1 -0
- package/dist/AMQP/IMessageOptions.d.ts +6 -0
- package/dist/AMQP/IMessageOptions.js +3 -0
- package/dist/AMQP/IMessageOptions.js.map +1 -0
- package/dist/AMQP/INackOptions.d.ts +4 -0
- package/dist/AMQP/INackOptions.js +3 -0
- package/dist/AMQP/INackOptions.js.map +1 -0
- package/dist/AMQP/IQueueOptions.d.ts +8 -0
- package/dist/AMQP/IQueueOptions.js +3 -0
- package/dist/AMQP/IQueueOptions.js.map +1 -0
- package/dist/AMQP/Logging/IDeviceLog.d.ts +15 -0
- package/dist/AMQP/Logging/IDeviceLog.js +10 -0
- package/dist/AMQP/Logging/IDeviceLog.js.map +1 -0
- package/dist/AMQP/Logging/logDeviceQueue.d.ts +12 -0
- package/dist/AMQP/Logging/logDeviceQueue.js +107 -0
- package/dist/AMQP/Logging/logDeviceQueue.js.map +1 -0
- package/dist/AMQP/QueueFetcher.d.ts +13 -0
- package/dist/AMQP/QueueFetcher.js +166 -0
- package/dist/AMQP/QueueFetcher.js.map +1 -0
- package/dist/AMQP/QueuePublisher.d.ts +7 -0
- package/dist/AMQP/QueuePublisher.js +135 -0
- package/dist/AMQP/QueuePublisher.js.map +1 -0
- package/dist/AMQP/QueueRepeatableSubscription.d.ts +14 -0
- package/dist/AMQP/QueueRepeatableSubscription.js +162 -0
- package/dist/AMQP/QueueRepeatableSubscription.js.map +1 -0
- package/dist/AMQP/QueueSubscriber.d.ts +11 -0
- package/dist/AMQP/QueueSubscriber.js +163 -0
- package/dist/AMQP/QueueSubscriber.js.map +1 -0
- package/dist/AMQP/ResponseProvider.d.ts +20 -0
- package/dist/AMQP/ResponseProvider.js +193 -0
- package/dist/AMQP/ResponseProvider.js.map +1 -0
- package/dist/AMQP/Static/filesQueue.d.ts +12 -0
- package/dist/AMQP/Static/filesQueue.js +220 -0
- package/dist/AMQP/Static/filesQueue.js.map +1 -0
- package/dist/AMQP/amqpConnectionFactory.d.ts +27 -0
- package/dist/AMQP/amqpConnectionFactory.js +236 -0
- package/dist/AMQP/amqpConnectionFactory.js.map +1 -0
- package/dist/AMQP/amqpErrors.d.ts +5 -0
- package/dist/AMQP/amqpErrors.js +30 -0
- package/dist/AMQP/amqpErrors.js.map +1 -0
- package/dist/AMQP/errors.d.ts +3 -0
- package/dist/AMQP/errors.js +30 -0
- package/dist/AMQP/errors.js.map +1 -0
- package/dist/AMQP/fetchNextMessage.d.ts +14 -0
- package/dist/AMQP/fetchNextMessage.js +118 -0
- package/dist/AMQP/fetchNextMessage.js.map +1 -0
- package/dist/AMQP/queueConfigurator.d.ts +5 -0
- package/dist/AMQP/queueConfigurator.js +78 -0
- package/dist/AMQP/queueConfigurator.js.map +1 -0
- package/dist/AWS/S3.d.ts +95 -0
- package/dist/AWS/S3.js +448 -0
- package/dist/AWS/S3.js.map +1 -0
- package/dist/AWS/S3Types.d.ts +113 -0
- package/dist/AWS/S3Types.js +3 -0
- package/dist/AWS/S3Types.js.map +1 -0
- package/dist/AWS/config.d.ts +2 -0
- package/dist/AWS/config.js +23 -0
- package/dist/AWS/config.js.map +1 -0
- package/dist/Auth0/AuthenticationClient/Auth0AuthenticationClient.d.ts +30 -0
- package/dist/Auth0/AuthenticationClient/Auth0AuthenticationClient.js +81 -0
- package/dist/Auth0/AuthenticationClient/Auth0AuthenticationClient.js.map +1 -0
- package/dist/Auth0/AuthenticationClient/Auth0AuthenticationClient.utils.d.ts +5 -0
- package/dist/Auth0/AuthenticationClient/Auth0AuthenticationClient.utils.js +33 -0
- package/dist/Auth0/AuthenticationClient/Auth0AuthenticationClient.utils.js.map +1 -0
- package/dist/Auth0/ManagementClient/Auth0ManagementClient.d.ts +41 -0
- package/dist/Auth0/ManagementClient/Auth0ManagementClient.js +137 -0
- package/dist/Auth0/ManagementClient/Auth0ManagementClient.js.map +1 -0
- package/dist/Auth0/ManagementClient/auth0ManagementClient.utils.d.ts +8 -0
- package/dist/Auth0/ManagementClient/auth0ManagementClient.utils.js +37 -0
- package/dist/Auth0/ManagementClient/auth0ManagementClient.utils.js.map +1 -0
- package/dist/Auth0/UserInfoClient/Auth0UserInfoClient.d.ts +14 -0
- package/dist/Auth0/UserInfoClient/Auth0UserInfoClient.js +58 -0
- package/dist/Auth0/UserInfoClient/Auth0UserInfoClient.js.map +1 -0
- package/dist/Auth0/auth0.types.d.ts +4 -0
- package/dist/Auth0/auth0.types.js +10 -0
- package/dist/Auth0/auth0.types.js.map +1 -0
- package/dist/Cache/lruCache.d.ts +22 -0
- package/dist/Cache/lruCache.js +42 -0
- package/dist/Cache/lruCache.js.map +1 -0
- package/dist/Cache/memoryCache.d.ts +7 -0
- package/dist/Cache/memoryCache.js +80 -0
- package/dist/Cache/memoryCache.js.map +1 -0
- package/dist/Config/config.d.ts +81 -0
- package/dist/Config/config.js +119 -0
- package/dist/Config/config.js.map +1 -0
- package/dist/Config/environment.d.ts +8 -0
- package/dist/Config/environment.js +13 -0
- package/dist/Config/environment.js.map +1 -0
- package/dist/Config/validation.d.ts +61 -0
- package/dist/Config/validation.js +56 -0
- package/dist/Config/validation.js.map +1 -0
- package/dist/DateTime/dateMonkeyPatch.d.ts +15 -0
- package/dist/DateTime/dateMonkeyPatch.js +149 -0
- package/dist/DateTime/dateMonkeyPatch.js.map +1 -0
- package/dist/DateTime/dateTimeFactory.d.ts +4 -0
- package/dist/DateTime/dateTimeFactory.js +22 -0
- package/dist/DateTime/dateTimeFactory.js.map +1 -0
- package/dist/DateTime/millisecondConstants.d.ts +7 -0
- package/dist/DateTime/millisecondConstants.js +11 -0
- package/dist/DateTime/millisecondConstants.js.map +1 -0
- package/dist/DateTime/posixTimezone.d.ts +1 -0
- package/dist/DateTime/posixTimezone.js +54 -0
- package/dist/DateTime/posixTimezone.js.map +1 -0
- package/dist/DateTime/statistics.d.ts +6 -0
- package/dist/DateTime/statistics.js +30 -0
- package/dist/DateTime/statistics.js.map +1 -0
- package/dist/DateTime/timeConverter.d.ts +1 -0
- package/dist/DateTime/timeConverter.js +11 -0
- package/dist/DateTime/timeConverter.js.map +1 -0
- package/dist/DateTime/timer.d.ts +10 -0
- package/dist/DateTime/timer.js +18 -0
- package/dist/DateTime/timer.js.map +1 -0
- package/dist/DateTime/timestamp.d.ts +2 -0
- package/dist/DateTime/timestamp.js +16 -0
- package/dist/DateTime/timestamp.js.map +1 -0
- package/dist/DateTime/waitUntil.d.ts +20 -0
- package/dist/DateTime/waitUntil.js +148 -0
- package/dist/DateTime/waitUntil.js.map +1 -0
- package/dist/Debug/debugClassDecorator.d.ts +13 -0
- package/dist/Debug/debugClassDecorator.js +63 -0
- package/dist/Debug/debugClassDecorator.js.map +1 -0
- package/dist/Debug/debugDecorator.d.ts +24 -0
- package/dist/Debug/debugDecorator.js +107 -0
- package/dist/Debug/debugDecorator.js.map +1 -0
- package/dist/Encryption/passwordEncryption.d.ts +4 -0
- package/dist/Encryption/passwordEncryption.js +29 -0
- package/dist/Encryption/passwordEncryption.js.map +1 -0
- package/dist/Encryption/tokenEncryption.d.ts +14 -0
- package/dist/Encryption/tokenEncryption.js +32 -0
- package/dist/Encryption/tokenEncryption.js.map +1 -0
- package/dist/Events/AsyncEventEmitter.d.ts +31 -0
- package/dist/Events/AsyncEventEmitter.js +125 -0
- package/dist/Events/AsyncEventEmitter.js.map +1 -0
- package/dist/Events/eventsHelpers.d.ts +3 -0
- package/dist/Events/eventsHelpers.js +24 -0
- package/dist/Events/eventsHelpers.js.map +1 -0
- package/dist/Events/genericGracefulExit.d.ts +11 -0
- package/dist/Events/genericGracefulExit.js +90 -0
- package/dist/Events/genericGracefulExit.js.map +1 -0
- package/dist/FileSystem/moduleDiscoverer.d.ts +7 -0
- package/dist/FileSystem/moduleDiscoverer.js +88 -0
- package/dist/FileSystem/moduleDiscoverer.js.map +1 -0
- package/dist/FileSystem/tmpDir.d.ts +9 -0
- package/dist/FileSystem/tmpDir.js +64 -0
- package/dist/FileSystem/tmpDir.js.map +1 -0
- package/dist/Functional/compose.d.ts +22 -0
- package/dist/Functional/compose.js +44 -0
- package/dist/Functional/compose.js.map +1 -0
- package/dist/GenericPool/options.d.ts +63 -0
- package/dist/GenericPool/options.js +3 -0
- package/dist/GenericPool/options.js.map +1 -0
- package/dist/Hash/checksum.d.ts +5 -0
- package/dist/Hash/checksum.js +20 -0
- package/dist/Hash/checksum.js.map +1 -0
- package/dist/Hash/checksumFile.d.ts +4 -0
- package/dist/Hash/checksumFile.js +82 -0
- package/dist/Hash/checksumFile.js.map +1 -0
- package/dist/Hash/generator.d.ts +2 -0
- package/dist/Hash/generator.js +15 -0
- package/dist/Hash/generator.js.map +1 -0
- package/dist/Http/download.d.ts +1 -0
- package/dist/Http/download.js +91 -0
- package/dist/Http/download.js.map +1 -0
- package/dist/HttpStatus/checks/amqpStatusCheck.d.ts +3 -0
- package/dist/HttpStatus/checks/amqpStatusCheck.js +98 -0
- package/dist/HttpStatus/checks/amqpStatusCheck.js.map +1 -0
- package/dist/HttpStatus/checks/mongoDBStatusCheck.d.ts +3 -0
- package/dist/HttpStatus/checks/mongoDBStatusCheck.js +60 -0
- package/dist/HttpStatus/checks/mongoDBStatusCheck.js.map +1 -0
- package/dist/HttpStatus/checks/redisStatusCheck.d.ts +3 -0
- package/dist/HttpStatus/checks/redisStatusCheck.js +94 -0
- package/dist/HttpStatus/checks/redisStatusCheck.js.map +1 -0
- package/dist/HttpStatus/createHttpStatusMiddleware.d.ts +9 -0
- package/dist/HttpStatus/createHttpStatusMiddleware.js +109 -0
- package/dist/HttpStatus/createHttpStatusMiddleware.js.map +1 -0
- package/dist/HttpStatus/enrichHttpServerWithStatus.d.ts +15 -0
- package/dist/HttpStatus/enrichHttpServerWithStatus.js +114 -0
- package/dist/HttpStatus/enrichHttpServerWithStatus.js.map +1 -0
- package/dist/HttpStatus/sendStatusResponse.d.ts +5 -0
- package/dist/HttpStatus/sendStatusResponse.js +71 -0
- package/dist/HttpStatus/sendStatusResponse.js.map +1 -0
- package/dist/HttpStatus/status.d.ts +19 -0
- package/dist/HttpStatus/status.js +132 -0
- package/dist/HttpStatus/status.js.map +1 -0
- package/dist/HttpStatus/statuses/amqpStatus.d.ts +3 -0
- package/dist/HttpStatus/statuses/amqpStatus.js +35 -0
- package/dist/HttpStatus/statuses/amqpStatus.js.map +1 -0
- package/dist/HttpStatus/statuses/mongoStatus.d.ts +3 -0
- package/dist/HttpStatus/statuses/mongoStatus.js +35 -0
- package/dist/HttpStatus/statuses/mongoStatus.js.map +1 -0
- package/dist/HttpStatus/statuses/redisStatus.d.ts +3 -0
- package/dist/HttpStatus/statuses/redisStatus.js +35 -0
- package/dist/HttpStatus/statuses/redisStatus.js.map +1 -0
- package/dist/InfluxDB/IInfluxDB.d.ts +5 -0
- package/dist/InfluxDB/IInfluxDB.js +3 -0
- package/dist/InfluxDB/IInfluxDB.js.map +1 -0
- package/dist/InfluxDB/influxDBConnectionFactory.d.ts +9 -0
- package/dist/InfluxDB/influxDBConnectionFactory.js +83 -0
- package/dist/InfluxDB/influxDBConnectionFactory.js.map +1 -0
- package/dist/JSON/jsonHelper.d.ts +4 -0
- package/dist/JSON/jsonHelper.js +21 -0
- package/dist/JSON/jsonHelper.js.map +1 -0
- package/dist/Lib/Redis/connection.utils.d.ts +22 -0
- package/dist/Lib/Redis/connection.utils.js +95 -0
- package/dist/Lib/Redis/connection.utils.js.map +1 -0
- package/dist/Lib/String/string.d.ts +1 -0
- package/dist/Lib/String/string.js +6 -0
- package/dist/Lib/String/string.js.map +1 -0
- package/dist/Lock/lockedDecorator.d.ts +12 -0
- package/dist/Lock/lockedDecorator.js +150 -0
- package/dist/Lock/lockedDecorator.js.map +1 -0
- package/dist/Logging/console.d.ts +8 -0
- package/dist/Logging/console.js +50 -0
- package/dist/Logging/console.js.map +1 -0
- package/dist/Logging/debug.d.ts +10 -0
- package/dist/Logging/debug.js +61 -0
- package/dist/Logging/debug.js.map +1 -0
- package/dist/Logging/format.d.ts +10 -0
- package/dist/Logging/format.js +79 -0
- package/dist/Logging/format.js.map +1 -0
- package/dist/Logging/logger.d.ts +53 -0
- package/dist/Logging/logger.js +63 -0
- package/dist/Logging/logger.js.map +1 -0
- package/dist/Logging/logging.d.ts +12 -0
- package/dist/Logging/logging.js +113 -0
- package/dist/Logging/logging.js.map +1 -0
- package/dist/Metrics/MetricsClient.d.ts +46 -0
- package/dist/Metrics/MetricsClient.js +101 -0
- package/dist/Metrics/MetricsClient.js.map +1 -0
- package/dist/Metrics/deviceConsumerMetrics.d.ts +6 -0
- package/dist/Metrics/deviceConsumerMetrics.js +59 -0
- package/dist/Metrics/deviceConsumerMetrics.js.map +1 -0
- package/dist/Metrics/eventConsumerMetrics.d.ts +19 -0
- package/dist/Metrics/eventConsumerMetrics.js +52 -0
- package/dist/Metrics/eventConsumerMetrics.js.map +1 -0
- package/dist/Metrics/eventQueueMetrics.d.ts +7 -0
- package/dist/Metrics/eventQueueMetrics.js +19 -0
- package/dist/Metrics/eventQueueMetrics.js.map +1 -0
- package/dist/Metrics/logMetrics.d.ts +4 -0
- package/dist/Metrics/logMetrics.js +20 -0
- package/dist/Metrics/logMetrics.js.map +1 -0
- package/dist/Metrics/metrics.d.ts +84 -0
- package/dist/Metrics/metrics.js +255 -0
- package/dist/Metrics/metrics.js.map +1 -0
- package/dist/Metrics/mongoDBMetrics.d.ts +35 -0
- package/dist/Metrics/mongoDBMetrics.js +162 -0
- package/dist/Metrics/mongoDBMetrics.js.map +1 -0
- package/dist/Metrics/processSocketsMetrics.d.ts +10 -0
- package/dist/Metrics/processSocketsMetrics.js +92 -0
- package/dist/Metrics/processSocketsMetrics.js.map +1 -0
- package/dist/Metrics/redisMetrics.d.ts +13 -0
- package/dist/Metrics/redisMetrics.js +60 -0
- package/dist/Metrics/redisMetrics.js.map +1 -0
- package/dist/MongoDB/MongoDBConnection.d.ts +19 -0
- package/dist/MongoDB/MongoDBConnection.js +185 -0
- package/dist/MongoDB/MongoDBConnection.js.map +1 -0
- package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/dynamicPriority.d.ts +2 -0
- package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/dynamicPriority.js +106 -0
- package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/dynamicPriority.js.map +1 -0
- package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/lowReadLatency.d.ts +2 -0
- package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/lowReadLatency.js +94 -0
- package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/lowReadLatency.js.map +1 -0
- package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/ordinary.d.ts +2 -0
- package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/ordinary.js +80 -0
- package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/ordinary.js.map +1 -0
- package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/random.d.ts +2 -0
- package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/random.js +51 -0
- package/dist/MongoDB/ProprietaryCluster/SelectionStrategy/random.js.map +1 -0
- package/dist/MongoDB/ProprietaryCluster/helper.d.ts +13 -0
- package/dist/MongoDB/ProprietaryCluster/helper.js +147 -0
- package/dist/MongoDB/ProprietaryCluster/helper.js.map +1 -0
- package/dist/MongoDB/cursorIterator.d.ts +5 -0
- package/dist/MongoDB/cursorIterator.js +63 -0
- package/dist/MongoDB/cursorIterator.js.map +1 -0
- package/dist/MongoDB/escape.d.ts +4 -0
- package/dist/MongoDB/escape.js +54 -0
- package/dist/MongoDB/escape.js.map +1 -0
- package/dist/MongoDB/mongoDBConnectionFactory.d.ts +13 -0
- package/dist/MongoDB/mongoDBConnectionFactory.js +11 -0
- package/dist/MongoDB/mongoDBConnectionFactory.js.map +1 -0
- package/dist/MongoDB/proprietaryCluster.d.ts +1 -0
- package/dist/MongoDB/proprietaryCluster.js +76 -0
- package/dist/MongoDB/proprietaryCluster.js.map +1 -0
- package/dist/Npm/INpmClient.d.ts +25 -0
- package/dist/Npm/INpmClient.js +3 -0
- package/dist/Npm/INpmClient.js.map +1 -0
- package/dist/Npm/MockNpmClient.d.ts +17 -0
- package/dist/Npm/MockNpmClient.js +124 -0
- package/dist/Npm/MockNpmClient.js.map +1 -0
- package/dist/Npm/NpmClient.d.ts +14 -0
- package/dist/Npm/NpmClient.js +212 -0
- package/dist/Npm/NpmClient.js.map +1 -0
- package/dist/Npm/NpmCredentialsProvider.d.ts +18 -0
- package/dist/Npm/NpmCredentialsProvider.js +111 -0
- package/dist/Npm/NpmCredentialsProvider.js.map +1 -0
- package/dist/Observable/helpers.d.ts +3 -0
- package/dist/Observable/helpers.js +117 -0
- package/dist/Observable/helpers.js.map +1 -0
- package/dist/Parsers/parsers.d.ts +1 -0
- package/dist/Parsers/parsers.js +17 -0
- package/dist/Parsers/parsers.js.map +1 -0
- package/dist/Path/detector.d.ts +9 -0
- package/dist/Path/detector.js +78 -0
- package/dist/Path/detector.js.map +1 -0
- package/dist/Pool/IBasePool.d.ts +6 -0
- package/dist/Pool/IBasePool.js +3 -0
- package/dist/Pool/IBasePool.js.map +1 -0
- package/dist/Promise/cancelable.d.ts +4 -0
- package/dist/Promise/cancelable.js +21 -0
- package/dist/Promise/cancelable.js.map +1 -0
- package/dist/Promise/deferred.d.ts +4 -0
- package/dist/Promise/deferred.js +21 -0
- package/dist/Promise/deferred.js.map +1 -0
- package/dist/Promise/deferredStream.d.ts +4 -0
- package/dist/Promise/deferredStream.js +21 -0
- package/dist/Promise/deferredStream.js.map +1 -0
- package/dist/Promise/lock.d.ts +4 -0
- package/dist/Promise/lock.js +21 -0
- package/dist/Promise/lock.js.map +1 -0
- package/dist/Promise/timeoutable.d.ts +4 -0
- package/dist/Promise/timeoutable.js +21 -0
- package/dist/Promise/timeoutable.js.map +1 -0
- package/dist/Redis/DeviceActions/PostponedAction.d.ts +4 -0
- package/dist/Redis/DeviceActions/PostponedAction.js +3 -0
- package/dist/Redis/DeviceActions/PostponedAction.js.map +1 -0
- package/dist/Redis/DeviceActions/postponedDeviceActions.d.ts +8 -0
- package/dist/Redis/DeviceActions/postponedDeviceActions.js +333 -0
- package/dist/Redis/DeviceActions/postponedDeviceActions.js.map +1 -0
- package/dist/Redis/redisConnectionFactory.d.ts +41 -0
- package/dist/Redis/redisConnectionFactory.js +158 -0
- package/dist/Redis/redisConnectionFactory.js.map +1 -0
- package/dist/Redis/redisLock.d.ts +11 -0
- package/dist/Redis/redisLock.js +213 -0
- package/dist/Redis/redisLock.js.map +1 -0
- package/dist/Retry/retry.d.ts +28 -0
- package/dist/Retry/retry.js +154 -0
- package/dist/Retry/retry.js.map +1 -0
- package/dist/Rsync/copier.d.ts +1 -0
- package/dist/Rsync/copier.js +123 -0
- package/dist/Rsync/copier.js.map +1 -0
- package/dist/SemVer/SemVerLevel.d.ts +6 -0
- package/dist/SemVer/SemVerLevel.js +10 -0
- package/dist/SemVer/SemVerLevel.js.map +1 -0
- package/dist/SemVer/semVerConstants.d.ts +2 -0
- package/dist/SemVer/semVerConstants.js +9 -0
- package/dist/SemVer/semVerConstants.js.map +1 -0
- package/dist/SemVer/semVerHelper.d.ts +7 -0
- package/dist/SemVer/semVerHelper.js +82 -0
- package/dist/SemVer/semVerHelper.js.map +1 -0
- package/dist/Service/HTTP/express/app.d.ts +33 -0
- package/dist/Service/HTTP/express/app.js +82 -0
- package/dist/Service/HTTP/express/app.js.map +1 -0
- package/dist/Service/HTTP/express/expressFactory.d.ts +4 -0
- package/dist/Service/HTTP/express/expressFactory.js +22 -0
- package/dist/Service/HTTP/express/expressFactory.js.map +1 -0
- package/dist/Service/HTTP/express/monitoring.d.ts +8 -0
- package/dist/Service/HTTP/express/monitoring.js +25 -0
- package/dist/Service/HTTP/express/monitoring.js.map +1 -0
- package/dist/Service/HTTP/httpServerFactory.d.ts +54 -0
- package/dist/Service/HTTP/httpServerFactory.js +104 -0
- package/dist/Service/HTTP/httpServerFactory.js.map +1 -0
- package/dist/Service/HTTP/middleware/accessLogMiddleware.d.ts +20 -0
- package/dist/Service/HTTP/middleware/accessLogMiddleware.js +90 -0
- package/dist/Service/HTTP/middleware/accessLogMiddleware.js.map +1 -0
- package/dist/Service/HTTP/middleware/headersMiddleware.d.ts +2 -0
- package/dist/Service/HTTP/middleware/headersMiddleware.js +18 -0
- package/dist/Service/HTTP/middleware/headersMiddleware.js.map +1 -0
- package/dist/Service/HTTP/routes/app/indexPage.d.ts +7 -0
- package/dist/Service/HTTP/routes/app/indexPage.js +12 -0
- package/dist/Service/HTTP/routes/app/indexPage.js.map +1 -0
- package/dist/Service/HTTP/routes/app/router.d.ts +14 -0
- package/dist/Service/HTTP/routes/app/router.js +12 -0
- package/dist/Service/HTTP/routes/app/router.js.map +1 -0
- package/dist/Service/HTTP/routes/app/status.d.ts +13 -0
- package/dist/Service/HTTP/routes/app/status.js +44 -0
- package/dist/Service/HTTP/routes/app/status.js.map +1 -0
- package/dist/Service/HTTP/routes/monitoring/aliveness.d.ts +20 -0
- package/dist/Service/HTTP/routes/monitoring/aliveness.js +75 -0
- package/dist/Service/HTTP/routes/monitoring/aliveness.js.map +1 -0
- package/dist/Service/HTTP/routes/monitoring/metrics.d.ts +9 -0
- package/dist/Service/HTTP/routes/monitoring/metrics.js +59 -0
- package/dist/Service/HTTP/routes/monitoring/metrics.js.map +1 -0
- package/dist/Service/HTTP/routes/monitoring/readniness.d.ts +18 -0
- package/dist/Service/HTTP/routes/monitoring/readniness.js +80 -0
- package/dist/Service/HTTP/routes/monitoring/readniness.js.map +1 -0
- package/dist/Service/HTTP/routes/monitoring/router.d.ts +10 -0
- package/dist/Service/HTTP/routes/monitoring/router.js +12 -0
- package/dist/Service/HTTP/routes/monitoring/router.js.map +1 -0
- package/dist/Service/HTTP/server/serverFactory.d.ts +10 -0
- package/dist/Service/HTTP/server/serverFactory.js +133 -0
- package/dist/Service/HTTP/server/serverFactory.js.map +1 -0
- package/dist/Service/Service.d.ts +17 -0
- package/dist/Service/Service.js +97 -0
- package/dist/Service/Service.js.map +1 -0
- package/dist/Service/dbConnections.d.ts +8 -0
- package/dist/Service/dbConnections.js +3 -0
- package/dist/Service/dbConnections.js.map +1 -0
- package/dist/Service/metrics/connections.d.ts +3 -0
- package/dist/Service/metrics/connections.js +47 -0
- package/dist/Service/metrics/connections.js.map +1 -0
- package/dist/Service/metrics/mongodb.d.ts +2 -0
- package/dist/Service/metrics/mongodb.js +13 -0
- package/dist/Service/metrics/mongodb.js.map +1 -0
- package/dist/Service/metrics/redis.d.ts +2 -0
- package/dist/Service/metrics/redis.js +11 -0
- package/dist/Service/metrics/redis.js.map +1 -0
- package/dist/Service/process.d.ts +11 -0
- package/dist/Service/process.js +88 -0
- package/dist/Service/process.js.map +1 -0
- package/dist/Service/serviceFactory.d.ts +115 -0
- package/dist/Service/serviceFactory.js +118 -0
- package/dist/Service/serviceFactory.js.map +1 -0
- package/dist/Service/types.d.ts +55 -0
- package/dist/Service/types.js +3 -0
- package/dist/Service/types.js.map +1 -0
- package/dist/Storage/IArrayStorage.d.ts +7 -0
- package/dist/Storage/IArrayStorage.js +3 -0
- package/dist/Storage/IArrayStorage.js.map +1 -0
- package/dist/Storage/MemoryArrayStorage.d.ts +9 -0
- package/dist/Storage/MemoryArrayStorage.js +22 -0
- package/dist/Storage/MemoryArrayStorage.js.map +1 -0
- package/dist/String/pad.d.ts +1 -0
- package/dist/String/pad.js +7 -0
- package/dist/String/pad.js.map +1 -0
- package/dist/String/string.d.ts +3 -0
- package/dist/String/string.js +17 -0
- package/dist/String/string.js.map +1 -0
- package/dist/String/webalize.d.ts +1 -0
- package/dist/String/webalize.js +15 -0
- package/dist/String/webalize.js.map +1 -0
- package/dist/String/word.d.ts +32 -0
- package/dist/String/word.js +97 -0
- package/dist/String/word.js.map +1 -0
- package/dist/System/signalSender.d.ts +1 -0
- package/dist/System/signalSender.js +7 -0
- package/dist/System/signalSender.js.map +1 -0
- package/dist/ThirdParty/connection.d.ts +28 -0
- package/dist/ThirdParty/connection.js +9 -0
- package/dist/ThirdParty/connection.js.map +1 -0
- package/dist/Timer/Power/PowerTimerSettings.d.ts +29 -0
- package/dist/Timer/Power/PowerTimerSettings.js +3 -0
- package/dist/Timer/Power/PowerTimerSettings.js.map +1 -0
- package/dist/Timer/Power/PowerTimerType.d.ts +2 -0
- package/dist/Timer/Power/PowerTimerType.js +3 -0
- package/dist/Timer/Power/PowerTimerType.js.map +1 -0
- package/dist/Timer/Power/PowerTimerWeekday.d.ts +18 -0
- package/dist/Timer/Power/PowerTimerWeekday.js +18 -0
- package/dist/Timer/Power/PowerTimerWeekday.js.map +1 -0
- package/dist/Timer/Power/PowerTimerWeekdayEnum.d.ts +28 -0
- package/dist/Timer/Power/PowerTimerWeekdayEnum.js +32 -0
- package/dist/Timer/Power/PowerTimerWeekdayEnum.js.map +1 -0
- package/dist/Timer/Power/TimerEventWeekdayNumber.d.ts +9 -0
- package/dist/Timer/Power/TimerEventWeekdayNumber.js +14 -0
- package/dist/Timer/Power/TimerEventWeekdayNumber.js.map +1 -0
- package/dist/Timer/Power/powerTimerComputer.d.ts +36 -0
- package/dist/Timer/Power/powerTimerComputer.js +141 -0
- package/dist/Timer/Power/powerTimerComputer.js.map +1 -0
- package/dist/Timer/convertWeekday.d.ts +25 -0
- package/dist/Timer/convertWeekday.js +211 -0
- package/dist/Timer/convertWeekday.js.map +1 -0
- package/dist/Timer/converters.d.ts +44 -0
- package/dist/Timer/converters.js +72 -0
- package/dist/Timer/converters.js.map +1 -0
- package/dist/Timer/increasingInterval.d.ts +2 -0
- package/dist/Timer/increasingInterval.js +108 -0
- package/dist/Timer/increasingInterval.js.map +1 -0
- package/dist/Timer/nonConcurrentInterval.d.ts +4 -0
- package/dist/Timer/nonConcurrentInterval.js +73 -0
- package/dist/Timer/nonConcurrentInterval.js.map +1 -0
- package/dist/Timer/progressiveWait.d.ts +40 -0
- package/dist/Timer/progressiveWait.js +96 -0
- package/dist/Timer/progressiveWait.js.map +1 -0
- package/dist/Timer/timeout.d.ts +4 -0
- package/dist/Timer/timeout.js +21 -0
- package/dist/Timer/timeout.js.map +1 -0
- package/dist/Timer/wait.d.ts +5 -0
- package/dist/Timer/wait.js +27 -0
- package/dist/Timer/wait.js.map +1 -0
- package/dist/TypeScript/asyncIterator.d.ts +1 -0
- package/dist/TypeScript/asyncIterator.js +76 -0
- package/dist/TypeScript/asyncIterator.js.map +1 -0
- package/dist/TypeScript/expect.d.ts +6 -0
- package/dist/TypeScript/expect.js +12 -0
- package/dist/TypeScript/expect.js.map +1 -0
- package/dist/TypeScript/generator.d.ts +1 -0
- package/dist/TypeScript/generator.js +20 -0
- package/dist/TypeScript/generator.js.map +1 -0
- package/dist/TypeScript/object.d.ts +12 -0
- package/dist/TypeScript/object.js +3 -0
- package/dist/TypeScript/object.js.map +1 -0
- package/dist/TypeScript/observable-polyfill.d.ts +1 -0
- package/dist/TypeScript/observable-polyfill.js +33 -0
- package/dist/TypeScript/observable-polyfill.js.map +1 -0
- package/dist/Utils/array.d.ts +2 -0
- package/dist/Utils/array.js +23 -0
- package/dist/Utils/array.js.map +1 -0
- package/dist/Utils/enum.d.ts +24 -0
- package/dist/Utils/enum.js +35 -0
- package/dist/Utils/enum.js.map +1 -0
- package/dist/Utils/file.d.ts +1 -0
- package/dist/Utils/file.js +55 -0
- package/dist/Utils/file.js.map +1 -0
- package/dist/Utils/http.d.ts +23 -0
- package/dist/Utils/http.js +68 -0
- package/dist/Utils/http.js.map +1 -0
- package/dist/Utils/object.d.ts +22 -0
- package/dist/Utils/object.js +112 -0
- package/dist/Utils/object.js.map +1 -0
- package/dist/Utils/sorting.d.ts +1 -0
- package/dist/Utils/sorting.js +33 -0
- package/dist/Utils/sorting.js.map +1 -0
- package/dist/WebSocket/Client/ISocket.d.ts +55 -0
- package/dist/WebSocket/Client/ISocket.js +46 -0
- package/dist/WebSocket/Client/ISocket.js.map +1 -0
- package/dist/WebSocket/Client/SocketIO/createSocketIOSocket.d.ts +8 -0
- package/dist/WebSocket/Client/SocketIO/createSocketIOSocket.js +81 -0
- package/dist/WebSocket/Client/SocketIO/createSocketIOSocket.js.map +1 -0
- package/dist/WebSocket/Client/WS/AutoReconnectingWSSocket.d.ts +25 -0
- package/dist/WebSocket/Client/WS/AutoReconnectingWSSocket.js +174 -0
- package/dist/WebSocket/Client/WS/AutoReconnectingWSSocket.js.map +1 -0
- package/dist/WebSocket/Client/WS/createWSSocket.d.ts +8 -0
- package/dist/WebSocket/Client/WS/createWSSocket.js +155 -0
- package/dist/WebSocket/Client/WS/createWSSocket.js.map +1 -0
- package/dist/WebSocket/autoWsServerFactory.d.ts +4 -0
- package/dist/WebSocket/autoWsServerFactory.js +334 -0
- package/dist/WebSocket/autoWsServerFactory.js.map +1 -0
- package/dist/WebSocket/perMessageDeflate.d.ts +14 -0
- package/dist/WebSocket/perMessageDeflate.js +3 -0
- package/dist/WebSocket/perMessageDeflate.js.map +1 -0
- package/dist/WebSocket/socketIOServerFactory.d.ts +6 -0
- package/dist/WebSocket/socketIOServerFactory.js +124 -0
- package/dist/WebSocket/socketIOServerFactory.js.map +1 -0
- package/dist/WebSocket/socketServer.d.ts +30 -0
- package/dist/WebSocket/socketServer.js +3 -0
- package/dist/WebSocket/socketServer.js.map +1 -0
- package/dist/WebSocket/wsServerFactory.d.ts +8 -0
- package/dist/WebSocket/wsServerFactory.js +272 -0
- package/dist/WebSocket/wsServerFactory.js.map +1 -0
- package/dist/Webpack/NpmPackPlugin.d.ts +14 -0
- package/dist/Webpack/NpmPackPlugin.js +90 -0
- package/dist/Webpack/NpmPackPlugin.js.map +1 -0
- package/dist/Zod/zod.d.ts +2 -0
- package/dist/Zod/zod.js +7 -0
- package/dist/Zod/zod.js.map +1 -0
- package/dist/Zod/zodError.d.ts +40 -0
- package/dist/Zod/zodError.js +76 -0
- package/dist/Zod/zodError.js.map +1 -0
- package/package.json +36 -2
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.metrics = void 0;
|
|
4
|
+
var metrics_1 = require("./metrics");
|
|
5
|
+
var metricsPrefix = 'sos_event_queue_';
|
|
6
|
+
var metricsConfig = {
|
|
7
|
+
event_enqueued: {
|
|
8
|
+
metric: 'Counter',
|
|
9
|
+
help: 'Number of enqueued events',
|
|
10
|
+
labels: {
|
|
11
|
+
eventType: metrics_1.NOT_PREDEFINED_VALUE,
|
|
12
|
+
},
|
|
13
|
+
},
|
|
14
|
+
};
|
|
15
|
+
exports.metrics = new metrics_1.Metrics({
|
|
16
|
+
metricsConfig: metricsConfig,
|
|
17
|
+
prefix: metricsPrefix,
|
|
18
|
+
});
|
|
19
|
+
//# sourceMappingURL=eventQueueMetrics.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eventQueueMetrics.js","sourceRoot":"","sources":["../../src/Metrics/eventQueueMetrics.ts"],"names":[],"mappings":";;;AAAA,qCAAiG;AAOjG,IAAM,aAAa,GAAG,kBAAkB,CAAC;AAEzC,IAAM,aAAa,GAAgD;IAClE,cAAc,EAAE;QACf,MAAM,EAAE,SAAS;QACjB,IAAI,EAAE,2BAA2B;QACjC,MAAM,EAAE;YACP,SAAS,EAAE,8BAAoB;SAC/B;KACD;CACD,CAAC;AAEW,QAAA,OAAO,GAAyC,IAAI,iBAAO,CAA8B;IACrG,aAAa,EAAE,aAAa;IAC5B,MAAM,EAAE,aAAa;CACrB,CAAC,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.metrics = void 0;
|
|
4
|
+
var metrics_1 = require("./metrics");
|
|
5
|
+
var prefix = 'sos_';
|
|
6
|
+
var metricsConfig = {
|
|
7
|
+
error_count: {
|
|
8
|
+
metric: 'Counter',
|
|
9
|
+
help: 'Number of errors',
|
|
10
|
+
},
|
|
11
|
+
warning_count: {
|
|
12
|
+
metric: 'Counter',
|
|
13
|
+
help: 'Number of warnings',
|
|
14
|
+
},
|
|
15
|
+
};
|
|
16
|
+
exports.metrics = new metrics_1.Metrics({
|
|
17
|
+
metricsConfig: metricsConfig,
|
|
18
|
+
prefix: prefix,
|
|
19
|
+
});
|
|
20
|
+
//# sourceMappingURL=logMetrics.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logMetrics.js","sourceRoot":"","sources":["../../src/Metrics/logMetrics.ts"],"names":[],"mappings":";;;AAAA,qCAAoD;AAEpD,IAAM,MAAM,GAAG,MAAM,CAAC;AAItB,IAAM,aAAa,GAAsC;IACxD,WAAW,EAAE;QACZ,MAAM,EAAE,SAAS;QACjB,IAAI,EAAE,kBAAkB;KACxB;IACD,aAAa,EAAE;QACd,MAAM,EAAE,SAAS;QACjB,IAAI,EAAE,oBAAoB;KAC1B;CACQ,CAAC;AAEE,QAAA,OAAO,GAAG,IAAI,iBAAO,CAAoB;IACrD,aAAa,eAAA;IACb,MAAM,QAAA;CACN,CAAC,CAAC"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import { EventEmitter } from 'events';
|
|
2
|
+
export declare const NOT_PREDEFINED_VALUE = "NOT_PREDEFINED_VALUE";
|
|
3
|
+
export type TNOT_PREDEFINED_VALUE = typeof NOT_PREDEFINED_VALUE;
|
|
4
|
+
export type TMetricsConfig<TMetricsTypes extends string = '', TLabelsTypes extends Record<string, readonly string[] | 'NOT_PREDEFINED_VALUE'> = {}> = {
|
|
5
|
+
[key in TMetricsTypes]: {
|
|
6
|
+
metric: TMetricsClasses;
|
|
7
|
+
labels?: Partial<TLabelsTypes>;
|
|
8
|
+
help?: string;
|
|
9
|
+
buckets?: number[];
|
|
10
|
+
method?: 'inc' | 'dec' | 'set' | 'observe';
|
|
11
|
+
name?: string;
|
|
12
|
+
};
|
|
13
|
+
};
|
|
14
|
+
export type TMetricsClasses = 'Counter' | 'Histogram' | 'Gauge';
|
|
15
|
+
/**
|
|
16
|
+
* Create instance of a EventEmitter for emitting prometheus metrics ( https://prometheus.io/ )
|
|
17
|
+
*
|
|
18
|
+
* This single common implementation aims to provide a common implementation
|
|
19
|
+
* that all services can use.
|
|
20
|
+
*
|
|
21
|
+
* @param metricsConfig - configuration for all allowed AND required metrics
|
|
22
|
+
* @param prefix - string prefix added to all metrics names
|
|
23
|
+
*
|
|
24
|
+
* -------
|
|
25
|
+
*
|
|
26
|
+
* Metrics configuration
|
|
27
|
+
*
|
|
28
|
+
* ```typescript
|
|
29
|
+
* // allowed AND required metrics
|
|
30
|
+
* type TMetricsEvents = 'metric_counter_inc_with_label' | 'metric_counter_inc_with_label_and_value';
|
|
31
|
+
*
|
|
32
|
+
* const type1Labels = ['type1_label1', 'type1_label2', 'type1_label3'] as const;
|
|
33
|
+
*
|
|
34
|
+
* // allowed labels
|
|
35
|
+
* type TLabelsTypes = {
|
|
36
|
+
* type1: typeof type1Labels;
|
|
37
|
+
* };
|
|
38
|
+
*
|
|
39
|
+
* let metricsConfig: TMetricsConfig<TMetricsEvents, TLabelsTypes> = {
|
|
40
|
+
* metric_counter_inc_with_label: {
|
|
41
|
+
* // metrics type (one of Counter, Gauge, Histogram)
|
|
42
|
+
* metric: Counter,
|
|
43
|
+
* help: 'metric_counter_inc help',
|
|
44
|
+
* // metrics method
|
|
45
|
+
* method: 'inc',
|
|
46
|
+
* // allowed labels
|
|
47
|
+
* labels: { type1: type1Labels },
|
|
48
|
+
* // metrics name - `key` of this configuration is used if not provided (`metric_counter_inc_with_label` in this case)
|
|
49
|
+
* name: 'some_name',
|
|
50
|
+
* },
|
|
51
|
+
* }
|
|
52
|
+
*
|
|
53
|
+
* const metrics = new Metrics<TMetricsEvents, TLabelsTypes>({ metricsConfig, prefix: 'sos_test_' });
|
|
54
|
+
*
|
|
55
|
+
* ```
|
|
56
|
+
*
|
|
57
|
+
* -------
|
|
58
|
+
*
|
|
59
|
+
* Emit metrics:
|
|
60
|
+
*
|
|
61
|
+
* ```typescript
|
|
62
|
+
* metrics.emit('metric_counter_inc_with_label', { type1: 'type1_label1' }, 10);
|
|
63
|
+
* metrics.emit('metric_counter_inc_with_label', { type1: 'type1_label1' });
|
|
64
|
+
* metrics.emit('metric_counter_inc_with_label', 10);
|
|
65
|
+
* ```
|
|
66
|
+
*/
|
|
67
|
+
export declare class Metrics<TMetricsTypes extends string, TLabelsTypes extends Record<string, readonly string[] | TNOT_PREDEFINED_VALUE>> extends EventEmitter {
|
|
68
|
+
private metricsConfig;
|
|
69
|
+
private metrics;
|
|
70
|
+
private prefix?;
|
|
71
|
+
constructor({ metricsConfig, prefix }: {
|
|
72
|
+
metricsConfig: TMetricsConfig<TMetricsTypes, TLabelsTypes>;
|
|
73
|
+
prefix?: string;
|
|
74
|
+
});
|
|
75
|
+
emit(eventName: TMetricsTypes, labels: {
|
|
76
|
+
[key in keyof TLabelsTypes]?: TLabelsTypes[key][number];
|
|
77
|
+
}, value?: number, method?: 'inc' | 'dec' | 'set' | 'observe'): boolean;
|
|
78
|
+
emit(eventName: TMetricsTypes, value?: number): boolean;
|
|
79
|
+
on(eventName: TMetricsTypes, listener: (labels?: Partial<Record<keyof TLabelsTypes, string>>, value?: number, method?: 'inc' | 'dec' | 'set' | 'observe') => void): this;
|
|
80
|
+
private getMetricsClass;
|
|
81
|
+
private registerMetrics;
|
|
82
|
+
private validateLabels;
|
|
83
|
+
private getMetricsMethod;
|
|
84
|
+
}
|
|
@@ -0,0 +1,255 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
17
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
18
|
+
if (k2 === undefined) k2 = k;
|
|
19
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
20
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
21
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
22
|
+
}
|
|
23
|
+
Object.defineProperty(o, k2, desc);
|
|
24
|
+
}) : (function(o, m, k, k2) {
|
|
25
|
+
if (k2 === undefined) k2 = k;
|
|
26
|
+
o[k2] = m[k];
|
|
27
|
+
}));
|
|
28
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
29
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
30
|
+
}) : function(o, v) {
|
|
31
|
+
o["default"] = v;
|
|
32
|
+
});
|
|
33
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
34
|
+
if (mod && mod.__esModule) return mod;
|
|
35
|
+
var result = {};
|
|
36
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
37
|
+
__setModuleDefault(result, mod);
|
|
38
|
+
return result;
|
|
39
|
+
};
|
|
40
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
41
|
+
exports.Metrics = exports.NOT_PREDEFINED_VALUE = void 0;
|
|
42
|
+
var events_1 = require("events");
|
|
43
|
+
var prom_client_1 = require("prom-client");
|
|
44
|
+
var prometheusClient = __importStar(require("prom-client"));
|
|
45
|
+
exports.NOT_PREDEFINED_VALUE = 'NOT_PREDEFINED_VALUE';
|
|
46
|
+
/**
|
|
47
|
+
* Create instance of a EventEmitter for emitting prometheus metrics ( https://prometheus.io/ )
|
|
48
|
+
*
|
|
49
|
+
* This single common implementation aims to provide a common implementation
|
|
50
|
+
* that all services can use.
|
|
51
|
+
*
|
|
52
|
+
* @param metricsConfig - configuration for all allowed AND required metrics
|
|
53
|
+
* @param prefix - string prefix added to all metrics names
|
|
54
|
+
*
|
|
55
|
+
* -------
|
|
56
|
+
*
|
|
57
|
+
* Metrics configuration
|
|
58
|
+
*
|
|
59
|
+
* ```typescript
|
|
60
|
+
* // allowed AND required metrics
|
|
61
|
+
* type TMetricsEvents = 'metric_counter_inc_with_label' | 'metric_counter_inc_with_label_and_value';
|
|
62
|
+
*
|
|
63
|
+
* const type1Labels = ['type1_label1', 'type1_label2', 'type1_label3'] as const;
|
|
64
|
+
*
|
|
65
|
+
* // allowed labels
|
|
66
|
+
* type TLabelsTypes = {
|
|
67
|
+
* type1: typeof type1Labels;
|
|
68
|
+
* };
|
|
69
|
+
*
|
|
70
|
+
* let metricsConfig: TMetricsConfig<TMetricsEvents, TLabelsTypes> = {
|
|
71
|
+
* metric_counter_inc_with_label: {
|
|
72
|
+
* // metrics type (one of Counter, Gauge, Histogram)
|
|
73
|
+
* metric: Counter,
|
|
74
|
+
* help: 'metric_counter_inc help',
|
|
75
|
+
* // metrics method
|
|
76
|
+
* method: 'inc',
|
|
77
|
+
* // allowed labels
|
|
78
|
+
* labels: { type1: type1Labels },
|
|
79
|
+
* // metrics name - `key` of this configuration is used if not provided (`metric_counter_inc_with_label` in this case)
|
|
80
|
+
* name: 'some_name',
|
|
81
|
+
* },
|
|
82
|
+
* }
|
|
83
|
+
*
|
|
84
|
+
* const metrics = new Metrics<TMetricsEvents, TLabelsTypes>({ metricsConfig, prefix: 'sos_test_' });
|
|
85
|
+
*
|
|
86
|
+
* ```
|
|
87
|
+
*
|
|
88
|
+
* -------
|
|
89
|
+
*
|
|
90
|
+
* Emit metrics:
|
|
91
|
+
*
|
|
92
|
+
* ```typescript
|
|
93
|
+
* metrics.emit('metric_counter_inc_with_label', { type1: 'type1_label1' }, 10);
|
|
94
|
+
* metrics.emit('metric_counter_inc_with_label', { type1: 'type1_label1' });
|
|
95
|
+
* metrics.emit('metric_counter_inc_with_label', 10);
|
|
96
|
+
* ```
|
|
97
|
+
*/
|
|
98
|
+
var Metrics = /** @class */ (function (_super) {
|
|
99
|
+
__extends(Metrics, _super);
|
|
100
|
+
function Metrics(_a) {
|
|
101
|
+
var metricsConfig = _a.metricsConfig, prefix = _a.prefix;
|
|
102
|
+
var _this = _super.call(this) || this;
|
|
103
|
+
_this.metrics = {};
|
|
104
|
+
_this.metricsConfig = metricsConfig;
|
|
105
|
+
_this.prefix = prefix;
|
|
106
|
+
var _loop_1 = function (metricsConfigName) {
|
|
107
|
+
this_1.on(metricsConfigName, function () {
|
|
108
|
+
if (process.env.NODE_ENV !== 'test') {
|
|
109
|
+
console.error("No registered metrics for: '".concat(metricsConfigName, "'"));
|
|
110
|
+
}
|
|
111
|
+
});
|
|
112
|
+
};
|
|
113
|
+
var this_1 = this;
|
|
114
|
+
for (var metricsConfigName in _this.metricsConfig) {
|
|
115
|
+
_loop_1(metricsConfigName);
|
|
116
|
+
}
|
|
117
|
+
_this.registerMetrics({ register: prometheusClient.register });
|
|
118
|
+
return _this;
|
|
119
|
+
}
|
|
120
|
+
Metrics.prototype.emit = function (eventName, labelsOrValueOrMethod, valueOrMethod, method) {
|
|
121
|
+
if (typeof labelsOrValueOrMethod === 'number') {
|
|
122
|
+
return _super.prototype.emit.call(this, eventName, undefined, labelsOrValueOrMethod, method);
|
|
123
|
+
}
|
|
124
|
+
else if (typeof valueOrMethod === 'number') {
|
|
125
|
+
return _super.prototype.emit.call(this, eventName, labelsOrValueOrMethod, valueOrMethod, method);
|
|
126
|
+
}
|
|
127
|
+
else {
|
|
128
|
+
return _super.prototype.emit.call(this, eventName, labelsOrValueOrMethod, valueOrMethod, method);
|
|
129
|
+
}
|
|
130
|
+
};
|
|
131
|
+
Metrics.prototype.on = function (eventName, listener) {
|
|
132
|
+
return _super.prototype.on.call(this, eventName, listener);
|
|
133
|
+
};
|
|
134
|
+
Metrics.prototype.getMetricsClass = function (_a) {
|
|
135
|
+
var className = _a.className;
|
|
136
|
+
switch (className) {
|
|
137
|
+
case 'Counter':
|
|
138
|
+
return prom_client_1.Counter;
|
|
139
|
+
case 'Gauge':
|
|
140
|
+
return prom_client_1.Gauge;
|
|
141
|
+
case 'Histogram':
|
|
142
|
+
return prom_client_1.Histogram;
|
|
143
|
+
default:
|
|
144
|
+
throw new Error("Unknown metrics type: ".concat(className));
|
|
145
|
+
}
|
|
146
|
+
};
|
|
147
|
+
Metrics.prototype.registerMetrics = function (_a) {
|
|
148
|
+
var _this = this;
|
|
149
|
+
var register = _a.register;
|
|
150
|
+
var _loop_2 = function (metricsConfigName) {
|
|
151
|
+
var metricsName = "".concat(this_2.prefix ? this_2.prefix : '').concat(this_2.metricsConfig[metricsConfigName].name ? this_2.metricsConfig[metricsConfigName].name : metricsConfigName);
|
|
152
|
+
var metricsMethod = this_2.getMetricsMethod({ metricsConfigName: metricsConfigName });
|
|
153
|
+
var metricsClass = this_2.getMetricsClass({ className: this_2.metricsConfig[metricsConfigName].metric });
|
|
154
|
+
this_2.metrics[metricsConfigName] = new metricsClass({
|
|
155
|
+
name: metricsName,
|
|
156
|
+
help: this_2.metricsConfig[metricsConfigName].help || '',
|
|
157
|
+
registers: [register],
|
|
158
|
+
buckets: this_2.metricsConfig[metricsConfigName].buckets,
|
|
159
|
+
labelNames: Object.keys(this_2.metricsConfig[metricsConfigName].labels || {}),
|
|
160
|
+
});
|
|
161
|
+
if (!this_2.metrics[metricsConfigName][metricsMethod]) {
|
|
162
|
+
throw new Error("Invalid metrics: ".concat(this_2.metricsConfig[metricsConfigName].metric, " has no ").concat(this_2.metricsConfig[metricsConfigName].method, " method"));
|
|
163
|
+
}
|
|
164
|
+
this_2.removeAllListeners(metricsConfigName);
|
|
165
|
+
this_2.on(metricsConfigName, function (labels, value, method) {
|
|
166
|
+
try {
|
|
167
|
+
_this.validateLabels({ labels: labels, metricsName: metricsConfigName });
|
|
168
|
+
}
|
|
169
|
+
catch (validationError) {
|
|
170
|
+
console.error(validationError.message);
|
|
171
|
+
return;
|
|
172
|
+
}
|
|
173
|
+
try {
|
|
174
|
+
if (labels !== undefined && value !== undefined) {
|
|
175
|
+
_this.metrics[metricsConfigName][method || metricsMethod](labels, value);
|
|
176
|
+
}
|
|
177
|
+
else if (labels !== undefined) {
|
|
178
|
+
_this.metrics[metricsConfigName][method || metricsMethod](labels);
|
|
179
|
+
}
|
|
180
|
+
else if (value !== undefined) {
|
|
181
|
+
_this.metrics[metricsConfigName][method || metricsMethod](value);
|
|
182
|
+
}
|
|
183
|
+
else {
|
|
184
|
+
_this.metrics[metricsConfigName][method || metricsMethod]();
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
catch (metricsError) {
|
|
188
|
+
console.error("".concat(metricsConfigName, ": ").concat(metricsError.message));
|
|
189
|
+
return;
|
|
190
|
+
}
|
|
191
|
+
});
|
|
192
|
+
};
|
|
193
|
+
var this_2 = this;
|
|
194
|
+
for (var metricsConfigName in this.metricsConfig) {
|
|
195
|
+
_loop_2(metricsConfigName);
|
|
196
|
+
}
|
|
197
|
+
};
|
|
198
|
+
Metrics.prototype.validateLabels = function (_a) {
|
|
199
|
+
var labels = _a.labels, metricsName = _a.metricsName;
|
|
200
|
+
if (!labels) {
|
|
201
|
+
return true;
|
|
202
|
+
}
|
|
203
|
+
for (var labelName in labels) {
|
|
204
|
+
if (this.metricsConfig[metricsName].labels[labelName] === exports.NOT_PREDEFINED_VALUE) {
|
|
205
|
+
continue;
|
|
206
|
+
}
|
|
207
|
+
if (!this.metricsConfig[metricsName].labels[labelName].includes(labels[labelName])) {
|
|
208
|
+
throw new Error("Unknown label '".concat(labelName, "' for metrics '").concat(metricsName, "'"));
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
return true;
|
|
212
|
+
};
|
|
213
|
+
Metrics.prototype.getMetricsMethod = function (_a) {
|
|
214
|
+
var metricsConfigName = _a.metricsConfigName;
|
|
215
|
+
var errorMessage;
|
|
216
|
+
var metricClassName = this.metricsConfig[metricsConfigName].metric;
|
|
217
|
+
if (metricClassName === 'Counter') {
|
|
218
|
+
if (['inc'].includes(this.metricsConfig[metricsConfigName].method || 'inc')) {
|
|
219
|
+
return this.metricsConfig[metricsConfigName].method || 'inc';
|
|
220
|
+
}
|
|
221
|
+
else {
|
|
222
|
+
errorMessage = "'method ".concat(this.metricsConfig[metricsConfigName].method, "' not allowed for 'Counter'");
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
if (metricClassName === 'Gauge') {
|
|
226
|
+
if (['inc', 'dec', 'set'].includes(this.metricsConfig[metricsConfigName].method || 'inc')) {
|
|
227
|
+
return this.metricsConfig[metricsConfigName].method || 'inc';
|
|
228
|
+
}
|
|
229
|
+
else {
|
|
230
|
+
errorMessage = "'method ".concat(this.metricsConfig[metricsConfigName].method, "' not allowed for 'Gaude'");
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
if (metricClassName === 'Histogram') {
|
|
234
|
+
if (['observe'].includes(this.metricsConfig[metricsConfigName].method || 'observe')) {
|
|
235
|
+
if (!this.metricsConfig[metricsConfigName].buckets) {
|
|
236
|
+
errorMessage = "'buckets' configuration is required}";
|
|
237
|
+
}
|
|
238
|
+
else {
|
|
239
|
+
return this.metricsConfig[metricsConfigName].method || 'observe';
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
else {
|
|
243
|
+
errorMessage = "'method ".concat(this.metricsConfig[metricsConfigName].method, "' not allowed for 'Histogram'");
|
|
244
|
+
}
|
|
245
|
+
if (this.metricsConfig[metricsConfigName].metric === 'Histogram' && this.metricsConfig[metricsConfigName].buckets) {
|
|
246
|
+
return 'observe';
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
errorMessage !== null && errorMessage !== void 0 ? errorMessage : (errorMessage = "unknown metrics '".concat(this.metricsConfig[metricsConfigName].metric, "'"));
|
|
250
|
+
throw new Error("Configuration error for '".concat(metricsConfigName, "' : ").concat(errorMessage));
|
|
251
|
+
};
|
|
252
|
+
return Metrics;
|
|
253
|
+
}(events_1.EventEmitter));
|
|
254
|
+
exports.Metrics = Metrics;
|
|
255
|
+
//# sourceMappingURL=metrics.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../src/Metrics/metrics.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,iCAAsC;AACtC,2CAAkE;AAClE,4DAAgD;AAEnC,QAAA,oBAAoB,GAAG,sBAAsB,CAAC;AAuB3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AACH;IAGU,2BAAY;IAKrB,iBAAY,EAA0G;YAAxG,aAAa,mBAAA,EAAE,MAAM,YAAA;QAClC,YAAA,MAAK,WAAE,SAAC;QAJD,aAAO,GAA4B,EAAE,CAAC;QAK7C,KAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,KAAI,CAAC,MAAM,GAAG,MAAM,CAAC;gCAEV,iBAAiB;YAC3B,OAAK,EAAE,CAAC,iBAAiB,EAAE;gBAC1B,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM,EAAE,CAAC;oBACrC,OAAO,CAAC,KAAK,CAAC,sCAA+B,iBAAiB,MAAG,CAAC,CAAC;gBACpE,CAAC;YACF,CAAC,CAAC,CAAC;;;QALJ,KAAK,IAAM,iBAAiB,IAAI,KAAI,CAAC,aAAa;oBAAvC,iBAAiB;SAM3B;QAED,KAAI,CAAC,eAAe,CAAC,EAAE,QAAQ,EAAE,gBAAgB,CAAC,QAAQ,EAAE,CAAC,CAAC;;IAC/D,CAAC;IASM,sBAAI,GAAX,UACC,SAAwB,EACxB,qBAA2B,EAC3B,aAA+B,EAC/B,MAA0C;QAE1C,IAAI,OAAO,qBAAqB,KAAK,QAAQ,EAAE,CAAC;YAC/C,OAAO,gBAAK,CAAC,IAAI,YAAC,SAAS,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,CAAC,CAAC;QACxE,CAAC;aAAM,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE,CAAC;YAC9C,OAAO,gBAAK,CAAC,IAAI,YAAC,SAAS,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;QAC5E,CAAC;aAAM,CAAC;YACP,OAAO,gBAAK,CAAC,IAAI,YAAC,SAAS,EAAE,qBAAqB,EAAE,aAAa,EAAE,MAAM,CAAC,CAAC;QAC5E,CAAC;IACF,CAAC;IAEM,oBAAE,GAAT,UACC,SAAwB,EACxB,QAAoI;QAEpI,OAAO,gBAAK,CAAC,EAAE,YAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IACtC,CAAC;IAEO,iCAAe,GAAvB,UAAwB,EAA6C;YAA3C,SAAS,eAAA;QAClC,QAAQ,SAAS,EAAE,CAAC;YACnB,KAAK,SAAS;gBACb,OAAO,qBAAO,CAAC;YAChB,KAAK,OAAO;gBACX,OAAO,mBAAK,CAAC;YACd,KAAK,WAAW;gBACf,OAAO,uBAAS,CAAC;YAClB;gBACC,MAAM,IAAI,KAAK,CAAC,gCAAyB,SAAS,CAAE,CAAC,CAAC;QACxD,CAAC;IACF,CAAC;IACO,iCAAe,GAAvB,UAAwB,EAAoC;QAA5D,iBA8CC;YA9CyB,QAAQ,cAAA;gCACtB,iBAAiB;YAC3B,IAAM,WAAW,GAAG,UAAG,OAAK,MAAM,CAAC,CAAC,CAAC,OAAK,MAAM,CAAC,CAAC,CAAC,EAAE,SAAG,OAAK,aAAa,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAK,aAAa,CAAC,iBAAiB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAE,CAAC;YACtK,IAAM,aAAa,GAAG,OAAK,gBAAgB,CAAC,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,CAAC,CAAC;YACtF,IAAM,YAAY,GAAG,OAAK,eAAe,CAAC,EAAE,SAAS,EAAE,OAAK,aAAa,CAAC,iBAAiB,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;YAEvG,OAAK,OAAO,CAAC,iBAAiB,CAAC,GAAG,IAAI,YAAY,CAAC;gBAClD,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,OAAK,aAAa,CAAC,iBAAiB,CAAC,CAAC,IAAI,IAAI,EAAE;gBACtD,SAAS,EAAE,CAAC,QAAQ,CAAC;gBACrB,OAAO,EAAE,OAAK,aAAa,CAAC,iBAAiB,CAAC,CAAC,OAAO;gBACtD,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,OAAK,aAAa,CAAC,iBAAiB,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC;aAC3E,CAAC,CAAC;YAEH,IAAI,CAAE,OAAK,OAAO,CAAC,iBAAiB,CAAS,CAAC,aAAa,CAAC,EAAE,CAAC;gBAC9D,MAAM,IAAI,KAAK,CACd,2BAAoB,OAAK,aAAa,CAAC,iBAAiB,CAAC,CAAC,MAAM,qBAAW,OAAK,aAAa,CAAC,iBAAiB,CAAC,CAAC,MAAM,YAAS,CAChI,CAAC;YACH,CAAC;YAED,OAAK,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;YAE3C,OAAK,EAAE,CAAC,iBAAiB,EAAE,UAAC,MAAM,EAAE,KAAK,EAAE,MAAM;gBAChD,IAAI,CAAC;oBACJ,KAAI,CAAC,cAAc,CAAC,EAAE,MAAM,QAAA,EAAE,WAAW,EAAE,iBAAiB,EAAE,CAAC,CAAC;gBACjE,CAAC;gBAAC,OAAO,eAAe,EAAE,CAAC;oBAC1B,OAAO,CAAC,KAAK,CAAS,eAAgB,CAAC,OAAO,CAAC,CAAC;oBAChD,OAAO;gBACR,CAAC;gBAED,IAAI,CAAC;oBACJ,IAAI,MAAM,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;wBAChD,KAAI,CAAC,OAAO,CAAC,iBAAiB,CAAS,CAAC,MAAM,IAAI,aAAa,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;oBAClF,CAAC;yBAAM,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;wBAChC,KAAI,CAAC,OAAO,CAAC,iBAAiB,CAAS,CAAC,MAAM,IAAI,aAAa,CAAC,CAAC,MAAM,CAAC,CAAC;oBAC3E,CAAC;yBAAM,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;wBAC/B,KAAI,CAAC,OAAO,CAAC,iBAAiB,CAAS,CAAC,MAAM,IAAI,aAAa,CAAC,CAAC,KAAK,CAAC,CAAC;oBAC1E,CAAC;yBAAM,CAAC;wBACN,KAAI,CAAC,OAAO,CAAC,iBAAiB,CAAS,CAAC,MAAM,IAAI,aAAa,CAAC,EAAE,CAAC;oBACrE,CAAC;gBACF,CAAC;gBAAC,OAAO,YAAY,EAAE,CAAC;oBACvB,OAAO,CAAC,KAAK,CAAC,UAAG,iBAAiB,eAAa,YAAa,CAAC,OAAO,CAAE,CAAC,CAAC;oBACxE,OAAO;gBACR,CAAC;YACF,CAAC,CAAC,CAAC;;;QA3CJ,KAAK,IAAM,iBAAiB,IAAI,IAAI,CAAC,aAAa;oBAAvC,iBAAiB;SA4C3B;IACF,CAAC;IAEO,gCAAc,GAAtB,UAAuB,EAMtB;YALA,MAAM,YAAA,EACN,WAAW,iBAAA;QAKX,IAAI,CAAC,MAAM,EAAE,CAAC;YACb,OAAO,IAAI,CAAC;QACb,CAAC;QAED,KAAK,IAAM,SAAS,IAAI,MAAM,EAAE,CAAC;YAChC,IAAK,IAAI,CAAC,aAAqB,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,4BAAoB,EAAE,CAAC;gBACzF,SAAS;YACV,CAAC;YAED,IAAI,CAAE,IAAI,CAAC,aAAqB,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;gBAC7F,MAAM,IAAI,KAAK,CAAC,yBAAkB,SAAS,4BAAkB,WAAW,MAAG,CAAC,CAAC;YAC9E,CAAC;QACF,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAEO,kCAAgB,GAAxB,UAAyB,EAA2D;YAAzD,iBAAiB,uBAAA;QAC3C,IAAI,YAAoB,CAAC;QAEzB,IAAM,eAAe,GAAG,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,MAAM,CAAC;QAErE,IAAI,eAAe,KAAK,SAAS,EAAE,CAAC;YACnC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC,EAAE,CAAC;gBAC7E,OAAO,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC;YAC9D,CAAC;iBAAM,CAAC;gBACP,YAAY,GAAG,kBAAW,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,MAAM,gCAA6B,CAAC;YACrG,CAAC;QACF,CAAC;QACD,IAAI,eAAe,KAAK,OAAO,EAAE,CAAC;YACjC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC,EAAE,CAAC;gBAC3F,OAAO,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC;YAC9D,CAAC;iBAAM,CAAC;gBACP,YAAY,GAAG,kBAAW,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,MAAM,8BAA2B,CAAC;YACnG,CAAC;QACF,CAAC;QAED,IAAI,eAAe,KAAK,WAAW,EAAE,CAAC;YACrC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,MAAM,IAAI,SAAS,CAAC,EAAE,CAAC;gBACrF,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,OAAO,EAAE,CAAC;oBACpD,YAAY,GAAG,sCAAsC,CAAC;gBACvD,CAAC;qBAAM,CAAC;oBACP,OAAO,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,MAAM,IAAI,SAAS,CAAC;gBAClE,CAAC;YACF,CAAC;iBAAM,CAAC;gBACP,YAAY,GAAG,kBAAW,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,MAAM,kCAA+B,CAAC;YACvG,CAAC;YAED,IAAI,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,MAAM,KAAK,WAAW,IAAI,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,OAAO,EAAE,CAAC;gBACnH,OAAO,SAAS,CAAC;YAClB,CAAC;QACF,CAAC;QAED,YAAY,aAAZ,YAAY,cAAZ,YAAY,IAAZ,YAAY,GAAK,2BAAoB,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAC,MAAM,MAAG,EAAC;QAErF,MAAM,IAAI,KAAK,CAAC,mCAA4B,iBAAiB,iBAAO,YAAY,CAAE,CAAC,CAAC;IACrF,CAAC;IACF,cAAC;AAAD,CAAC,AAhLD,CAGU,qBAAY,GA6KrB;AAhLY,0BAAO"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { MongoClient } from 'mongodb';
|
|
2
|
+
export interface MongoDBDriverExporterOptions {
|
|
3
|
+
/**
|
|
4
|
+
* Buckets for the mongodb_driver_commands_seconds_bucket metric.
|
|
5
|
+
* Default buckets are [0.001, 0.005, 0.010, 0.020, 0.030, 0.040, 0.050, 0.100, 0.200, 0.500, 1.0, 2.0, 5.0, 10]
|
|
6
|
+
*/
|
|
7
|
+
mongodbDriverCommandsSecondsHistogramBuckets?: number[];
|
|
8
|
+
}
|
|
9
|
+
export interface IMongoDBDriverExporter extends MongoDBDriverExporter {
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Exports metrics for the MongoDB driver
|
|
13
|
+
*
|
|
14
|
+
* It has to be a singleton because it registers the metrics in the global registry
|
|
15
|
+
* and it's not possible to register the same metric multiple times.
|
|
16
|
+
*/
|
|
17
|
+
export declare class MongoDBDriverExporter {
|
|
18
|
+
/**
|
|
19
|
+
* Start monitoring the given mongo client instance
|
|
20
|
+
*
|
|
21
|
+
* @param mongoClient mongo client instance
|
|
22
|
+
* @param name unique name for the client that will be used as a label to differentiate between multiple clients
|
|
23
|
+
*/
|
|
24
|
+
monitorMongoClient(mongoClient: MongoClient, name: string): void;
|
|
25
|
+
private onConnectionPoolCreated;
|
|
26
|
+
private onConnectionCreated;
|
|
27
|
+
private onConnectionClosed;
|
|
28
|
+
private onConnectionCheckOutStarted;
|
|
29
|
+
private onConnectionCheckedOut;
|
|
30
|
+
private onConnectionCheckOutFailed;
|
|
31
|
+
private onConnectionCheckedIn;
|
|
32
|
+
private onConnectionPoolClosed;
|
|
33
|
+
private onCommandSucceeded;
|
|
34
|
+
private onCommandFailed;
|
|
35
|
+
}
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.MongoDBDriverExporter = void 0;
|
|
18
|
+
var debug_1 = __importDefault(require("debug"));
|
|
19
|
+
var metrics_1 = require("./metrics");
|
|
20
|
+
var debug = (0, debug_1.default)('@signageos/lib:Metrics:mongoDBDriverExporter');
|
|
21
|
+
var defaultOptions = {
|
|
22
|
+
mongodbDriverCommandsSecondsHistogramBuckets: [0.001, 0.005, 0.01, 0.02, 0.03, 0.04, 0.05, 0.1, 0.2, 0.5, 1, 2, 5, 10],
|
|
23
|
+
};
|
|
24
|
+
var prefix = 'sos_';
|
|
25
|
+
var mongoMetricsConfig = {
|
|
26
|
+
mongodb_driver_pool_size: {
|
|
27
|
+
metric: 'Gauge',
|
|
28
|
+
help: 'the current size of the connection pool, including idle and in-use members',
|
|
29
|
+
method: 'inc',
|
|
30
|
+
labels: {
|
|
31
|
+
name: 'NOT_PREDEFINED_VALUE',
|
|
32
|
+
},
|
|
33
|
+
},
|
|
34
|
+
mongodb_driver_pool_min: {
|
|
35
|
+
metric: 'Gauge',
|
|
36
|
+
help: 'the minimum size of the connection pool',
|
|
37
|
+
method: 'set',
|
|
38
|
+
labels: {
|
|
39
|
+
name: 'NOT_PREDEFINED_VALUE',
|
|
40
|
+
},
|
|
41
|
+
},
|
|
42
|
+
mongodb_driver_pool_max: {
|
|
43
|
+
metric: 'Gauge',
|
|
44
|
+
help: 'the maximum size of the connection pool',
|
|
45
|
+
method: 'set',
|
|
46
|
+
labels: {
|
|
47
|
+
name: 'NOT_PREDEFINED_VALUE',
|
|
48
|
+
},
|
|
49
|
+
},
|
|
50
|
+
mongodb_driver_pool_active: {
|
|
51
|
+
metric: 'Gauge',
|
|
52
|
+
help: 'the count of connections that are currently in use',
|
|
53
|
+
method: 'inc',
|
|
54
|
+
labels: {
|
|
55
|
+
name: 'NOT_PREDEFINED_VALUE',
|
|
56
|
+
},
|
|
57
|
+
},
|
|
58
|
+
mongodb_driver_pool_wait: {
|
|
59
|
+
metric: 'Gauge',
|
|
60
|
+
help: 'the current size of the wait queue for a connection from the pool',
|
|
61
|
+
method: 'inc',
|
|
62
|
+
labels: {
|
|
63
|
+
name: 'NOT_PREDEFINED_VALUE',
|
|
64
|
+
},
|
|
65
|
+
},
|
|
66
|
+
mongodb_driver_commands_seconds: {
|
|
67
|
+
metric: 'Histogram',
|
|
68
|
+
help: 'Timer of mongodb commands',
|
|
69
|
+
buckets: defaultOptions.mongodbDriverCommandsSecondsHistogramBuckets,
|
|
70
|
+
labels: {
|
|
71
|
+
name: 'NOT_PREDEFINED_VALUE',
|
|
72
|
+
command: 'NOT_PREDEFINED_VALUE',
|
|
73
|
+
},
|
|
74
|
+
},
|
|
75
|
+
mongodb_driver_commands_failed_total: {
|
|
76
|
+
metric: 'Counter',
|
|
77
|
+
help: 'Counter of failed mongodb commands',
|
|
78
|
+
method: 'inc',
|
|
79
|
+
labels: {
|
|
80
|
+
name: 'NOT_PREDEFINED_VALUE',
|
|
81
|
+
},
|
|
82
|
+
},
|
|
83
|
+
};
|
|
84
|
+
var metrics = new metrics_1.Metrics({
|
|
85
|
+
metricsConfig: mongoMetricsConfig,
|
|
86
|
+
prefix: prefix,
|
|
87
|
+
});
|
|
88
|
+
/**
|
|
89
|
+
* Exports metrics for the MongoDB driver
|
|
90
|
+
*
|
|
91
|
+
* It has to be a singleton because it registers the metrics in the global registry
|
|
92
|
+
* and it's not possible to register the same metric multiple times.
|
|
93
|
+
*/
|
|
94
|
+
var MongoDBDriverExporter = /** @class */ (function () {
|
|
95
|
+
function MongoDBDriverExporter() {
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Start monitoring the given mongo client instance
|
|
99
|
+
*
|
|
100
|
+
* @param mongoClient mongo client instance
|
|
101
|
+
* @param name unique name for the client that will be used as a label to differentiate between multiple clients
|
|
102
|
+
*/
|
|
103
|
+
MongoDBDriverExporter.prototype.monitorMongoClient = function (mongoClient, name) {
|
|
104
|
+
var _this = this;
|
|
105
|
+
var labels = { name: name };
|
|
106
|
+
mongoClient.on('connectionPoolCreated', function (event) { return _this.onConnectionPoolCreated(labels, event); });
|
|
107
|
+
mongoClient.on('connectionPoolClosed', function () { return _this.onConnectionPoolClosed(labels); });
|
|
108
|
+
mongoClient.on('connectionCreated', function () { return _this.onConnectionCreated(labels); });
|
|
109
|
+
mongoClient.on('connectionClosed', function () { return _this.onConnectionClosed(labels); });
|
|
110
|
+
mongoClient.on('connectionCheckOutStarted', function () { return _this.onConnectionCheckOutStarted(labels); });
|
|
111
|
+
mongoClient.on('connectionCheckedOut', function () { return _this.onConnectionCheckedOut(labels); });
|
|
112
|
+
mongoClient.on('connectionCheckOutFailed', function () { return _this.onConnectionCheckOutFailed(labels); });
|
|
113
|
+
mongoClient.on('connectionCheckedIn', function () { return _this.onConnectionCheckedIn(labels); });
|
|
114
|
+
mongoClient.on('commandSucceeded', function (event) { return _this.onCommandSucceeded(labels, event); });
|
|
115
|
+
mongoClient.on('commandFailed', function () { return _this.onCommandFailed(labels); });
|
|
116
|
+
};
|
|
117
|
+
MongoDBDriverExporter.prototype.onConnectionPoolCreated = function (labels, event) {
|
|
118
|
+
metrics.emit('mongodb_driver_pool_size', labels, 0, 'set');
|
|
119
|
+
metrics.emit('mongodb_driver_pool_min', labels, event.options.minPoolSize, 'set');
|
|
120
|
+
metrics.emit('mongodb_driver_pool_max', labels, event.options.maxPoolSize, 'set');
|
|
121
|
+
metrics.emit('mongodb_driver_pool_active', labels, 0, 'set');
|
|
122
|
+
metrics.emit('mongodb_driver_pool_wait', labels, 0, 'set');
|
|
123
|
+
};
|
|
124
|
+
MongoDBDriverExporter.prototype.onConnectionCreated = function (labels) {
|
|
125
|
+
metrics.emit('mongodb_driver_pool_size', labels, 1);
|
|
126
|
+
};
|
|
127
|
+
MongoDBDriverExporter.prototype.onConnectionClosed = function (labels) {
|
|
128
|
+
metrics.emit('mongodb_driver_pool_size', labels, -1);
|
|
129
|
+
};
|
|
130
|
+
MongoDBDriverExporter.prototype.onConnectionCheckOutStarted = function (labels) {
|
|
131
|
+
metrics.emit('mongodb_driver_pool_wait', labels, 1);
|
|
132
|
+
};
|
|
133
|
+
MongoDBDriverExporter.prototype.onConnectionCheckedOut = function (labels) {
|
|
134
|
+
metrics.emit('mongodb_driver_pool_active', labels, 1);
|
|
135
|
+
metrics.emit('mongodb_driver_pool_wait', labels, -1);
|
|
136
|
+
};
|
|
137
|
+
MongoDBDriverExporter.prototype.onConnectionCheckOutFailed = function (labels) {
|
|
138
|
+
debug('connectionCheckOutFailed');
|
|
139
|
+
metrics.emit('mongodb_driver_pool_wait', labels, -1);
|
|
140
|
+
};
|
|
141
|
+
MongoDBDriverExporter.prototype.onConnectionCheckedIn = function (labels) {
|
|
142
|
+
metrics.emit('mongodb_driver_pool_active', labels, -1);
|
|
143
|
+
};
|
|
144
|
+
MongoDBDriverExporter.prototype.onConnectionPoolClosed = function (labels) {
|
|
145
|
+
debug('connectionPoolClosed');
|
|
146
|
+
metrics.emit('mongodb_driver_pool_size', labels, 0, 'set');
|
|
147
|
+
metrics.emit('mongodb_driver_pool_min', labels, 0, 'set');
|
|
148
|
+
metrics.emit('mongodb_driver_pool_max', labels, 0, 'set');
|
|
149
|
+
metrics.emit('mongodb_driver_pool_active', labels, 0, 'set');
|
|
150
|
+
metrics.emit('mongodb_driver_pool_wait', labels, 0, 'set');
|
|
151
|
+
};
|
|
152
|
+
MongoDBDriverExporter.prototype.onCommandSucceeded = function (labels, event) {
|
|
153
|
+
var fullLabels = __assign(__assign({}, labels), { command: event.commandName });
|
|
154
|
+
metrics.emit('mongodb_driver_commands_seconds', fullLabels, event.duration / 1000);
|
|
155
|
+
};
|
|
156
|
+
MongoDBDriverExporter.prototype.onCommandFailed = function (labels) {
|
|
157
|
+
metrics.emit('mongodb_driver_commands_failed_total', labels);
|
|
158
|
+
};
|
|
159
|
+
return MongoDBDriverExporter;
|
|
160
|
+
}());
|
|
161
|
+
exports.MongoDBDriverExporter = MongoDBDriverExporter;
|
|
162
|
+
//# sourceMappingURL=mongoDBMetrics.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mongoDBMetrics.js","sourceRoot":"","sources":["../../src/Metrics/mongoDBMetrics.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { Registry } from 'prom-client';
|
|
2
|
+
declare const defaultConfig: {
|
|
3
|
+
prefix: string;
|
|
4
|
+
registry: Registry | undefined;
|
|
5
|
+
process: NodeJS.Process;
|
|
6
|
+
};
|
|
7
|
+
export type Config = typeof defaultConfig;
|
|
8
|
+
export declare const metricNames: string[];
|
|
9
|
+
export declare const collectSocketMetrics: (cfg?: Partial<Config>) => void;
|
|
10
|
+
export {};
|