```Instrumentation suppressed, returning Noop Span...
# support
u
Copy code
Instrumentation suppressed, returning Noop Span
@opentelemetry/instrumentation-http http instrumentation outgoingRequest
@opentelemetry/instrumentation-http http.ClientRequest return request
@opentelemetry/instrumentation-http outgoingRequest on response()
@opentelemetry/instrumentation-http outgoingRequest on end()
statusCode: 200 {"partialSuccess":{}}
@opentelemetry/instrumentation-http outgoingRequest on request close()
i have inabled debugging in my instumentation, i am getting these errors while sending otlp data to signoz and i am not seeing all my traces in signoz, what could be the issue here, in my promethues otelcollector metrics i cant see any dropped traces or metrics ?
v
Are you seeing partial traces?
u
i hit 200 requests in one second, and i can see in my logs that i have 200 requests being made. in traces, i am getting 34 from the logging exporter logs also i can see only 34 of them
i am seeing the traces being dropped, the ones that are coming are coming in full
v
Can you share instrumentation code?
We recommend using batch processor
u
Nodejs & opentelemetry/sdk-node, this is my tracing.js
Copy code
'use strict';
Object.defineProperty(exports, "__esModule", { value: true });
const process = require('process');
const opentelemetry = require('@opentelemetry/sdk-node');
const { getNodeAutoInstrumentations } = require('@opentelemetry/auto-instrumentations-node');
const { OTLPTraceExporter } = require('@opentelemetry/exporter-trace-otlp-http');
const { Resource } = require('@opentelemetry/resources');
const { SemanticResourceAttributes } = require('@opentelemetry/semantic-conventions');
const { CompositePropagator } = require('@opentelemetry/core');
const { B3Propagator, B3InjectEncoding } = require('@opentelemetry/propagator-b3');
const api = require('@opentelemetry/api');
const exporterOptions = {
    url: '<endpoint>'
};
const traceExporter = new OTLPTraceExporter(exporterOptions);
const sdk = new opentelemetry.NodeSDK({
    traceExporter,
    instrumentations: [getNodeAutoInstrumentations()],
    resource: new Resource({
        [SemanticResourceAttributes.SERVICE_NAME]: 'kyc-app'
    }),
});
// initialize the SDK and register with the OpenTelemetry API
// this enables the API to record telemetry
sdk.start();
// <http://logger.info|logger.info>("======Started Tracing======")
api.propagation.setGlobalPropagator(new CompositePropagator({
    propagators: [new B3Propagator(), new B3Propagator({ injectEncoding: B3InjectEncoding.MULTI_HEADER })]
}));
// gracefully shut down the SDK on process exit
process.on('SIGTERM', () => {
    sdk.shutdown()
        .then(() => console.log('Tracing terminated'))
        .catch((error) => {
        if (error instanceof Error) {
            console.log('Error terminating tracing', error.message);
        }
        else {
            console.log('Error terminating tracing', error);
        }
    })
        .finally(() => process.exit(0));
});
exports.default = sdk;
//# sourceMappingURL=tracing.js.map
Have also added this /*instrumentation.ts*/ import { diag, DiagConsoleLogger, DiagLogLevel } from '@opentelemetry/api'; // For troubleshooting, set the log level to DiagLogLevel.DEBUG diag.setLogger(new DiagConsoleLogger(), DiagLogLevel.INFO); // const sdk = new NodeSDK({...
i am using the default otel config which already has batch processor
still unable to sort this issue, just want to confirm that will this be able to capture all traces for our prod, as currently we are not able to get 100% of the traces.
when i am making concurrent request upto 10 per sec all traces are showing up in signoz, but when i am hitting 100rps, none of them show up.
i have used batchprocessor in my tracing.js too, still facing the same issue
285 Views