09 Jun 2026 07:56 AM
Hi,
I was looking at the smartscapeNodes and there is a K8S_INGRESS option.
I have a few questions about different network ingress options.
Does the K8S_INGRESS option cover the new Gateway API resources like httpRoute, grpcRoute and tcpRoute?
How do you link up things like the Traefik CRDs IngressRoute , Middleware & plugins?
Is there a way to extend the smartscape to associate specific CRDs into the existing views like the K8S_INGRESS?
Solved! Go to Solution.
09 Jun 2026 11:35 AM
Hi @dougwillis
K8S_INGRESS maps to the classic v1 Ingress resource only. It does not cover Gateway API resources (HTTPRoute, GRPCRoute, TCPRoute) yet. Your gateway controller's underlying process/service will still be traced by OneAgent, but you won't see dedicated topology nodes for Gateway API objects in Smartscape.
Traefik CRDs (IngressRoute, Middleware, Plugins)-These aren't auto-discovered in Smartscape. Traefik itself is detected as a process group with full distributed tracing, but the CRD configuration isn't represented. I hope you would have tried Kubernetes app (new UI) thats gives broader CRD visibility via workload view.
No built-in mechanism exists to inject arbitrary CRDs into Smartscape views. The Generic Relationships API + Extension Framework 2.0 is the closest you'll get today. I'd also recommend submitting a product idea for native Gateway API topology support
Thanks,
Sujit
06 Aug 2026 01:50 PM
Limitation of the new CRD visibility feature is the current limit of five custom resource definitions. Until that limit is raised, the feature is not particularly useful in real world.
Regarding the General Relationships API, one desired relationship in this scenario is between an HTTPRoute and a namespace within a specific Kubernetes cluster. The challenge is that multiple clusters can contain namespaces with identical names, and some of those namespaces may host HTTPRoutes.
As far as I understand, a MappingRule supports only a single mapping rule between source and destination types and it is not possible map using namespace AND cluster name: https://docs.dynatrace.com/docs/dynatrace-api/environment-api/settings/schemas/builtin-monitoredenti...
As a result, an HTTPRoute becomes associated with every namespace that has the same name across all clusters, rather than with the namespace in the intended cluster. This is only a problem in multi-cluster environments; if you have a single Kubernetes cluster in Dynatrace environment, the limitation does not apply.
If anyone has found a reliable workaround or solution, I would greatly appreciate hearing about it.
06 Aug 2026 01:58 PM
Well, I just realized what I said is wrong.
Description of the MappingRule "Specify all properties which should be compared. If all mapping rules match a relationship between entities will be created."
I have tried this feature only from UI. Maybe it is more flexible via API. I have to try this 🙂
06 Aug 2026 02:34 PM
It turns out this is probably not possible after all. The issue is not the inability to map using multiple properties. Instead, the Kubernetes cluster name is not exposed directly on the namespace entity.
The cluster name would need to be resolved through the namespace's isClusterOfNamespace relationship, but the API does not seem to support that.
If anyone has successfully implemented a similar solution using Extensions or something else, I'd be very interested to hear about it.
Featured Posts