From 82e03978b89938219958032efb1448cc76baa181 Mon Sep 17 00:00:00 2001 From: Saumit Date: Sat, 27 Sep 2025 02:14:26 +0530 Subject: Initial snapshot - OpenTelemetry demo 2.1.3 -f --- src/payment/opentelemetry.js | 45 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 src/payment/opentelemetry.js (limited to 'src/payment/opentelemetry.js') diff --git a/src/payment/opentelemetry.js b/src/payment/opentelemetry.js new file mode 100644 index 0000000..856910c --- /dev/null +++ b/src/payment/opentelemetry.js @@ -0,0 +1,45 @@ +// Copyright The OpenTelemetry Authors +// SPDX-License-Identifier: Apache-2.0 + +const opentelemetry = require("@opentelemetry/sdk-node") +const {getNodeAutoInstrumentations} = require("@opentelemetry/auto-instrumentations-node") +const {OTLPTraceExporter} = require('@opentelemetry/exporter-trace-otlp-grpc') +const {OTLPMetricExporter} = require('@opentelemetry/exporter-metrics-otlp-grpc') +const {PeriodicExportingMetricReader} = require('@opentelemetry/sdk-metrics') +const {alibabaCloudEcsDetector} = require('@opentelemetry/resource-detector-alibaba-cloud') +const {awsEc2Detector, awsEksDetector} = require('@opentelemetry/resource-detector-aws') +const {containerDetector} = require('@opentelemetry/resource-detector-container') +const {gcpDetector} = require('@opentelemetry/resource-detector-gcp') +const {envDetector, hostDetector, osDetector, processDetector} = require('@opentelemetry/resources') +const {RuntimeNodeInstrumentation} = require('@opentelemetry/instrumentation-runtime-node') + +const sdk = new opentelemetry.NodeSDK({ + traceExporter: new OTLPTraceExporter(), + instrumentations: [ + getNodeAutoInstrumentations({ + // only instrument fs if it is part of another trace + '@opentelemetry/instrumentation-fs': { + requireParentSpan: true, + }, + }), + new RuntimeNodeInstrumentation({ + monitoringPrecision: 5000, + }) + ], + metricReader: new PeriodicExportingMetricReader({ + exporter: new OTLPMetricExporter() + }), + resourceDetectors: [ + containerDetector, + envDetector, + hostDetector, + osDetector, + processDetector, + alibabaCloudEcsDetector, + awsEksDetector, + awsEc2Detector, + gcpDetector + ], +}) + +sdk.start(); -- cgit v1.2.3