cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
ryan_korteway
Dynatrace Guide
Dynatrace Guide

 

Summary

This article is to help identify potential blockers to deep monitoring pod-contained apps within Kubernetes clusters.

 

Troubleshooting Pod Injections

Step 1 - Validate Namespace

The first step of Pod injection is adding labels to application namespaces. Namespace labels can be listed using:

kubectl describe namespace <application namespace>


Look for the label: dynakube.internal.dynatrace.com/instance

C:\Users\ryan.korteway>kubectl describe ns default
Name:         default
Labels:       dynakube.internal.dynatrace.com/instance=sup-enablement-k8s-cnfs
Annotations:  <none>
Status:       Active

 

If you DO see this label but no deep monitoring data, move on to step 2. 

If you do NOT see this label, then,

  • validate that communication between the Dynatrace namespace / pods and the kube-system namespace is functional
  • Collect a Dynatrace Operator support archive before reaching out to Dynatrace Support.
    • How to collect a Dynatrace Operator Support Archive. 
    • It is essential to send the whole archive, and not to just send the logs. Configuration and diagnostic runtime information is also collected, and extremely valuable to speed up the investigation of your reported issue. 

Additionally, you can validate Namespace Labels within containerized process properties and tags dropdowns / pop-out menus within the Dynatrace UI: 

alternative sensoring.png

Version history
Last update:
‎15 Oct 2025 03:12 PM
Updated by:
Comments
sivart_89
Mentor

@ryan_korteway thank you for this right up. The 2nd link is invalid (DT Documentation about pod and namespace annotations). I'm currently looking through this because I've noticed that 1 cluster of ours has label dynakube.internal.dynatrace.com/instance in our namespaces while others do not. If the label does not exist in a namespace does that mean no dynatrace agent is being installed (as an init container) into their pod? I'm trying to understand what we are missing by not having this label in our namespaces.

ryan_korteway
Dynatrace Guide
Dynatrace Guide

Hello Sivart,

Not a problem at all on the write up and thank you for the heads up on the broken doc link which I will be fixing right after this comment. 

So my understanding is if your namespace is missing that annotation, then the namespace and thus all of the pods within it are not being watched for pod starts and therefore will not have any pod injections.

Sounds to me like you may have some namespaceSelectors set up within the dynakube yaml files for some of your clusters / DT operator deployments.

It may also warrant checking the dynakube yaml file for any dynatrace operator config annotations that disable automatic monitoring for all namespaces within the cluster etc.

Please let me know if you have any further questions or concerns.