Instrument ingress-nginx for Kubernetes

The NGINX process of the official ingress-nginx controller container image cannot be instrumented automatically. To manually instrument ingress-nginx on Kubernetes, follow the instructions below.

Prerequisites

OneAgent version 1.227+

Instrument Kubernetes ingress-nginx

To instrument ingress-nginx on Kubernetes, you need to load the NGINX module manually via a ConfigMap.

  1. Edit the ConfigMap.

Example:

kubectl edit configmap ingress-nginx-controller
  1. Add the following value to the main-snippet key (below data).

Example:

data:
    main-snippet: load_module /opt/dynatrace/oneagent/agent/bin/current/linux-musl-x86-64/liboneagentnginx.so;

Troubleshoot

If your pod isn't up and running, make sure that it hasn't exceeded either of the following:

  • Its resource quota (especially for memory).
  • The initial liveness/readiness probe timeouts. You might need to increase initialDelaySeconds for these probes.