Why Gemfury? Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Debian packages RPM packages NuGet packages

Repository URL to install this package:

Details    
odigos / etc / odigos-vmagent / instrumentations / nodejs-ebpf / autoinstrumentation.js
Size: Mime:
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const DtraceProbes = require("./lib/binding.js");
const sdk_node_1 = require("@opentelemetry/sdk-node");
const otlp_transformer_1 = require("@opentelemetry/otlp-transformer");
const instrumentation_connect_1 = require("@opentelemetry/instrumentation-connect");
const instrumentation_grpc_1 = require("@opentelemetry/instrumentation-grpc");
const instrumentation_fastify_1 = require("@opentelemetry/instrumentation-fastify");
const instrumentation_hapi_1 = require("@opentelemetry/instrumentation-hapi");
const instrumentation_http_1 = require("@opentelemetry/instrumentation-http");
const instrumentation_restify_1 = require("@opentelemetry/instrumentation-restify");
const instrumentation_router_1 = require("@opentelemetry/instrumentation-router");
class EBPFSpanProcessor {
    onStart(_span, _context) { }
    onEnd(_span) {
        const data = otlp_transformer_1.ProtobufTraceSerializer.serializeRequest([_span]);
        DtraceProbes.SpanEnded(data);
    }
    shutdown() {
        return Promise.resolve();
    }
    forceFlush() {
        return Promise.resolve();
    }
}
const sdk = new sdk_node_1.NodeSDK({
    autoDetectResources: false,
    instrumentations: [new instrumentation_connect_1.ConnectInstrumentation(),
        new instrumentation_fastify_1.FastifyInstrumentation(),
        new instrumentation_hapi_1.HapiInstrumentation(),
        new instrumentation_http_1.HttpInstrumentation(),
        new instrumentation_restify_1.RestifyInstrumentation(),
        new instrumentation_router_1.RouterInstrumentation(),
        new instrumentation_grpc_1.GrpcInstrumentation()
    ],
    spanProcessor: new EBPFSpanProcessor(),
});
sdk.start();