# OpenTelemetry

You can use Annotations für Telemetry Operators such as Open Telemetry to inject their Agents into the Pods.
To do so, you can either add the annotations manually to the components, like this:

```
nappl:
  template:
    annotations:
      instrumentation.opentelemetry.io/inject-java: "true"
      instrumentation.opentelemetry.io/java-container-names: "application-layer"
```

or alternatively, you can turn on the built in functionality for the supported telemetry services.

This is an example for OpenTelemetry:

```
global:
  telemetry:
    openTelemetry: true
    serviceName: "{{ .this.meta.type }}-{{ .instance.name }}-{{ .instance.stage }}"
  meta:
    stage: "dev"
```

This will automatically set the correct settings as seen above.


Please also see here:

- https://opentelemetry.io/docs/kubernetes/operator/automatic/
- https://github.com/open-telemetry/opentelemetry-operator#opentelemetry-auto-instrumentation-injection
