We are leveraging a vended API management tool that basically creates a proxy url to backend services. We've found the Dynatrace oneagent is unable to instrument the tool such that when an application or another service calls one of these proxy endpoints the service flow ends at this level and doesn't track to the backend services due to the proxy not persisting all headers.
We've tried using service detection rules to try to split out the individual services within the API manager but thus far have been unsuccessful in that as well as connecting the dots to the backend service. We're currently researching ways that we could enforce persistence of the header through the API manager but wondering if anyone has found methods to connect services that flow through a proxy like this that is unmonitored?
Solved! Go to Solution.
Based on your question I believe your technology is not supported by Dynatrace. What kind of technology are you using? For tracing to work across an API gateway (or other "proxy" like technology) you need at least to pass the X-dynatrace HTTP headers. Passing or honoring the W3C headers will also help, but it must be turned on in the Dynatrace configuration. Depending on the technology used and your options - OpenTelemetry may help you as well. If it just passes the headers - your service flow will continue, but you won't have visibility into the API gateway - which I believe you don't have anyway as it's likely unsupported.
Another option left is just changing the code of the API gateway by utilizing OneAgent SDK. This will be quite an effort, but it will come with visibility into your API gateway. Only use this if you know what you are doing 🙂