| 1234567891011121314151617181920212223242526272829303132333435 |
- const { Resource } = require('@opentelemetry/resources');
- const { SemanticResourceAttributes } = require('@opentelemetry/semantic-conventions');
- const { SimpleSpanProcessor } = require('@opentelemetry/sdk-trace-base');
- const { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node');
- const { trace } = require('@opentelemetry/api');
- const { JaegerExporter } = require('@opentelemetry/exporter-jaeger');
- const { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express');
- const { PgInstrumentation } = require('@opentelemetry/instrumentation-pg');
- const { HttpInstrumentation } = require('@opentelemetry/instrumentation-http');
- const { registerInstrumentations } = require('@opentelemetry/instrumentation');
- const exporter = new JaegerExporter({
- endpoint: 'http://jaeger-all-in-one-inmemory-collector.opentelemetry-js-rhosdt.svc:14268/api/traces'
- });
- const provider = new NodeTracerProvider({
- resource: new Resource({
- [SemanticResourceAttributes.SERVICE_NAME]: 'nodejs-rest-http-crud'
- })
- });
- provider.addSpanProcessor(new SimpleSpanProcessor(exporter));
- provider.register();
- registerInstrumentations({
- instrumentations: [
- new HttpInstrumentation(),
- new ExpressInstrumentation(),
- new PgInstrumentation()
- ],
- tracerProvider: provider
- });
- trace.getTracer('nodejs-rest-http-crud');
|