CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/npm-opentelemetry--instrumentation-express

OpenTelemetry instrumentation for Express.js web applications enabling automatic distributed tracing and observability

80

1.63x
Overview
Eval results
Files

rubric.jsonevals/scenario-5/

{
  "context": "This criteria evaluates how well the engineer uses @opentelemetry/instrumentation-http and @opentelemetry/instrumentation-express to implement integrated request filtering that prevents specific routes from being traced at the HTTP layer, avoiding partial traces.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "HTTP instrumentation setup",
      "description": "Correctly imports and registers HttpInstrumentation from @opentelemetry/instrumentation-http with the NodeTracerProvider",
      "max_score": 15
    },
    {
      "name": "Express instrumentation setup",
      "description": "Correctly imports and registers ExpressInstrumentation from @opentelemetry/instrumentation-express with the NodeTracerProvider",
      "max_score": 15
    },
    {
      "name": "ignoreIncomingRequestHook usage",
      "description": "Uses the ignoreIncomingRequestHook configuration option in HttpInstrumentation to filter requests at the HTTP layer",
      "max_score": 25
    },
    {
      "name": "Request filtering logic",
      "description": "Implements the hook function to return true for /health and /metrics endpoints, preventing root span creation for these routes",
      "max_score": 20
    },
    {
      "name": "Instrumentation registration order",
      "description": "Registers instrumentations before importing Express to ensure proper patching of the Express module",
      "max_score": 10
    },
    {
      "name": "TracerProvider configuration",
      "description": "Creates and configures a NodeTracerProvider from @opentelemetry/sdk-trace-node and registers it globally",
      "max_score": 10
    },
    {
      "name": "Span exporter setup",
      "description": "Configures an exporter (such as ConsoleSpanExporter) to verify span creation behavior",
      "max_score": 5
    }
  ]
}

Install with Tessl CLI

npx tessl i tessl/npm-opentelemetry--instrumentation-express

tile.json