@microsoft/opentelemetry 0.1.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/LICENSE +21 -0
- package/README.md +91 -0
- package/dist/commonjs/_a365/configuration/A365Configuration.d.ts +42 -0
- package/dist/commonjs/_a365/configuration/A365Configuration.d.ts.map +1 -0
- package/dist/commonjs/_a365/configuration/A365Configuration.js +146 -0
- package/dist/commonjs/_a365/configuration/A365Configuration.js.map +1 -0
- package/dist/commonjs/_a365/configuration/A365ConfigurationOptions.d.ts +53 -0
- package/dist/commonjs/_a365/configuration/A365ConfigurationOptions.d.ts.map +1 -0
- package/dist/commonjs/_a365/configuration/A365ConfigurationOptions.js +5 -0
- package/dist/commonjs/_a365/configuration/A365ConfigurationOptions.js.map +1 -0
- package/dist/commonjs/_a365/configuration/index.d.ts +3 -0
- package/dist/commonjs/_a365/configuration/index.d.ts.map +1 -0
- package/dist/commonjs/_a365/configuration/index.js +9 -0
- package/dist/commonjs/_a365/configuration/index.js.map +1 -0
- package/dist/commonjs/_a365/exporter/Agent365Exporter.d.ts +25 -0
- package/dist/commonjs/_a365/exporter/Agent365Exporter.d.ts.map +1 -0
- package/dist/commonjs/_a365/exporter/Agent365Exporter.js +220 -0
- package/dist/commonjs/_a365/exporter/Agent365Exporter.js.map +1 -0
- package/dist/commonjs/_a365/exporter/Agent365ExporterOptions.d.ts +43 -0
- package/dist/commonjs/_a365/exporter/Agent365ExporterOptions.d.ts.map +1 -0
- package/dist/commonjs/_a365/exporter/Agent365ExporterOptions.js +30 -0
- package/dist/commonjs/_a365/exporter/Agent365ExporterOptions.js.map +1 -0
- package/dist/commonjs/_a365/exporter/ExporterEventNames.d.ts +9 -0
- package/dist/commonjs/_a365/exporter/ExporterEventNames.d.ts.map +1 -0
- package/dist/commonjs/_a365/exporter/ExporterEventNames.js +15 -0
- package/dist/commonjs/_a365/exporter/ExporterEventNames.js.map +1 -0
- package/dist/commonjs/_a365/exporter/index.d.ts +6 -0
- package/dist/commonjs/_a365/exporter/index.d.ts.map +1 -0
- package/dist/commonjs/_a365/exporter/index.js +15 -0
- package/dist/commonjs/_a365/exporter/index.js.map +1 -0
- package/dist/commonjs/_a365/exporter/utils.d.ts +41 -0
- package/dist/commonjs/_a365/exporter/utils.d.ts.map +1 -0
- package/dist/commonjs/_a365/exporter/utils.js +410 -0
- package/dist/commonjs/_a365/exporter/utils.js.map +1 -0
- package/dist/commonjs/_a365/index.d.ts +6 -0
- package/dist/commonjs/_a365/index.d.ts.map +1 -0
- package/dist/commonjs/_a365/index.js +13 -0
- package/dist/commonjs/_a365/index.js.map +1 -0
- package/dist/commonjs/_a365/utils/utils.d.ts +6 -0
- package/dist/commonjs/_a365/utils/utils.d.ts.map +1 -0
- package/dist/commonjs/_a365/utils/utils.js +14 -0
- package/dist/commonjs/_a365/utils/utils.js.map +1 -0
- package/dist/commonjs/azureMonitorSetup.d.ts +14 -0
- package/dist/commonjs/azureMonitorSetup.d.ts.map +1 -0
- package/dist/commonjs/azureMonitorSetup.js +56 -0
- package/dist/commonjs/azureMonitorSetup.js.map +1 -0
- package/dist/commonjs/browserSdkLoader/browserSdkLoader.d.ts +31 -0
- package/dist/commonjs/browserSdkLoader/browserSdkLoader.d.ts.map +1 -0
- package/dist/commonjs/browserSdkLoader/browserSdkLoader.js +374 -0
- package/dist/commonjs/browserSdkLoader/browserSdkLoader.js.map +1 -0
- package/dist/commonjs/browserSdkLoader/browserSdkLoaderHelper.d.ts +24 -0
- package/dist/commonjs/browserSdkLoader/browserSdkLoaderHelper.d.ts.map +1 -0
- package/dist/commonjs/browserSdkLoader/browserSdkLoaderHelper.js +183 -0
- package/dist/commonjs/browserSdkLoader/browserSdkLoaderHelper.js.map +1 -0
- package/dist/commonjs/distro/autoAttach.d.ts +6 -0
- package/dist/commonjs/distro/autoAttach.d.ts.map +1 -0
- package/dist/commonjs/distro/autoAttach.js +30 -0
- package/dist/commonjs/distro/autoAttach.js.map +1 -0
- package/dist/commonjs/distro/distro.d.ts +24 -0
- package/dist/commonjs/distro/distro.d.ts.map +1 -0
- package/dist/commonjs/distro/distro.js +125 -0
- package/dist/commonjs/distro/distro.js.map +1 -0
- package/dist/commonjs/distro/index.d.ts +4 -0
- package/dist/commonjs/distro/index.d.ts.map +1 -0
- package/dist/commonjs/distro/index.js +11 -0
- package/dist/commonjs/distro/index.js.map +1 -0
- package/dist/commonjs/distro/types.d.ts +41 -0
- package/dist/commonjs/distro/types.d.ts.map +1 -0
- package/dist/commonjs/distro/types.js +10 -0
- package/dist/commonjs/distro/types.js.map +1 -0
- package/dist/commonjs/genai/index.d.ts +2 -0
- package/dist/commonjs/genai/index.d.ts.map +1 -0
- package/dist/commonjs/genai/index.js +20 -0
- package/dist/commonjs/genai/index.js.map +1 -0
- package/dist/commonjs/genai/instrumentations/langchain/index.d.ts +3 -0
- package/dist/commonjs/genai/instrumentations/langchain/index.d.ts.map +1 -0
- package/dist/commonjs/genai/instrumentations/langchain/index.js +10 -0
- package/dist/commonjs/genai/instrumentations/langchain/index.js.map +1 -0
- package/dist/commonjs/genai/instrumentations/langchain/langchainTraceInstrumentor.d.ts +34 -0
- package/dist/commonjs/genai/instrumentations/langchain/langchainTraceInstrumentor.d.ts.map +1 -0
- package/dist/commonjs/genai/instrumentations/langchain/langchainTraceInstrumentor.js +164 -0
- package/dist/commonjs/genai/instrumentations/langchain/langchainTraceInstrumentor.js.map +1 -0
- package/dist/commonjs/genai/instrumentations/langchain/tracer.d.ts +59 -0
- package/dist/commonjs/genai/instrumentations/langchain/tracer.d.ts.map +1 -0
- package/dist/commonjs/genai/instrumentations/langchain/tracer.js +218 -0
- package/dist/commonjs/genai/instrumentations/langchain/tracer.js.map +1 -0
- package/dist/commonjs/genai/instrumentations/langchain/utils.d.ts +16 -0
- package/dist/commonjs/genai/instrumentations/langchain/utils.d.ts.map +1 -0
- package/dist/commonjs/genai/instrumentations/langchain/utils.js +320 -0
- package/dist/commonjs/genai/instrumentations/langchain/utils.js.map +1 -0
- package/dist/commonjs/genai/semconv.d.ts +33 -0
- package/dist/commonjs/genai/semconv.d.ts.map +1 -0
- package/dist/commonjs/genai/semconv.js +46 -0
- package/dist/commonjs/genai/semconv.js.map +1 -0
- package/dist/commonjs/genai/utils.d.ts +13 -0
- package/dist/commonjs/genai/utils.d.ts.map +1 -0
- package/dist/commonjs/genai/utils.js +39 -0
- package/dist/commonjs/genai/utils.js.map +1 -0
- package/dist/commonjs/generated/api/index.d.ts +4 -0
- package/dist/commonjs/generated/api/index.d.ts.map +1 -0
- package/dist/commonjs/generated/api/index.js +11 -0
- package/dist/commonjs/generated/api/index.js.map +1 -0
- package/dist/commonjs/generated/api/operations.d.ts +13 -0
- package/dist/commonjs/generated/api/operations.d.ts.map +1 -0
- package/dist/commonjs/generated/api/operations.js +107 -0
- package/dist/commonjs/generated/api/operations.js.map +1 -0
- package/dist/commonjs/generated/api/options.d.ts +31 -0
- package/dist/commonjs/generated/api/options.d.ts.map +1 -0
- package/dist/commonjs/generated/api/options.js +5 -0
- package/dist/commonjs/generated/api/options.js.map +1 -0
- package/dist/commonjs/generated/api/quickpulseContext.d.ts +17 -0
- package/dist/commonjs/generated/api/quickpulseContext.d.ts.map +1 -0
- package/dist/commonjs/generated/api/quickpulseContext.js +26 -0
- package/dist/commonjs/generated/api/quickpulseContext.js.map +1 -0
- package/dist/commonjs/generated/index.d.ts +4 -0
- package/dist/commonjs/generated/index.d.ts.map +1 -0
- package/dist/commonjs/generated/index.js +10 -0
- package/dist/commonjs/generated/index.js.map +1 -0
- package/dist/commonjs/generated/logger.d.ts +2 -0
- package/dist/commonjs/generated/logger.d.ts.map +1 -0
- package/dist/commonjs/generated/logger.js +8 -0
- package/dist/commonjs/generated/logger.js.map +1 -0
- package/dist/commonjs/generated/models/index.d.ts +2 -0
- package/dist/commonjs/generated/models/index.d.ts.map +1 -0
- package/dist/commonjs/generated/models/index.js +8 -0
- package/dist/commonjs/generated/models/index.js.map +1 -0
- package/dist/commonjs/generated/models/models.d.ts +265 -0
- package/dist/commonjs/generated/models/models.d.ts.map +1 -0
- package/dist/commonjs/generated/models/models.js +393 -0
- package/dist/commonjs/generated/models/models.js.map +1 -0
- package/dist/commonjs/generated/quickpulseClient.d.ts +18 -0
- package/dist/commonjs/generated/quickpulseClient.d.ts.map +1 -0
- package/dist/commonjs/generated/quickpulseClient.js +34 -0
- package/dist/commonjs/generated/quickpulseClient.js.map +1 -0
- package/dist/commonjs/generated/static-helpers/urlTemplate.d.ts +5 -0
- package/dist/commonjs/generated/static-helpers/urlTemplate.d.ts.map +1 -0
- package/dist/commonjs/generated/static-helpers/urlTemplate.js +203 -0
- package/dist/commonjs/generated/static-helpers/urlTemplate.js.map +1 -0
- package/dist/commonjs/index.d.ts +20 -0
- package/dist/commonjs/index.d.ts.map +1 -0
- package/dist/commonjs/index.js +32 -0
- package/dist/commonjs/index.js.map +1 -0
- package/dist/commonjs/loader.d.ts +2 -0
- package/dist/commonjs/loader.d.ts.map +1 -0
- package/dist/commonjs/loader.js +72 -0
- package/dist/commonjs/loader.js.map +1 -0
- package/dist/commonjs/logs/batchLogRecordProcessor.d.ts +14 -0
- package/dist/commonjs/logs/batchLogRecordProcessor.d.ts.map +1 -0
- package/dist/commonjs/logs/batchLogRecordProcessor.js +32 -0
- package/dist/commonjs/logs/batchLogRecordProcessor.js.map +1 -0
- package/dist/commonjs/logs/handler.d.ts +30 -0
- package/dist/commonjs/logs/handler.d.ts.map +1 -0
- package/dist/commonjs/logs/handler.js +67 -0
- package/dist/commonjs/logs/handler.js.map +1 -0
- package/dist/commonjs/logs/index.d.ts +2 -0
- package/dist/commonjs/logs/index.d.ts.map +1 -0
- package/dist/commonjs/logs/index.js +8 -0
- package/dist/commonjs/logs/index.js.map +1 -0
- package/dist/commonjs/logs/logRecordProcessor.d.ts +14 -0
- package/dist/commonjs/logs/logRecordProcessor.d.ts.map +1 -0
- package/dist/commonjs/logs/logRecordProcessor.js +32 -0
- package/dist/commonjs/logs/logRecordProcessor.js.map +1 -0
- package/dist/commonjs/metrics/handler.d.ts +33 -0
- package/dist/commonjs/metrics/handler.d.ts.map +1 -0
- package/dist/commonjs/metrics/handler.js +130 -0
- package/dist/commonjs/metrics/handler.js.map +1 -0
- package/dist/commonjs/metrics/index.d.ts +2 -0
- package/dist/commonjs/metrics/index.d.ts.map +1 -0
- package/dist/commonjs/metrics/index.js +8 -0
- package/dist/commonjs/metrics/index.js.map +1 -0
- package/dist/commonjs/metrics/performanceCounters.d.ts +77 -0
- package/dist/commonjs/metrics/performanceCounters.d.ts.map +1 -0
- package/dist/commonjs/metrics/performanceCounters.js +336 -0
- package/dist/commonjs/metrics/performanceCounters.js.map +1 -0
- package/dist/commonjs/metrics/quickpulse/export/exporter.d.ts +46 -0
- package/dist/commonjs/metrics/quickpulse/export/exporter.d.ts.map +1 -0
- package/dist/commonjs/metrics/quickpulse/export/exporter.js +100 -0
- package/dist/commonjs/metrics/quickpulse/export/exporter.js.map +1 -0
- package/dist/commonjs/metrics/quickpulse/export/sender.d.ts +47 -0
- package/dist/commonjs/metrics/quickpulse/export/sender.d.ts.map +1 -0
- package/dist/commonjs/metrics/quickpulse/export/sender.js +125 -0
- package/dist/commonjs/metrics/quickpulse/export/sender.js.map +1 -0
- package/dist/commonjs/metrics/quickpulse/filtering/collectionConfigurationErrorTracker.d.ts +22 -0
- package/dist/commonjs/metrics/quickpulse/filtering/collectionConfigurationErrorTracker.d.ts.map +1 -0
- package/dist/commonjs/metrics/quickpulse/filtering/collectionConfigurationErrorTracker.js +40 -0
- package/dist/commonjs/metrics/quickpulse/filtering/collectionConfigurationErrorTracker.js.map +1 -0
- package/dist/commonjs/metrics/quickpulse/filtering/filter.d.ts +12 -0
- package/dist/commonjs/metrics/quickpulse/filtering/filter.d.ts.map +1 -0
- package/dist/commonjs/metrics/quickpulse/filtering/filter.js +158 -0
- package/dist/commonjs/metrics/quickpulse/filtering/filter.js.map +1 -0
- package/dist/commonjs/metrics/quickpulse/filtering/projection.d.ts +13 -0
- package/dist/commonjs/metrics/quickpulse/filtering/projection.d.ts.map +1 -0
- package/dist/commonjs/metrics/quickpulse/filtering/projection.js +120 -0
- package/dist/commonjs/metrics/quickpulse/filtering/projection.js.map +1 -0
- package/dist/commonjs/metrics/quickpulse/filtering/quickpulseErrors.d.ts +13 -0
- package/dist/commonjs/metrics/quickpulse/filtering/quickpulseErrors.d.ts.map +1 -0
- package/dist/commonjs/metrics/quickpulse/filtering/quickpulseErrors.js +34 -0
- package/dist/commonjs/metrics/quickpulse/filtering/quickpulseErrors.js.map +1 -0
- package/dist/commonjs/metrics/quickpulse/filtering/validator.d.ts +11 -0
- package/dist/commonjs/metrics/quickpulse/filtering/validator.d.ts.map +1 -0
- package/dist/commonjs/metrics/quickpulse/filtering/validator.js +160 -0
- package/dist/commonjs/metrics/quickpulse/filtering/validator.js.map +1 -0
- package/dist/commonjs/metrics/quickpulse/liveMetrics.d.ts +112 -0
- package/dist/commonjs/metrics/quickpulse/liveMetrics.d.ts.map +1 -0
- package/dist/commonjs/metrics/quickpulse/liveMetrics.js +716 -0
- package/dist/commonjs/metrics/quickpulse/liveMetrics.js.map +1 -0
- package/dist/commonjs/metrics/quickpulse/types.d.ts +110 -0
- package/dist/commonjs/metrics/quickpulse/types.d.ts.map +1 -0
- package/dist/commonjs/metrics/quickpulse/types.js +121 -0
- package/dist/commonjs/metrics/quickpulse/types.js.map +1 -0
- package/dist/commonjs/metrics/quickpulse/utils.d.ts +43 -0
- package/dist/commonjs/metrics/quickpulse/utils.d.ts.map +1 -0
- package/dist/commonjs/metrics/quickpulse/utils.js +563 -0
- package/dist/commonjs/metrics/quickpulse/utils.js.map +1 -0
- package/dist/commonjs/metrics/standardMetrics.d.ts +56 -0
- package/dist/commonjs/metrics/standardMetrics.d.ts.map +1 -0
- package/dist/commonjs/metrics/standardMetrics.js +138 -0
- package/dist/commonjs/metrics/standardMetrics.js.map +1 -0
- package/dist/commonjs/metrics/types.d.ts +48 -0
- package/dist/commonjs/metrics/types.d.ts.map +1 -0
- package/dist/commonjs/metrics/types.js +50 -0
- package/dist/commonjs/metrics/types.js.map +1 -0
- package/dist/commonjs/metrics/utils.d.ts +35 -0
- package/dist/commonjs/metrics/utils.d.ts.map +1 -0
- package/dist/commonjs/metrics/utils.js +273 -0
- package/dist/commonjs/metrics/utils.js.map +1 -0
- package/dist/commonjs/otlp/handler.d.ts +100 -0
- package/dist/commonjs/otlp/handler.d.ts.map +1 -0
- package/dist/commonjs/otlp/handler.js +142 -0
- package/dist/commonjs/otlp/handler.js.map +1 -0
- package/dist/commonjs/otlp/index.d.ts +3 -0
- package/dist/commonjs/otlp/index.d.ts.map +1 -0
- package/dist/commonjs/otlp/index.js +9 -0
- package/dist/commonjs/otlp/index.js.map +1 -0
- package/dist/commonjs/shared/config.d.ts +57 -0
- package/dist/commonjs/shared/config.d.ts.map +1 -0
- package/dist/commonjs/shared/config.js +218 -0
- package/dist/commonjs/shared/config.js.map +1 -0
- package/dist/commonjs/shared/envConfig.d.ts +25 -0
- package/dist/commonjs/shared/envConfig.d.ts.map +1 -0
- package/dist/commonjs/shared/envConfig.js +129 -0
- package/dist/commonjs/shared/envConfig.js.map +1 -0
- package/dist/commonjs/shared/index.d.ts +2 -0
- package/dist/commonjs/shared/index.d.ts.map +1 -0
- package/dist/commonjs/shared/index.js +8 -0
- package/dist/commonjs/shared/index.js.map +1 -0
- package/dist/commonjs/shared/jsonConfig.d.ts +35 -0
- package/dist/commonjs/shared/jsonConfig.d.ts.map +1 -0
- package/dist/commonjs/shared/jsonConfig.js +122 -0
- package/dist/commonjs/shared/jsonConfig.js.map +1 -0
- package/dist/commonjs/shared/logging/diagFileConsoleLogger.d.ts +32 -0
- package/dist/commonjs/shared/logging/diagFileConsoleLogger.d.ts.map +1 -0
- package/dist/commonjs/shared/logging/diagFileConsoleLogger.js +246 -0
- package/dist/commonjs/shared/logging/diagFileConsoleLogger.js.map +1 -0
- package/dist/commonjs/shared/logging/index.d.ts +2 -0
- package/dist/commonjs/shared/logging/index.d.ts.map +1 -0
- package/dist/commonjs/shared/logging/index.js +8 -0
- package/dist/commonjs/shared/logging/index.js.map +1 -0
- package/dist/commonjs/shared/logging/logger.d.ts +18 -0
- package/dist/commonjs/shared/logging/logger.d.ts.map +1 -0
- package/dist/commonjs/shared/logging/logger.js +132 -0
- package/dist/commonjs/shared/logging/logger.js.map +1 -0
- package/dist/commonjs/shared/module-cjs.cjs +34 -0
- package/dist/commonjs/shared/module-cjs.cjs.map +1 -0
- package/dist/commonjs/shared/module-cjs.d.cts +12 -0
- package/dist/commonjs/shared/module-cjs.d.cts.map +1 -0
- package/dist/commonjs/shared/module.d.ts +13 -0
- package/dist/commonjs/shared/module.d.ts.map +1 -0
- package/dist/commonjs/shared/module.js +30 -0
- package/dist/commonjs/shared/module.js.map +1 -0
- package/dist/commonjs/traces/handler.d.ts +37 -0
- package/dist/commonjs/traces/handler.d.ts.map +1 -0
- package/dist/commonjs/traces/handler.js +125 -0
- package/dist/commonjs/traces/handler.js.map +1 -0
- package/dist/commonjs/traces/index.d.ts +2 -0
- package/dist/commonjs/traces/index.d.ts.map +1 -0
- package/dist/commonjs/traces/index.js +8 -0
- package/dist/commonjs/traces/index.js.map +1 -0
- package/dist/commonjs/traces/sampler.d.ts +42 -0
- package/dist/commonjs/traces/sampler.d.ts.map +1 -0
- package/dist/commonjs/traces/sampler.js +88 -0
- package/dist/commonjs/traces/sampler.js.map +1 -0
- package/dist/commonjs/traces/spanProcessor.d.ts +16 -0
- package/dist/commonjs/traces/spanProcessor.d.ts.map +1 -0
- package/dist/commonjs/traces/spanProcessor.js +35 -0
- package/dist/commonjs/traces/spanProcessor.js.map +1 -0
- package/dist/commonjs/types.d.ts +259 -0
- package/dist/commonjs/types.d.ts.map +1 -0
- package/dist/commonjs/types.js +143 -0
- package/dist/commonjs/types.js.map +1 -0
- package/dist/commonjs/utils/common.d.ts +37 -0
- package/dist/commonjs/utils/common.d.ts.map +1 -0
- package/dist/commonjs/utils/common.js +148 -0
- package/dist/commonjs/utils/common.js.map +1 -0
- package/dist/commonjs/utils/connectionStringParser.d.ts +13 -0
- package/dist/commonjs/utils/connectionStringParser.d.ts.map +1 -0
- package/dist/commonjs/utils/connectionStringParser.js +82 -0
- package/dist/commonjs/utils/connectionStringParser.js.map +1 -0
- package/dist/commonjs/utils/fileSystem.d.ts +27 -0
- package/dist/commonjs/utils/fileSystem.d.ts.map +1 -0
- package/dist/commonjs/utils/fileSystem.js +86 -0
- package/dist/commonjs/utils/fileSystem.js.map +1 -0
- package/dist/commonjs/utils/index.d.ts +3 -0
- package/dist/commonjs/utils/index.d.ts.map +1 -0
- package/dist/commonjs/utils/index.js +22 -0
- package/dist/commonjs/utils/index.js.map +1 -0
- package/dist/commonjs/utils/logUtils.d.ts +7 -0
- package/dist/commonjs/utils/logUtils.d.ts.map +1 -0
- package/dist/commonjs/utils/logUtils.js +35 -0
- package/dist/commonjs/utils/logUtils.js.map +1 -0
- package/dist/commonjs/utils/opentelemetryInstrumentationPatcher.d.ts +6 -0
- package/dist/commonjs/utils/opentelemetryInstrumentationPatcher.d.ts.map +1 -0
- package/dist/commonjs/utils/opentelemetryInstrumentationPatcher.js +44 -0
- package/dist/commonjs/utils/opentelemetryInstrumentationPatcher.js.map +1 -0
- package/dist/commonjs/utils/statsbeat.d.ts +15 -0
- package/dist/commonjs/utils/statsbeat.d.ts.map +1 -0
- package/dist/commonjs/utils/statsbeat.js +127 -0
- package/dist/commonjs/utils/statsbeat.js.map +1 -0
- package/dist/commonjs/utils/types.d.ts +14 -0
- package/dist/commonjs/utils/types.d.ts.map +1 -0
- package/dist/commonjs/utils/types.js +5 -0
- package/dist/commonjs/utils/types.js.map +1 -0
- package/dist/esm/_a365/configuration/A365Configuration.d.ts +42 -0
- package/dist/esm/_a365/configuration/A365Configuration.d.ts.map +1 -0
- package/dist/esm/_a365/configuration/A365Configuration.js +142 -0
- package/dist/esm/_a365/configuration/A365Configuration.js.map +1 -0
- package/dist/esm/_a365/configuration/A365ConfigurationOptions.d.ts +53 -0
- package/dist/esm/_a365/configuration/A365ConfigurationOptions.d.ts.map +1 -0
- package/dist/esm/_a365/configuration/A365ConfigurationOptions.js +4 -0
- package/dist/esm/_a365/configuration/A365ConfigurationOptions.js.map +1 -0
- package/dist/esm/_a365/configuration/index.d.ts +3 -0
- package/dist/esm/_a365/configuration/index.d.ts.map +1 -0
- package/dist/esm/_a365/configuration/index.js +4 -0
- package/dist/esm/_a365/configuration/index.js.map +1 -0
- package/dist/esm/_a365/exporter/Agent365Exporter.d.ts +25 -0
- package/dist/esm/_a365/exporter/Agent365Exporter.d.ts.map +1 -0
- package/dist/esm/_a365/exporter/Agent365Exporter.js +216 -0
- package/dist/esm/_a365/exporter/Agent365Exporter.js.map +1 -0
- package/dist/esm/_a365/exporter/Agent365ExporterOptions.d.ts +43 -0
- package/dist/esm/_a365/exporter/Agent365ExporterOptions.d.ts.map +1 -0
- package/dist/esm/_a365/exporter/Agent365ExporterOptions.js +26 -0
- package/dist/esm/_a365/exporter/Agent365ExporterOptions.js.map +1 -0
- package/dist/esm/_a365/exporter/ExporterEventNames.d.ts +9 -0
- package/dist/esm/_a365/exporter/ExporterEventNames.d.ts.map +1 -0
- package/dist/esm/_a365/exporter/ExporterEventNames.js +12 -0
- package/dist/esm/_a365/exporter/ExporterEventNames.js.map +1 -0
- package/dist/esm/_a365/exporter/index.d.ts +6 -0
- package/dist/esm/_a365/exporter/index.d.ts.map +1 -0
- package/dist/esm/_a365/exporter/index.js +7 -0
- package/dist/esm/_a365/exporter/index.js.map +1 -0
- package/dist/esm/_a365/exporter/utils.d.ts +41 -0
- package/dist/esm/_a365/exporter/utils.d.ts.map +1 -0
- package/dist/esm/_a365/exporter/utils.js +398 -0
- package/dist/esm/_a365/exporter/utils.js.map +1 -0
- package/dist/esm/_a365/index.d.ts +6 -0
- package/dist/esm/_a365/index.d.ts.map +1 -0
- package/dist/esm/_a365/index.js +6 -0
- package/dist/esm/_a365/index.js.map +1 -0
- package/dist/esm/_a365/utils/utils.d.ts +6 -0
- package/dist/esm/_a365/utils/utils.d.ts.map +1 -0
- package/dist/esm/_a365/utils/utils.js +11 -0
- package/dist/esm/_a365/utils/utils.js.map +1 -0
- package/dist/esm/azureMonitorSetup.d.ts +14 -0
- package/dist/esm/azureMonitorSetup.d.ts.map +1 -0
- package/dist/esm/azureMonitorSetup.js +53 -0
- package/dist/esm/azureMonitorSetup.js.map +1 -0
- package/dist/esm/browserSdkLoader/browserSdkLoader.d.ts +31 -0
- package/dist/esm/browserSdkLoader/browserSdkLoader.d.ts.map +1 -0
- package/dist/esm/browserSdkLoader/browserSdkLoader.js +334 -0
- package/dist/esm/browserSdkLoader/browserSdkLoader.js.map +1 -0
- package/dist/esm/browserSdkLoader/browserSdkLoaderHelper.d.ts +24 -0
- package/dist/esm/browserSdkLoader/browserSdkLoaderHelper.d.ts.map +1 -0
- package/dist/esm/browserSdkLoader/browserSdkLoaderHelper.js +136 -0
- package/dist/esm/browserSdkLoader/browserSdkLoaderHelper.js.map +1 -0
- package/dist/esm/distro/autoAttach.d.ts +6 -0
- package/dist/esm/distro/autoAttach.d.ts.map +1 -0
- package/dist/esm/distro/autoAttach.js +27 -0
- package/dist/esm/distro/autoAttach.js.map +1 -0
- package/dist/esm/distro/distro.d.ts +24 -0
- package/dist/esm/distro/distro.d.ts.map +1 -0
- package/dist/esm/distro/distro.js +120 -0
- package/dist/esm/distro/distro.js.map +1 -0
- package/dist/esm/distro/index.d.ts +4 -0
- package/dist/esm/distro/index.d.ts.map +1 -0
- package/dist/esm/distro/index.js +5 -0
- package/dist/esm/distro/index.js.map +1 -0
- package/dist/esm/distro/types.d.ts +41 -0
- package/dist/esm/distro/types.d.ts.map +1 -0
- package/dist/esm/distro/types.js +7 -0
- package/dist/esm/distro/types.js.map +1 -0
- package/dist/esm/genai/index.d.ts +2 -0
- package/dist/esm/genai/index.d.ts.map +1 -0
- package/dist/esm/genai/index.js +4 -0
- package/dist/esm/genai/index.js.map +1 -0
- package/dist/esm/genai/instrumentations/langchain/index.d.ts +3 -0
- package/dist/esm/genai/instrumentations/langchain/index.d.ts.map +1 -0
- package/dist/esm/genai/instrumentations/langchain/index.js +5 -0
- package/dist/esm/genai/instrumentations/langchain/index.js.map +1 -0
- package/dist/esm/genai/instrumentations/langchain/langchainTraceInstrumentor.d.ts +34 -0
- package/dist/esm/genai/instrumentations/langchain/langchainTraceInstrumentor.d.ts.map +1 -0
- package/dist/esm/genai/instrumentations/langchain/langchainTraceInstrumentor.js +159 -0
- package/dist/esm/genai/instrumentations/langchain/langchainTraceInstrumentor.js.map +1 -0
- package/dist/esm/genai/instrumentations/langchain/tracer.d.ts +59 -0
- package/dist/esm/genai/instrumentations/langchain/tracer.d.ts.map +1 -0
- package/dist/esm/genai/instrumentations/langchain/tracer.js +181 -0
- package/dist/esm/genai/instrumentations/langchain/tracer.js.map +1 -0
- package/dist/esm/genai/instrumentations/langchain/utils.d.ts +16 -0
- package/dist/esm/genai/instrumentations/langchain/utils.d.ts.map +1 -0
- package/dist/esm/genai/instrumentations/langchain/utils.js +305 -0
- package/dist/esm/genai/instrumentations/langchain/utils.js.map +1 -0
- package/dist/esm/genai/semconv.d.ts +33 -0
- package/dist/esm/genai/semconv.d.ts.map +1 -0
- package/dist/esm/genai/semconv.js +43 -0
- package/dist/esm/genai/semconv.js.map +1 -0
- package/dist/esm/genai/utils.d.ts +13 -0
- package/dist/esm/genai/utils.d.ts.map +1 -0
- package/dist/esm/genai/utils.js +35 -0
- package/dist/esm/genai/utils.js.map +1 -0
- package/dist/esm/generated/api/index.d.ts +4 -0
- package/dist/esm/generated/api/index.d.ts.map +1 -0
- package/dist/esm/generated/api/index.js +5 -0
- package/dist/esm/generated/api/index.js.map +1 -0
- package/dist/esm/generated/api/operations.d.ts +13 -0
- package/dist/esm/generated/api/operations.d.ts.map +1 -0
- package/dist/esm/generated/api/operations.js +99 -0
- package/dist/esm/generated/api/operations.js.map +1 -0
- package/dist/esm/generated/api/options.d.ts +31 -0
- package/dist/esm/generated/api/options.d.ts.map +1 -0
- package/dist/esm/generated/api/options.js +4 -0
- package/dist/esm/generated/api/options.js.map +1 -0
- package/dist/esm/generated/api/quickpulseContext.d.ts +17 -0
- package/dist/esm/generated/api/quickpulseContext.d.ts.map +1 -0
- package/dist/esm/generated/api/quickpulseContext.js +23 -0
- package/dist/esm/generated/api/quickpulseContext.js.map +1 -0
- package/dist/esm/generated/index.d.ts +4 -0
- package/dist/esm/generated/index.d.ts.map +1 -0
- package/dist/esm/generated/index.js +5 -0
- package/dist/esm/generated/index.js.map +1 -0
- package/dist/esm/generated/logger.d.ts +2 -0
- package/dist/esm/generated/logger.d.ts.map +1 -0
- package/dist/esm/generated/logger.js +5 -0
- package/dist/esm/generated/logger.js.map +1 -0
- package/dist/esm/generated/models/index.d.ts +2 -0
- package/dist/esm/generated/models/index.d.ts.map +1 -0
- package/dist/esm/generated/models/index.js +4 -0
- package/dist/esm/generated/models/index.js.map +1 -0
- package/dist/esm/generated/models/models.d.ts +265 -0
- package/dist/esm/generated/models/models.d.ts.map +1 -0
- package/dist/esm/generated/models/models.js +347 -0
- package/dist/esm/generated/models/models.js.map +1 -0
- package/dist/esm/generated/quickpulseClient.d.ts +18 -0
- package/dist/esm/generated/quickpulseClient.d.ts.map +1 -0
- package/dist/esm/generated/quickpulseClient.js +30 -0
- package/dist/esm/generated/quickpulseClient.js.map +1 -0
- package/dist/esm/generated/static-helpers/urlTemplate.d.ts +5 -0
- package/dist/esm/generated/static-helpers/urlTemplate.d.ts.map +1 -0
- package/dist/esm/generated/static-helpers/urlTemplate.js +200 -0
- package/dist/esm/generated/static-helpers/urlTemplate.js.map +1 -0
- package/dist/esm/index.d.ts +20 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +23 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/loader.d.ts +2 -0
- package/dist/esm/loader.d.ts.map +1 -0
- package/dist/esm/loader.js +37 -0
- package/dist/esm/loader.js.map +1 -0
- package/dist/esm/logs/batchLogRecordProcessor.d.ts +14 -0
- package/dist/esm/logs/batchLogRecordProcessor.d.ts.map +1 -0
- package/dist/esm/logs/batchLogRecordProcessor.js +28 -0
- package/dist/esm/logs/batchLogRecordProcessor.js.map +1 -0
- package/dist/esm/logs/handler.d.ts +30 -0
- package/dist/esm/logs/handler.d.ts.map +1 -0
- package/dist/esm/logs/handler.js +63 -0
- package/dist/esm/logs/handler.js.map +1 -0
- package/dist/esm/logs/index.d.ts +2 -0
- package/dist/esm/logs/index.d.ts.map +1 -0
- package/dist/esm/logs/index.js +4 -0
- package/dist/esm/logs/index.js.map +1 -0
- package/dist/esm/logs/logRecordProcessor.d.ts +14 -0
- package/dist/esm/logs/logRecordProcessor.d.ts.map +1 -0
- package/dist/esm/logs/logRecordProcessor.js +28 -0
- package/dist/esm/logs/logRecordProcessor.js.map +1 -0
- package/dist/esm/metrics/handler.d.ts +33 -0
- package/dist/esm/metrics/handler.d.ts.map +1 -0
- package/dist/esm/metrics/handler.js +126 -0
- package/dist/esm/metrics/handler.js.map +1 -0
- package/dist/esm/metrics/index.d.ts +2 -0
- package/dist/esm/metrics/index.d.ts.map +1 -0
- package/dist/esm/metrics/index.js +4 -0
- package/dist/esm/metrics/index.js.map +1 -0
- package/dist/esm/metrics/performanceCounters.d.ts +77 -0
- package/dist/esm/metrics/performanceCounters.d.ts.map +1 -0
- package/dist/esm/metrics/performanceCounters.js +329 -0
- package/dist/esm/metrics/performanceCounters.js.map +1 -0
- package/dist/esm/metrics/quickpulse/export/exporter.d.ts +46 -0
- package/dist/esm/metrics/quickpulse/export/exporter.d.ts.map +1 -0
- package/dist/esm/metrics/quickpulse/export/exporter.js +96 -0
- package/dist/esm/metrics/quickpulse/export/exporter.js.map +1 -0
- package/dist/esm/metrics/quickpulse/export/sender.d.ts +47 -0
- package/dist/esm/metrics/quickpulse/export/sender.d.ts.map +1 -0
- package/dist/esm/metrics/quickpulse/export/sender.js +118 -0
- package/dist/esm/metrics/quickpulse/export/sender.js.map +1 -0
- package/dist/esm/metrics/quickpulse/filtering/collectionConfigurationErrorTracker.d.ts +22 -0
- package/dist/esm/metrics/quickpulse/filtering/collectionConfigurationErrorTracker.d.ts.map +1 -0
- package/dist/esm/metrics/quickpulse/filtering/collectionConfigurationErrorTracker.js +36 -0
- package/dist/esm/metrics/quickpulse/filtering/collectionConfigurationErrorTracker.js.map +1 -0
- package/dist/esm/metrics/quickpulse/filtering/filter.d.ts +12 -0
- package/dist/esm/metrics/quickpulse/filtering/filter.d.ts.map +1 -0
- package/dist/esm/metrics/quickpulse/filtering/filter.js +154 -0
- package/dist/esm/metrics/quickpulse/filtering/filter.js.map +1 -0
- package/dist/esm/metrics/quickpulse/filtering/projection.d.ts +13 -0
- package/dist/esm/metrics/quickpulse/filtering/projection.d.ts.map +1 -0
- package/dist/esm/metrics/quickpulse/filtering/projection.js +116 -0
- package/dist/esm/metrics/quickpulse/filtering/projection.js.map +1 -0
- package/dist/esm/metrics/quickpulse/filtering/quickpulseErrors.d.ts +13 -0
- package/dist/esm/metrics/quickpulse/filtering/quickpulseErrors.d.ts.map +1 -0
- package/dist/esm/metrics/quickpulse/filtering/quickpulseErrors.js +27 -0
- package/dist/esm/metrics/quickpulse/filtering/quickpulseErrors.js.map +1 -0
- package/dist/esm/metrics/quickpulse/filtering/validator.d.ts +11 -0
- package/dist/esm/metrics/quickpulse/filtering/validator.d.ts.map +1 -0
- package/dist/esm/metrics/quickpulse/filtering/validator.js +156 -0
- package/dist/esm/metrics/quickpulse/filtering/validator.js.map +1 -0
- package/dist/esm/metrics/quickpulse/liveMetrics.d.ts +112 -0
- package/dist/esm/metrics/quickpulse/liveMetrics.d.ts.map +1 -0
- package/dist/esm/metrics/quickpulse/liveMetrics.js +709 -0
- package/dist/esm/metrics/quickpulse/liveMetrics.js.map +1 -0
- package/dist/esm/metrics/quickpulse/types.d.ts +110 -0
- package/dist/esm/metrics/quickpulse/types.d.ts.map +1 -0
- package/dist/esm/metrics/quickpulse/types.js +118 -0
- package/dist/esm/metrics/quickpulse/types.js.map +1 -0
- package/dist/esm/metrics/quickpulse/utils.d.ts +43 -0
- package/dist/esm/metrics/quickpulse/utils.d.ts.map +1 -0
- package/dist/esm/metrics/quickpulse/utils.js +535 -0
- package/dist/esm/metrics/quickpulse/utils.js.map +1 -0
- package/dist/esm/metrics/standardMetrics.d.ts +56 -0
- package/dist/esm/metrics/standardMetrics.d.ts.map +1 -0
- package/dist/esm/metrics/standardMetrics.js +134 -0
- package/dist/esm/metrics/standardMetrics.js.map +1 -0
- package/dist/esm/metrics/types.d.ts +48 -0
- package/dist/esm/metrics/types.d.ts.map +1 -0
- package/dist/esm/metrics/types.js +47 -0
- package/dist/esm/metrics/types.js.map +1 -0
- package/dist/esm/metrics/utils.d.ts +35 -0
- package/dist/esm/metrics/utils.d.ts.map +1 -0
- package/dist/esm/metrics/utils.js +251 -0
- package/dist/esm/metrics/utils.js.map +1 -0
- package/dist/esm/otlp/handler.d.ts +100 -0
- package/dist/esm/otlp/handler.d.ts.map +1 -0
- package/dist/esm/otlp/handler.js +138 -0
- package/dist/esm/otlp/handler.js.map +1 -0
- package/dist/esm/otlp/index.d.ts +3 -0
- package/dist/esm/otlp/index.d.ts.map +1 -0
- package/dist/esm/otlp/index.js +4 -0
- package/dist/esm/otlp/index.js.map +1 -0
- package/dist/esm/shared/config.d.ts +57 -0
- package/dist/esm/shared/config.d.ts.map +1 -0
- package/dist/esm/shared/config.js +214 -0
- package/dist/esm/shared/config.js.map +1 -0
- package/dist/esm/shared/envConfig.d.ts +25 -0
- package/dist/esm/shared/envConfig.d.ts.map +1 -0
- package/dist/esm/shared/envConfig.js +125 -0
- package/dist/esm/shared/envConfig.js.map +1 -0
- package/dist/esm/shared/index.d.ts +2 -0
- package/dist/esm/shared/index.d.ts.map +1 -0
- package/dist/esm/shared/index.js +4 -0
- package/dist/esm/shared/index.js.map +1 -0
- package/dist/esm/shared/jsonConfig.d.ts +35 -0
- package/dist/esm/shared/jsonConfig.d.ts.map +1 -0
- package/dist/esm/shared/jsonConfig.js +115 -0
- package/dist/esm/shared/jsonConfig.js.map +1 -0
- package/dist/esm/shared/logging/diagFileConsoleLogger.d.ts +32 -0
- package/dist/esm/shared/logging/diagFileConsoleLogger.d.ts.map +1 -0
- package/dist/esm/shared/logging/diagFileConsoleLogger.js +239 -0
- package/dist/esm/shared/logging/diagFileConsoleLogger.js.map +1 -0
- package/dist/esm/shared/logging/index.d.ts +2 -0
- package/dist/esm/shared/logging/index.d.ts.map +1 -0
- package/dist/esm/shared/logging/index.js +4 -0
- package/dist/esm/shared/logging/index.js.map +1 -0
- package/dist/esm/shared/logging/logger.d.ts +18 -0
- package/dist/esm/shared/logging/logger.d.ts.map +1 -0
- package/dist/esm/shared/logging/logger.js +128 -0
- package/dist/esm/shared/logging/logger.js.map +1 -0
- package/dist/esm/shared/module-cjs.cjs +34 -0
- package/dist/esm/shared/module-cjs.cjs.map +1 -0
- package/dist/esm/shared/module-cjs.d.cts +12 -0
- package/dist/esm/shared/module-cjs.d.cts.map +1 -0
- package/dist/esm/shared/module.d.ts +13 -0
- package/dist/esm/shared/module.d.ts.map +1 -0
- package/dist/esm/shared/module.js +26 -0
- package/dist/esm/shared/module.js.map +1 -0
- package/dist/esm/traces/handler.d.ts +37 -0
- package/dist/esm/traces/handler.d.ts.map +1 -0
- package/dist/esm/traces/handler.js +121 -0
- package/dist/esm/traces/handler.js.map +1 -0
- package/dist/esm/traces/index.d.ts +2 -0
- package/dist/esm/traces/index.d.ts.map +1 -0
- package/dist/esm/traces/index.js +4 -0
- package/dist/esm/traces/index.js.map +1 -0
- package/dist/esm/traces/sampler.d.ts +42 -0
- package/dist/esm/traces/sampler.d.ts.map +1 -0
- package/dist/esm/traces/sampler.js +84 -0
- package/dist/esm/traces/sampler.js.map +1 -0
- package/dist/esm/traces/spanProcessor.d.ts +16 -0
- package/dist/esm/traces/spanProcessor.d.ts.map +1 -0
- package/dist/esm/traces/spanProcessor.js +31 -0
- package/dist/esm/traces/spanProcessor.js.map +1 -0
- package/dist/esm/types.d.ts +259 -0
- package/dist/esm/types.d.ts.map +1 -0
- package/dist/esm/types.js +140 -0
- package/dist/esm/types.js.map +1 -0
- package/dist/esm/utils/common.d.ts +37 -0
- package/dist/esm/utils/common.d.ts.map +1 -0
- package/dist/esm/utils/common.js +134 -0
- package/dist/esm/utils/common.js.map +1 -0
- package/dist/esm/utils/connectionStringParser.d.ts +13 -0
- package/dist/esm/utils/connectionStringParser.d.ts.map +1 -0
- package/dist/esm/utils/connectionStringParser.js +78 -0
- package/dist/esm/utils/connectionStringParser.js.map +1 -0
- package/dist/esm/utils/fileSystem.d.ts +27 -0
- package/dist/esm/utils/fileSystem.d.ts.map +1 -0
- package/dist/esm/utils/fileSystem.js +76 -0
- package/dist/esm/utils/fileSystem.js.map +1 -0
- package/dist/esm/utils/index.d.ts +3 -0
- package/dist/esm/utils/index.d.ts.map +1 -0
- package/dist/esm/utils/index.js +5 -0
- package/dist/esm/utils/index.js.map +1 -0
- package/dist/esm/utils/logUtils.d.ts +7 -0
- package/dist/esm/utils/logUtils.d.ts.map +1 -0
- package/dist/esm/utils/logUtils.js +32 -0
- package/dist/esm/utils/logUtils.js.map +1 -0
- package/dist/esm/utils/opentelemetryInstrumentationPatcher.d.ts +6 -0
- package/dist/esm/utils/opentelemetryInstrumentationPatcher.d.ts.map +1 -0
- package/dist/esm/utils/opentelemetryInstrumentationPatcher.js +41 -0
- package/dist/esm/utils/opentelemetryInstrumentationPatcher.js.map +1 -0
- package/dist/esm/utils/statsbeat.d.ts +15 -0
- package/dist/esm/utils/statsbeat.d.ts.map +1 -0
- package/dist/esm/utils/statsbeat.js +124 -0
- package/dist/esm/utils/statsbeat.js.map +1 -0
- package/dist/esm/utils/types.d.ts +14 -0
- package/dist/esm/utils/types.d.ts.map +1 -0
- package/dist/esm/utils/types.js +4 -0
- package/dist/esm/utils/types.js.map +1 -0
- package/package.json +120 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) Microsoft Corporation.
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE
|
package/README.md
ADDED
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
# @microsoft/opentelemetry
|
|
2
|
+
|
|
3
|
+
Microsoft OpenTelemetry distribution for Node.js — one import, one call, full observability across Azure Monitor, OTLP-compatible backends, and A365.
|
|
4
|
+
|
|
5
|
+
## Getting Started
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install @microsoft/opentelemetry
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
import { useMicrosoftOpenTelemetry } from "@microsoft/opentelemetry";
|
|
13
|
+
|
|
14
|
+
useMicrosoftOpenTelemetry({
|
|
15
|
+
azureMonitor: {
|
|
16
|
+
azureMonitorExporterOptions: {
|
|
17
|
+
connectionString: process.env.APPLICATIONINSIGHTS_CONNECTION_STRING,
|
|
18
|
+
},
|
|
19
|
+
},
|
|
20
|
+
});
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
That's it — traces, metrics, and logs are collected automatically with built-in instrumentations for HTTP, databases, and more.
|
|
24
|
+
|
|
25
|
+
## Configuration
|
|
26
|
+
|
|
27
|
+
### `MicrosoftOpenTelemetryOptions`
|
|
28
|
+
|
|
29
|
+
| Option | Type | Default | Description |
|
|
30
|
+
|---|---|---|---|
|
|
31
|
+
| `resource` | `Resource` | auto-detected | OpenTelemetry Resource (service name, version, etc.) |
|
|
32
|
+
| `samplingRatio` | `number` | `1.0` | Ratio of telemetry items to transmit (0.0–1.0) |
|
|
33
|
+
| `tracesPerSecond` | `number` | `5` | Max traces per second. Set to `0` to use `samplingRatio` instead |
|
|
34
|
+
| `instrumentationOptions` | `InstrumentationOptions` | all enabled | Toggle built-in instrumentations (HTTP, MongoDB, MySQL, PostgreSQL, Redis, Azure SDK, Azure Functions, Winston, Bunyan, OpenAI Agents, LangChain) |
|
|
35
|
+
| `spanProcessors` | `SpanProcessor[]` | — | Additional span processors |
|
|
36
|
+
| `logRecordProcessors` | `LogRecordProcessor[]` | — | Additional log record processors |
|
|
37
|
+
| `metricReaders` | `MetricReader[]` | — | Additional metric readers |
|
|
38
|
+
| `views` | `ViewOptions[]` | — | Metric views |
|
|
39
|
+
| `azureMonitor` | `AzureMonitorOpenTelemetryOptions` | — | Azure Monitor backend config (see below) |
|
|
40
|
+
| `a365` | `A365Options` | — | A365 observability config |
|
|
41
|
+
|
|
42
|
+
### `azureMonitor` options
|
|
43
|
+
|
|
44
|
+
| Option | Type | Default | Description |
|
|
45
|
+
|---|---|---|---|
|
|
46
|
+
| `azureMonitorExporterOptions` | `AzureMonitorExporterOptions` | — | Exporter config including `connectionString`, `storageDirectory`, `disableOfflineStorage` |
|
|
47
|
+
| `enableLiveMetrics` | `boolean` | `true` | Enable Live Metrics streaming |
|
|
48
|
+
| `enableStandardMetrics` | `boolean` | `true` | Enable standard metrics collection |
|
|
49
|
+
| `enableTraceBasedSamplingForLogs` | `boolean` | `false` | Enable log sampling based on trace |
|
|
50
|
+
| `enablePerformanceCounters` | `boolean` | `true` | Enable performance counter collection |
|
|
51
|
+
| `browserSdkLoaderOptions` | `BrowserSdkLoaderOptions` | — | Application Insights browser SDK loader config |
|
|
52
|
+
|
|
53
|
+
### OTLP via environment variables
|
|
54
|
+
|
|
55
|
+
Set `OTEL_EXPORTER_OTLP_ENDPOINT` and OTLP export is enabled automatically — no code changes needed. Signal-specific variables (`OTEL_EXPORTER_OTLP_TRACES_ENDPOINT`, etc.) override the base endpoint.
|
|
56
|
+
|
|
57
|
+
See the [OpenTelemetry OTLP Exporter specification](https://opentelemetry.io/docs/specs/otel/protocol/exporter/) for the full list.
|
|
58
|
+
|
|
59
|
+
### Example
|
|
60
|
+
|
|
61
|
+
```typescript
|
|
62
|
+
import { useMicrosoftOpenTelemetry, shutdownMicrosoftOpenTelemetry } from "@microsoft/opentelemetry";
|
|
63
|
+
import { resourceFromAttributes } from "@opentelemetry/resources";
|
|
64
|
+
|
|
65
|
+
useMicrosoftOpenTelemetry({
|
|
66
|
+
resource: resourceFromAttributes({ "service.name": "my-app" }),
|
|
67
|
+
samplingRatio: 0.5,
|
|
68
|
+
azureMonitor: {
|
|
69
|
+
azureMonitorExporterOptions: {
|
|
70
|
+
connectionString: process.env.APPLICATIONINSIGHTS_CONNECTION_STRING,
|
|
71
|
+
},
|
|
72
|
+
enableLiveMetrics: true,
|
|
73
|
+
},
|
|
74
|
+
});
|
|
75
|
+
|
|
76
|
+
// On shutdown
|
|
77
|
+
await shutdownMicrosoftOpenTelemetry();
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
## Samples
|
|
81
|
+
|
|
82
|
+
See the [samples/](./samples/) directory for working TypeScript examples covering connection setup, custom metrics, custom traces, sampling, OTLP dual-export, and more.
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
## Contributing
|
|
86
|
+
|
|
87
|
+
See [CONTRIBUTING.md](./CONTRIBUTING.md).
|
|
88
|
+
|
|
89
|
+
## License
|
|
90
|
+
|
|
91
|
+
[MIT](LICENSE)
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { A365Options, ClusterCategory, A365BaggageOptions, A365HostingOptions } from "./A365ConfigurationOptions.js";
|
|
2
|
+
/**
|
|
3
|
+
* Environment variable names for A365 configuration.
|
|
4
|
+
* These follow the MICROSOFT_OTEL_A365_* convention defined in PLANNING.md.
|
|
5
|
+
*/
|
|
6
|
+
export declare const A365_ENV_VARS: {
|
|
7
|
+
readonly EXPORTER_ENABLED: "MICROSOFT_OTEL_A365_EXPORTER_ENABLED";
|
|
8
|
+
readonly PER_REQUEST_EXPORT: "MICROSOFT_OTEL_A365_PER_REQUEST_EXPORT";
|
|
9
|
+
readonly AUTH_SCOPES: "MICROSOFT_OTEL_A365_AUTH_SCOPES";
|
|
10
|
+
readonly DOMAIN: "MICROSOFT_OTEL_A365_DOMAIN";
|
|
11
|
+
readonly CLUSTER_CATEGORY: "MICROSOFT_OTEL_A365_CLUSTER_CATEGORY";
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* Resolved A365 configuration.
|
|
15
|
+
*
|
|
16
|
+
* Merges values from four sources (lowest to highest precedence):
|
|
17
|
+
* 1. Defaults
|
|
18
|
+
* 2. Programmatic options (`A365Options`)
|
|
19
|
+
* 3. JSON config (`applicationinsights.json` → `a365` key)
|
|
20
|
+
* 4. Environment variables (`MICROSOFT_OTEL_A365_*`)
|
|
21
|
+
*/
|
|
22
|
+
export declare class A365Configuration {
|
|
23
|
+
/** Whether A365 observability is enabled. */
|
|
24
|
+
readonly enabled: boolean;
|
|
25
|
+
/** Token resolver callback for A365 service authentication. */
|
|
26
|
+
readonly tokenResolver?: (agentId: string, tenantId: string) => string | Promise<string>;
|
|
27
|
+
/** Cluster category. */
|
|
28
|
+
readonly clusterCategory: ClusterCategory;
|
|
29
|
+
/** Domain override for the A365 observability service. */
|
|
30
|
+
readonly domainOverride?: string;
|
|
31
|
+
/** OAuth scopes for A365 service authentication. */
|
|
32
|
+
readonly authScopes: string[];
|
|
33
|
+
/** Whether to use per-request export mode. */
|
|
34
|
+
readonly perRequestExport: boolean;
|
|
35
|
+
/** Baggage options. */
|
|
36
|
+
readonly baggage: Required<A365BaggageOptions>;
|
|
37
|
+
/** Hosting options. */
|
|
38
|
+
readonly hosting: Required<A365HostingOptions>;
|
|
39
|
+
constructor(options?: A365Options);
|
|
40
|
+
private _warnIfOptionsSetButDisabled;
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=A365Configuration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"A365Configuration.d.ts","sourceRoot":"","sources":["../../../../src/_a365/configuration/A365Configuration.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,WAAW,EACX,eAAe,EACf,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,+BAA+B,CAAC;AAKvC;;;GAGG;AACH,eAAO,MAAM,aAAa;;;;;;CAMhB,CAAC;AAmBX;;;;;;;;GAQG;AACH,qBAAa,iBAAiB;IAC5B,6CAA6C;IAC7C,SAAgB,OAAO,EAAE,OAAO,CAAC;IAEjC,+DAA+D;IAC/D,SAAgB,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEhG,wBAAwB;IACxB,SAAgB,eAAe,EAAE,eAAe,CAAC;IAEjD,0DAA0D;IAC1D,SAAgB,cAAc,CAAC,EAAE,MAAM,CAAC;IAExC,oDAAoD;IACpD,SAAgB,UAAU,EAAE,MAAM,EAAE,CAAC;IAErC,8CAA8C;IAC9C,SAAgB,gBAAgB,EAAE,OAAO,CAAC;IAE1C,uBAAuB;IACvB,SAAgB,OAAO,EAAE,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAEtD,uBAAuB;IACvB,SAAgB,OAAO,EAAE,QAAQ,CAAC,kBAAkB,CAAC,CAAC;gBAE1C,OAAO,CAAC,EAAE,WAAW;IAkFjC,OAAO,CAAC,4BAA4B;CAgBrC"}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Copyright (c) Microsoft Corporation.
|
|
3
|
+
// Licensed under the MIT License.
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.A365Configuration = exports.A365_ENV_VARS = void 0;
|
|
6
|
+
const utils_js_1 = require("../utils/utils.js");
|
|
7
|
+
const index_js_1 = require("../../shared/logging/index.js");
|
|
8
|
+
const jsonConfig_js_1 = require("../../shared/jsonConfig.js");
|
|
9
|
+
/**
|
|
10
|
+
* Environment variable names for A365 configuration.
|
|
11
|
+
* These follow the MICROSOFT_OTEL_A365_* convention defined in PLANNING.md.
|
|
12
|
+
*/
|
|
13
|
+
exports.A365_ENV_VARS = {
|
|
14
|
+
EXPORTER_ENABLED: "MICROSOFT_OTEL_A365_EXPORTER_ENABLED",
|
|
15
|
+
PER_REQUEST_EXPORT: "MICROSOFT_OTEL_A365_PER_REQUEST_EXPORT",
|
|
16
|
+
AUTH_SCOPES: "MICROSOFT_OTEL_A365_AUTH_SCOPES",
|
|
17
|
+
DOMAIN: "MICROSOFT_OTEL_A365_DOMAIN",
|
|
18
|
+
CLUSTER_CATEGORY: "MICROSOFT_OTEL_A365_CLUSTER_CATEGORY",
|
|
19
|
+
};
|
|
20
|
+
const DEFAULT_AUTH_SCOPE = "https://api.powerplatform.com/.default";
|
|
21
|
+
const VALID_CLUSTER_CATEGORIES = new Set([
|
|
22
|
+
"local",
|
|
23
|
+
"dev",
|
|
24
|
+
"test",
|
|
25
|
+
"preprod",
|
|
26
|
+
"firstrelease",
|
|
27
|
+
"prod",
|
|
28
|
+
"gov",
|
|
29
|
+
"high",
|
|
30
|
+
"dod",
|
|
31
|
+
"mooncake",
|
|
32
|
+
"ex",
|
|
33
|
+
"rx",
|
|
34
|
+
]);
|
|
35
|
+
/**
|
|
36
|
+
* Resolved A365 configuration.
|
|
37
|
+
*
|
|
38
|
+
* Merges values from four sources (lowest to highest precedence):
|
|
39
|
+
* 1. Defaults
|
|
40
|
+
* 2. Programmatic options (`A365Options`)
|
|
41
|
+
* 3. JSON config (`applicationinsights.json` → `a365` key)
|
|
42
|
+
* 4. Environment variables (`MICROSOFT_OTEL_A365_*`)
|
|
43
|
+
*/
|
|
44
|
+
class A365Configuration {
|
|
45
|
+
/** Whether A365 observability is enabled. */
|
|
46
|
+
enabled;
|
|
47
|
+
/** Token resolver callback for A365 service authentication. */
|
|
48
|
+
tokenResolver;
|
|
49
|
+
/** Cluster category. */
|
|
50
|
+
clusterCategory;
|
|
51
|
+
/** Domain override for the A365 observability service. */
|
|
52
|
+
domainOverride;
|
|
53
|
+
/** OAuth scopes for A365 service authentication. */
|
|
54
|
+
authScopes;
|
|
55
|
+
/** Whether to use per-request export mode. */
|
|
56
|
+
perRequestExport;
|
|
57
|
+
/** Baggage options. */
|
|
58
|
+
baggage;
|
|
59
|
+
/** Hosting options. */
|
|
60
|
+
hosting;
|
|
61
|
+
constructor(options) {
|
|
62
|
+
// 1. Set defaults
|
|
63
|
+
let enabled = false;
|
|
64
|
+
let clusterCategory = "prod";
|
|
65
|
+
let domainOverride = options?.domainOverride;
|
|
66
|
+
let authScopes = options?.authScopes ?? [DEFAULT_AUTH_SCOPE];
|
|
67
|
+
let perRequestExport = false;
|
|
68
|
+
// 2. Apply programmatic options
|
|
69
|
+
if (options) {
|
|
70
|
+
enabled = options.enabled ?? enabled;
|
|
71
|
+
clusterCategory = options.clusterCategory ?? clusterCategory;
|
|
72
|
+
perRequestExport = options.perRequestExport ?? perRequestExport;
|
|
73
|
+
}
|
|
74
|
+
// 3. Apply JSON config (takes precedence over programmatic options)
|
|
75
|
+
const jsonA365 = jsonConfig_js_1.JsonConfig.getInstance().a365;
|
|
76
|
+
if (jsonA365) {
|
|
77
|
+
enabled = jsonA365.enabled ?? enabled;
|
|
78
|
+
clusterCategory = jsonA365.clusterCategory ?? clusterCategory;
|
|
79
|
+
domainOverride = jsonA365.domainOverride ?? domainOverride;
|
|
80
|
+
perRequestExport = jsonA365.perRequestExport ?? perRequestExport;
|
|
81
|
+
if (jsonA365.authScopes) {
|
|
82
|
+
authScopes = jsonA365.authScopes;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
// 4. Apply environment variable overrides (highest precedence)
|
|
86
|
+
if ((0, utils_js_1.getEnv)(exports.A365_ENV_VARS.EXPORTER_ENABLED) === "true") {
|
|
87
|
+
enabled = true;
|
|
88
|
+
}
|
|
89
|
+
else if ((0, utils_js_1.getEnv)(exports.A365_ENV_VARS.EXPORTER_ENABLED) === "false") {
|
|
90
|
+
enabled = false;
|
|
91
|
+
}
|
|
92
|
+
if ((0, utils_js_1.getEnv)(exports.A365_ENV_VARS.PER_REQUEST_EXPORT) === "true") {
|
|
93
|
+
perRequestExport = true;
|
|
94
|
+
}
|
|
95
|
+
else if ((0, utils_js_1.getEnv)(exports.A365_ENV_VARS.PER_REQUEST_EXPORT) === "false") {
|
|
96
|
+
perRequestExport = false;
|
|
97
|
+
}
|
|
98
|
+
const envScopes = (0, utils_js_1.getEnv)(exports.A365_ENV_VARS.AUTH_SCOPES);
|
|
99
|
+
if (envScopes) {
|
|
100
|
+
authScopes = envScopes
|
|
101
|
+
.split(",")
|
|
102
|
+
.map((s) => s.trim())
|
|
103
|
+
.filter(Boolean);
|
|
104
|
+
}
|
|
105
|
+
const envDomain = (0, utils_js_1.getEnv)(exports.A365_ENV_VARS.DOMAIN);
|
|
106
|
+
if (envDomain) {
|
|
107
|
+
domainOverride = envDomain;
|
|
108
|
+
}
|
|
109
|
+
const envCluster = (0, utils_js_1.getEnv)(exports.A365_ENV_VARS.CLUSTER_CATEGORY);
|
|
110
|
+
if (envCluster && VALID_CLUSTER_CATEGORIES.has(envCluster)) {
|
|
111
|
+
clusterCategory = envCluster;
|
|
112
|
+
}
|
|
113
|
+
// Assign resolved values
|
|
114
|
+
this.enabled = enabled;
|
|
115
|
+
this.tokenResolver = options?.tokenResolver;
|
|
116
|
+
this.clusterCategory = clusterCategory;
|
|
117
|
+
this.domainOverride = domainOverride;
|
|
118
|
+
this.authScopes = authScopes;
|
|
119
|
+
this.perRequestExport = perRequestExport;
|
|
120
|
+
this.baggage = {
|
|
121
|
+
propagationEnabled: jsonA365?.baggage?.propagationEnabled ?? options?.baggage?.propagationEnabled ?? true,
|
|
122
|
+
enrichSpans: jsonA365?.baggage?.enrichSpans ?? options?.baggage?.enrichSpans ?? true,
|
|
123
|
+
};
|
|
124
|
+
this.hosting = {
|
|
125
|
+
enabled: jsonA365?.hosting?.enabled ?? options?.hosting?.enabled ?? false,
|
|
126
|
+
};
|
|
127
|
+
// Warn when A365-scoped options are set but A365 is not enabled
|
|
128
|
+
if (!this.enabled) {
|
|
129
|
+
this._warnIfOptionsSetButDisabled(options);
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
_warnIfOptionsSetButDisabled(options) {
|
|
133
|
+
if (!options)
|
|
134
|
+
return;
|
|
135
|
+
const hasNonTrivialOptions = options.tokenResolver !== undefined ||
|
|
136
|
+
options.domainOverride !== undefined ||
|
|
137
|
+
options.perRequestExport !== undefined ||
|
|
138
|
+
options.hosting?.enabled === true;
|
|
139
|
+
if (hasNonTrivialOptions) {
|
|
140
|
+
index_js_1.Logger.getInstance().warn("A365 configuration options are set but A365 is not enabled. " +
|
|
141
|
+
"Set `a365.enabled: true` or `MICROSOFT_OTEL_A365_EXPORTER_ENABLED=true` to enable.");
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
exports.A365Configuration = A365Configuration;
|
|
146
|
+
//# sourceMappingURL=A365Configuration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"A365Configuration.js","sourceRoot":"","sources":["../../../../src/_a365/configuration/A365Configuration.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cluster categories for A365 service endpoint resolution.
|
|
3
|
+
* Mirrors the ClusterCategory enum from Agent365-nodejs.
|
|
4
|
+
*/
|
|
5
|
+
export type ClusterCategory = "local" | "dev" | "test" | "preprod" | "firstrelease" | "prod" | "gov" | "high" | "dod" | "mooncake" | "ex" | "rx";
|
|
6
|
+
/**
|
|
7
|
+
* A365 observability configuration options.
|
|
8
|
+
*
|
|
9
|
+
* These are the public-facing options passed via the `a365` scope
|
|
10
|
+
* of {@link MicrosoftOpenTelemetryOptions}.
|
|
11
|
+
*/
|
|
12
|
+
export interface A365Options {
|
|
13
|
+
/** Enable A365 observability. When false, no A365 components are created. */
|
|
14
|
+
enabled?: boolean;
|
|
15
|
+
/**
|
|
16
|
+
* Token resolver for authenticating with the A365 observability service.
|
|
17
|
+
* Called with (agentId, tenantId) extracted from span attributes.
|
|
18
|
+
* Must return a bearer token string or a promise resolving to one.
|
|
19
|
+
*/
|
|
20
|
+
tokenResolver?: (agentId: string, tenantId: string) => string | Promise<string>;
|
|
21
|
+
/** Cluster category for the A365 service endpoint. */
|
|
22
|
+
clusterCategory?: ClusterCategory;
|
|
23
|
+
/** Override the A365 observability service domain. */
|
|
24
|
+
domainOverride?: string;
|
|
25
|
+
/** OAuth scopes for A365 service authentication. */
|
|
26
|
+
authScopes?: string[];
|
|
27
|
+
/**
|
|
28
|
+
* Use per-request export mode (buffer spans per trace, export on root completion).
|
|
29
|
+
* When false, uses standard batch export.
|
|
30
|
+
* @default false
|
|
31
|
+
*/
|
|
32
|
+
perRequestExport?: boolean;
|
|
33
|
+
/** Baggage propagation and span enrichment options. */
|
|
34
|
+
baggage?: A365BaggageOptions;
|
|
35
|
+
/** Hosting middleware options (requires @microsoft/agents-hosting). */
|
|
36
|
+
hosting?: A365HostingOptions;
|
|
37
|
+
}
|
|
38
|
+
/** Baggage propagation and span enrichment options. */
|
|
39
|
+
export interface A365BaggageOptions {
|
|
40
|
+
/** Enable baggage propagation from request headers to span context. */
|
|
41
|
+
propagationEnabled?: boolean;
|
|
42
|
+
/** Copy baggage items to span attributes. */
|
|
43
|
+
enrichSpans?: boolean;
|
|
44
|
+
}
|
|
45
|
+
/** Hosting middleware options. */
|
|
46
|
+
export interface A365HostingOptions {
|
|
47
|
+
/**
|
|
48
|
+
* Enable hosting middleware integration (baggage middleware, output logging, etc.).
|
|
49
|
+
* Requires `@microsoft/agents-hosting` as an optional peer dependency.
|
|
50
|
+
*/
|
|
51
|
+
enabled?: boolean;
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=A365ConfigurationOptions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"A365ConfigurationOptions.d.ts","sourceRoot":"","sources":["../../../../src/_a365/configuration/A365ConfigurationOptions.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,MAAM,MAAM,eAAe,GACvB,OAAO,GACP,KAAK,GACL,MAAM,GACN,SAAS,GACT,cAAc,GACd,MAAM,GACN,KAAK,GACL,MAAM,GACN,KAAK,GACL,UAAU,GACV,IAAI,GACJ,IAAI,CAAC;AAET;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B,6EAA6E;IAC7E,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;;OAIG;IACH,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEhF,sDAAsD;IACtD,eAAe,CAAC,EAAE,eAAe,CAAC;IAElC,sDAAsD;IACtD,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,oDAAoD;IACpD,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IAEtB;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAE3B,uDAAuD;IACvD,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAE7B,uEAAuE;IACvE,OAAO,CAAC,EAAE,kBAAkB,CAAC;CAC9B;AAED,uDAAuD;AACvD,MAAM,WAAW,kBAAkB;IACjC,uEAAuE;IACvE,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,6CAA6C;IAC7C,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,kCAAkC;AAClC,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"A365ConfigurationOptions.js","sourceRoot":"","sources":["../../../../src/_a365/configuration/A365ConfigurationOptions.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/_a365/configuration/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC1E,YAAY,EACV,WAAW,EACX,eAAe,EACf,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,+BAA+B,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Copyright (c) Microsoft Corporation.
|
|
3
|
+
// Licensed under the MIT License.
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.A365_ENV_VARS = exports.A365Configuration = void 0;
|
|
6
|
+
var A365Configuration_js_1 = require("./A365Configuration.js");
|
|
7
|
+
Object.defineProperty(exports, "A365Configuration", { enumerable: true, get: function () { return A365Configuration_js_1.A365Configuration; } });
|
|
8
|
+
Object.defineProperty(exports, "A365_ENV_VARS", { enumerable: true, get: function () { return A365Configuration_js_1.A365_ENV_VARS; } });
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/_a365/configuration/index.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,+DAA0E;AAAjE,yHAAA,iBAAiB,OAAA;AAAE,qHAAA,aAAa,OAAA"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { ExportResult } from "@opentelemetry/core";
|
|
2
|
+
import type { ReadableSpan, SpanExporter } from "@opentelemetry/sdk-trace-base";
|
|
3
|
+
import type { Agent365ExporterOptions } from "./Agent365ExporterOptions.js";
|
|
4
|
+
/**
|
|
5
|
+
* Agent365 span exporter.
|
|
6
|
+
*
|
|
7
|
+
* Implements `SpanExporter` from `@opentelemetry/sdk-trace-base`.
|
|
8
|
+
* Partitions spans by (tenantId, agentId), builds OTLP-like JSON payloads,
|
|
9
|
+
* and POSTs them to the Agent365 observability service with Bearer auth.
|
|
10
|
+
*/
|
|
11
|
+
export declare class Agent365Exporter implements SpanExporter {
|
|
12
|
+
private closed;
|
|
13
|
+
private readonly options;
|
|
14
|
+
private readonly logger;
|
|
15
|
+
constructor(options?: Agent365ExporterOptions);
|
|
16
|
+
export(spans: ReadableSpan[], resultCallback: (result: ExportResult) => void): Promise<void>;
|
|
17
|
+
private exportGroup;
|
|
18
|
+
private resolveToken;
|
|
19
|
+
private postWithRetries;
|
|
20
|
+
private buildExportRequest;
|
|
21
|
+
private mapSpan;
|
|
22
|
+
shutdown(): Promise<void>;
|
|
23
|
+
forceFlush(): Promise<void>;
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=Agent365Exporter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Agent365Exporter.d.ts","sourceRoot":"","sources":["../../../../src/_a365/exporter/Agent365Exporter.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAEhF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AA+D5E;;;;;;GAMG;AACH,qBAAa,gBAAiB,YAAW,YAAY;IACnD,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA0B;IAClD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAwB;gBAEnC,OAAO,CAAC,EAAE,uBAAuB;IAIvC,MAAM,CACV,KAAK,EAAE,YAAY,EAAE,EACrB,cAAc,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,GAC7C,OAAO,CAAC,IAAI,CAAC;YAoCF,WAAW;YAmCX,YAAY;YAMZ,eAAe;IA0D7B,OAAO,CAAC,kBAAkB;IAwC1B,OAAO,CAAC,OAAO;IAwDT,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAIzB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;CAGlC"}
|
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Copyright (c) Microsoft Corporation.
|
|
3
|
+
// Licensed under the MIT License.
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.Agent365Exporter = void 0;
|
|
6
|
+
const core_1 = require("@opentelemetry/core");
|
|
7
|
+
const Agent365ExporterOptions_js_1 = require("./Agent365ExporterOptions.js");
|
|
8
|
+
const utils_js_1 = require("./utils.js");
|
|
9
|
+
const index_js_1 = require("../../shared/logging/index.js");
|
|
10
|
+
const DEFAULT_MAX_RETRIES = 3;
|
|
11
|
+
/**
|
|
12
|
+
* Agent365 span exporter.
|
|
13
|
+
*
|
|
14
|
+
* Implements `SpanExporter` from `@opentelemetry/sdk-trace-base`.
|
|
15
|
+
* Partitions spans by (tenantId, agentId), builds OTLP-like JSON payloads,
|
|
16
|
+
* and POSTs them to the Agent365 observability service with Bearer auth.
|
|
17
|
+
*/
|
|
18
|
+
class Agent365Exporter {
|
|
19
|
+
closed = false;
|
|
20
|
+
options;
|
|
21
|
+
logger = index_js_1.Logger.getInstance();
|
|
22
|
+
constructor(options) {
|
|
23
|
+
this.options = new Agent365ExporterOptions_js_1.ResolvedExporterOptions(options);
|
|
24
|
+
}
|
|
25
|
+
async export(spans, resultCallback) {
|
|
26
|
+
if (this.closed) {
|
|
27
|
+
resultCallback({ code: core_1.ExportResultCode.FAILED });
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
try {
|
|
31
|
+
this.logger.info(`[Agent365Exporter] Exporting ${spans.length} spans`);
|
|
32
|
+
const groups = (0, utils_js_1.partitionByIdentity)(spans);
|
|
33
|
+
if (groups.size === 0) {
|
|
34
|
+
resultCallback({ code: core_1.ExportResultCode.SUCCESS });
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
let anyFailure = false;
|
|
38
|
+
const promises = [];
|
|
39
|
+
for (const [identityKey, groupSpans] of groups) {
|
|
40
|
+
const promise = this.exportGroup(identityKey, groupSpans).catch((err) => {
|
|
41
|
+
anyFailure = true;
|
|
42
|
+
this.logger.error(`[Agent365Exporter] Error exporting group ${identityKey}:`, err);
|
|
43
|
+
});
|
|
44
|
+
promises.push(promise);
|
|
45
|
+
}
|
|
46
|
+
await Promise.all(promises);
|
|
47
|
+
resultCallback({
|
|
48
|
+
code: anyFailure ? core_1.ExportResultCode.FAILED : core_1.ExportResultCode.SUCCESS,
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
catch (err) {
|
|
52
|
+
this.logger.error("[Agent365Exporter] Export failed:", err);
|
|
53
|
+
resultCallback({ code: core_1.ExportResultCode.FAILED });
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
async exportGroup(identityKey, spans) {
|
|
57
|
+
const { tenantId, agentId } = (0, utils_js_1.parseIdentityKey)(identityKey);
|
|
58
|
+
const payload = this.buildExportRequest(spans);
|
|
59
|
+
const body = JSON.stringify(payload);
|
|
60
|
+
const endpointPath = this.options.useS2SEndpoint
|
|
61
|
+
? `/observabilityService/tenants/${encodeURIComponent(tenantId)}/agents/${encodeURIComponent(agentId)}/traces`
|
|
62
|
+
: `/observability/tenants/${encodeURIComponent(tenantId)}/agents/${encodeURIComponent(agentId)}/traces`;
|
|
63
|
+
const baseUrl = this.options.domainOverride ?? (0, utils_js_1.resolveAgent365Endpoint)(this.options.clusterCategory);
|
|
64
|
+
const url = `${baseUrl}${endpointPath}?api-version=1`;
|
|
65
|
+
const headers = {
|
|
66
|
+
"content-type": "application/json",
|
|
67
|
+
"x-ms-tenant-id": tenantId,
|
|
68
|
+
};
|
|
69
|
+
// Resolve token
|
|
70
|
+
const token = await this.resolveToken(agentId, tenantId);
|
|
71
|
+
if (!token) {
|
|
72
|
+
this.logger.warn(`[Agent365Exporter] Skipping export for ${tenantId}/${agentId}: no token available`);
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
headers["authorization"] = `Bearer ${token}`;
|
|
76
|
+
const { ok } = await this.postWithRetries(url, body, headers);
|
|
77
|
+
if (!ok) {
|
|
78
|
+
throw new Error(`Failed to export spans for ${tenantId}/${agentId}`);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
async resolveToken(agentId, tenantId) {
|
|
82
|
+
if (!this.options.tokenResolver)
|
|
83
|
+
return null;
|
|
84
|
+
const result = this.options.tokenResolver(agentId, tenantId);
|
|
85
|
+
return result instanceof Promise ? result : result;
|
|
86
|
+
}
|
|
87
|
+
async postWithRetries(url, body, headers) {
|
|
88
|
+
let lastCorrelationId = "unknown";
|
|
89
|
+
for (let attempt = 0; attempt <= DEFAULT_MAX_RETRIES; attempt++) {
|
|
90
|
+
try {
|
|
91
|
+
const response = await fetch(url, {
|
|
92
|
+
method: "POST",
|
|
93
|
+
headers,
|
|
94
|
+
body,
|
|
95
|
+
signal: AbortSignal.timeout(this.options.httpRequestTimeoutMilliseconds),
|
|
96
|
+
});
|
|
97
|
+
const correlationId = response.headers.get("x-ms-correlation-id") ??
|
|
98
|
+
response.headers.get("x-correlation-id") ??
|
|
99
|
+
"unknown";
|
|
100
|
+
lastCorrelationId = correlationId;
|
|
101
|
+
if (response.status >= 200 && response.status < 300) {
|
|
102
|
+
return { ok: true, correlationId };
|
|
103
|
+
}
|
|
104
|
+
// Retry on transient errors
|
|
105
|
+
if ([408, 429].includes(response.status) ||
|
|
106
|
+
(response.status >= 500 && response.status < 600)) {
|
|
107
|
+
if (attempt < DEFAULT_MAX_RETRIES) {
|
|
108
|
+
const sleepMs = 200 * (attempt + 1) + Math.floor(Math.random() * 100);
|
|
109
|
+
this.logger.warn(`[Agent365Exporter] Transient error ${response.status}, retrying after ${sleepMs}ms`);
|
|
110
|
+
await sleep(sleepMs);
|
|
111
|
+
continue;
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
this.logger.error(`[Agent365Exporter] Failed with status ${response.status}, correlation: ${correlationId}`);
|
|
115
|
+
return { ok: false, correlationId };
|
|
116
|
+
}
|
|
117
|
+
catch (error) {
|
|
118
|
+
this.logger.error("[Agent365Exporter] Request error:", error);
|
|
119
|
+
if (attempt < DEFAULT_MAX_RETRIES) {
|
|
120
|
+
await sleep(200 * (attempt + 1));
|
|
121
|
+
continue;
|
|
122
|
+
}
|
|
123
|
+
return { ok: false, correlationId: lastCorrelationId };
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
return { ok: false, correlationId: lastCorrelationId };
|
|
127
|
+
}
|
|
128
|
+
buildExportRequest(spans) {
|
|
129
|
+
const scopeMap = new Map();
|
|
130
|
+
for (const sp of spans) {
|
|
131
|
+
const scope = sp.instrumentationScope;
|
|
132
|
+
const scopeKey = `${scope?.name ?? "unknown"}:${scope?.version ?? ""}`;
|
|
133
|
+
let existing = scopeMap.get(scopeKey);
|
|
134
|
+
if (!existing) {
|
|
135
|
+
existing = [];
|
|
136
|
+
scopeMap.set(scopeKey, existing);
|
|
137
|
+
}
|
|
138
|
+
existing.push((0, utils_js_1.truncateSpan)(this.mapSpan(sp)));
|
|
139
|
+
}
|
|
140
|
+
const scopeSpans = [];
|
|
141
|
+
for (const [scopeKey, mappedSpans] of scopeMap) {
|
|
142
|
+
const [name, version] = scopeKey.split(":");
|
|
143
|
+
scopeSpans.push({
|
|
144
|
+
scope: { name, version: version || undefined },
|
|
145
|
+
spans: mappedSpans,
|
|
146
|
+
});
|
|
147
|
+
}
|
|
148
|
+
let resourceAttrs = {};
|
|
149
|
+
if (spans.length > 0 && spans[0].resource?.attributes) {
|
|
150
|
+
resourceAttrs = { ...spans[0].resource.attributes };
|
|
151
|
+
}
|
|
152
|
+
return {
|
|
153
|
+
resourceSpans: [
|
|
154
|
+
{
|
|
155
|
+
resource: {
|
|
156
|
+
attributes: Object.keys(resourceAttrs).length > 0 ? resourceAttrs : null,
|
|
157
|
+
},
|
|
158
|
+
scopeSpans,
|
|
159
|
+
},
|
|
160
|
+
],
|
|
161
|
+
};
|
|
162
|
+
}
|
|
163
|
+
mapSpan(sp) {
|
|
164
|
+
const ctx = sp.spanContext();
|
|
165
|
+
let parentSpanId;
|
|
166
|
+
if (sp.parentSpanContext?.spanId && sp.parentSpanContext.spanId !== "0000000000000000") {
|
|
167
|
+
parentSpanId = (0, utils_js_1.hexSpanId)(sp.parentSpanContext.spanId);
|
|
168
|
+
}
|
|
169
|
+
const attrs = sp.attributes ? { ...sp.attributes } : {};
|
|
170
|
+
const events = (sp.events ?? []).map((ev) => {
|
|
171
|
+
const timeNs = Array.isArray(ev.time)
|
|
172
|
+
? ev.time[0] * 1_000_000_000 + ev.time[1]
|
|
173
|
+
: ev.time;
|
|
174
|
+
const evAttrs = ev.attributes && Object.keys(ev.attributes).length > 0 ? { ...ev.attributes } : null;
|
|
175
|
+
return { timeUnixNano: timeNs, name: ev.name, attributes: evAttrs };
|
|
176
|
+
});
|
|
177
|
+
const links = (sp.links ?? []).map((ln) => {
|
|
178
|
+
const lnAttrs = ln.attributes && Object.keys(ln.attributes).length > 0 ? { ...ln.attributes } : null;
|
|
179
|
+
return {
|
|
180
|
+
traceId: (0, utils_js_1.hexTraceId)(ln.context.traceId),
|
|
181
|
+
spanId: (0, utils_js_1.hexSpanId)(ln.context.spanId),
|
|
182
|
+
attributes: lnAttrs,
|
|
183
|
+
};
|
|
184
|
+
});
|
|
185
|
+
const status = {
|
|
186
|
+
code: (0, utils_js_1.statusName)(sp.status?.code ?? 0),
|
|
187
|
+
message: sp.status?.message || "",
|
|
188
|
+
};
|
|
189
|
+
const startTimeNs = Array.isArray(sp.startTime)
|
|
190
|
+
? sp.startTime[0] * 1_000_000_000 + sp.startTime[1]
|
|
191
|
+
: sp.startTime;
|
|
192
|
+
const endTimeNs = Array.isArray(sp.endTime)
|
|
193
|
+
? sp.endTime[0] * 1_000_000_000 + sp.endTime[1]
|
|
194
|
+
: sp.endTime;
|
|
195
|
+
return {
|
|
196
|
+
traceId: (0, utils_js_1.hexTraceId)(ctx.traceId),
|
|
197
|
+
spanId: (0, utils_js_1.hexSpanId)(ctx.spanId),
|
|
198
|
+
parentSpanId,
|
|
199
|
+
name: sp.name,
|
|
200
|
+
kind: (0, utils_js_1.kindName)(sp.kind),
|
|
201
|
+
startTimeUnixNano: startTimeNs,
|
|
202
|
+
endTimeUnixNano: endTimeNs,
|
|
203
|
+
attributes: Object.keys(attrs).length > 0 ? attrs : null,
|
|
204
|
+
events: events.length > 0 ? events : null,
|
|
205
|
+
links: links.length > 0 ? links : null,
|
|
206
|
+
status,
|
|
207
|
+
};
|
|
208
|
+
}
|
|
209
|
+
async shutdown() {
|
|
210
|
+
this.closed = true;
|
|
211
|
+
}
|
|
212
|
+
async forceFlush() {
|
|
213
|
+
// No-op — spans are exported immediately on export() call
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
exports.Agent365Exporter = Agent365Exporter;
|
|
217
|
+
function sleep(ms) {
|
|
218
|
+
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
219
|
+
}
|
|
220
|
+
//# sourceMappingURL=Agent365Exporter.js.map
|