Slackbot
02/12/2022, 3:34 PMPranay
Selva
02/12/2022, 3:36 PM"@opentelemetry/api": "^1.0.3",
"@opentelemetry/auto-instrumentations-node": "^0.25.0",
"@opentelemetry/exporter-collector": "0.25.0",
"@opentelemetry/exporter-collector-grpc": "^0.25.0",
"@opentelemetry/exporter-otlp-grpc": "^0.26.0",
"@opentelemetry/instrumentation": "^0.24.0",
"@opentelemetry/instrumentation-http": "^0.24.0",
"@opentelemetry/plugin-express": "^0.15.0",
"@opentelemetry/plugin-http": "^0.18.2",
"@opentelemetry/resources": "^0.24.0",
"@opentelemetry/sdk-trace-base": "^1.0.1",
"@opentelemetry/sdk-trace-node": "^1.0.1",
"@opentelemetry/semantic-conventions": "^0.24.0",
"@types/axios": "^0.14.0",
"@types/express": "^4.17.13",
"@types/node": "^17.0.17",
"@types/sequelize": "4.28.11",
"axios": "^0.25.0",
"dotenv": "^16.0.0",
"express": "^4.17.2",
"mysql2": "^2.3.3",
"opentelemetry-instrumentation-express": "0.27.0",
"sequelize": "^6.16.1",
"ts-node-dev": "^1.1.8",
Selva
02/12/2022, 3:37 PMimport { NodeTracerProvider } from '@opentelemetry/sdk-trace-node';
import { SimpleSpanProcessor, BatchSpanProcessor, ConsoleSpanExporter, } from '@opentelemetry/sdk-trace-base';
import { Resource } from '@opentelemetry/resources';
import { SemanticResourceAttributes } from '@opentelemetry/semantic-conventions';
import { registerInstrumentations } from '@opentelemetry/instrumentation';
import { ExpressInstrumentation } from '@opentelemetry/instrumentation-express';
import { HttpInstrumentation } from '@opentelemetry/instrumentation-http';
const { OTLPTraceExporter } = require('@opentelemetry/exporter-otlp-grpc');
import { CollectorTraceExporter } from '@opentelemetry/exporter-collector-grpc';
const init = function (serviceName: string ) {
// Define traces
const traceExporter = new OTLPTraceExporter({});
const provider = new NodeTracerProvider({
resource: new Resource({
[SemanticResourceAttributes.SERVICE_NAME]: serviceName
}),
});
provider.addSpanProcessor(new BatchSpanProcessor(traceExporter));
provider.register();
registerInstrumentations({
instrumentations: [
new ExpressInstrumentation({}),
new HttpInstrumentation({})
]
});
const tracer = provider.getTracer(serviceName);
return { tracer };
}
export default init;
Pranay
Pranay
Selva
02/12/2022, 3:44 PMPranay
Selva
02/15/2022, 1:29 PMPranay
Ankit Nayan
Ankit Nayan
Ankit Nayan
sequelize
in supported libsAnkit Nayan
mysql2
at https://github.com/ganny26/opentelemetry-nodejs-distributed-tracing/blob/main/package.json#L31
but I don't see the relevant otel package at package-lock.json
which has mysql
and not mysql2
. You might want to test using same mysql
package even for otel instrumentationSelva
02/16/2022, 2:43 PM