0.9.0 • Published 13 days ago

@opentelemetry/resource-detector-instana v0.9.0

Weekly downloads
-
License
Apache-2.0
Repository
github
Last release
13 days ago

OpenTelemetry Resource Detector for Instana

NPM Published Version Apache License

This resource detector will detect the Instana agent to register the Opentelemetry as a Node.js process. The created resource will be automatically merged with the existing resources and contains the real PID, which is returned from the Instana agent. This mechanism is needed to connect the Node.js Otel process with the incoming Opentelemetry spans.

Installation

npm install --save @opentelemetry/resource-detector-instana

Environment variables

  • INSTANA_AGENT_HOST: The Instana agent hostname.
  • INSTANA_AGENT_PORT: The Instana agent port.
  • INSTANA_RETRY_TIMEOUT_MS: The resource detector does three retries to connect to the Instana agent. This is the timeout between the retries.
  • INSTANA_AGENT_TIMEOUT_MS: The client timeout when connecting the Instana agent.

Usage

import {
  Resource,
  processDetector,
  envDetector,
} from "@opentelemetry/resources";
import { SEMRESATTRS_SERVICE_NAME } from "@opentelemetry/semantic-conventions";
import { NodeSDK } from "@opentelemetry/sdk-node";
import { instanaAgentDetector } from "@opentelemetry/resource-detector-instana";

const globalResource = new Resource({
   [SEMRESATTRS_SERVICE_NAME]: "TestService",
});

const sdk = new NodeSDK({
   resourceDetectors: [envDetector, processDetector, instanaAgentDetector],
   resource: globalResource,
});

sdk.start()

Available detectors

This package uses @opentelemetry/semantic-conventions version 1.22+, which implements Semantic Convention Version 1.7.0

Instana Agent Detector

Resource AttributeDescription
process.pidThe ID of the process. Value of parameter pid from the response to a request to /com.instana.plugin.nodejs.discovery
service.instance.idThe agent UUID. Value of parameter agentUuid from the response to a request to /com.instana.plugin.nodejs.discovery

Useful links

License

Apache 2.0 - See LICENSE for more information.