Opaque services are services that are detected on the calling side by Dynatrace for which code-level visibility isn't available. Dynatrace can detect requests to opaque services and identify which processes they are processed by, but Dynatrace can't monitor these services directly.
Code-level visibility isn't possible if:
- A service is of a technology type for which deep monitoring isn't supported.
- A service is of an unrecognized or unsupported technology.
No deep monitoring support
Code-level visibility might not be available for some technologies, even though the technology is supported by Dynatrace.
Nevertheless, Dynatrace can detect all requests to such services that are sent by services with full visibility. Dynatrace calculates response times and failure rates and generates appropriate alerts.
Thanks to artificial intelligence, Dynatrace understands the impact that host and process performance problems can have on services. This is why Dynatrace correlates host and process issues with corresponding slow-downs in service requests. For example, if a service without code-level visibility crashes, Dynatrace will interpret the crash as the root cause of any increased failure rate in calls to this service.
Unrecognized or unsupported technologies
When a service is of an unrecognized technology or a technology that is recognized but not currently supported by Dynatrace, the service is considered to be opaque.
Although deep monitoring isn't supported for such services, Dynatrace can still detect all requests to this service that are sent by fully visible services and, for example, calculate the relevant response times and failure rate.
Opaque services of unrecognized or unsupported technologies are included in Smartscape. This ensures a complete representation of your infrastructure’s topology, even when your environment includes opaque services.
The OneAgent SDK enables you to instrument your application manually to extend end-to-end visibility for unrecognized or unsupported technologies.
Other reasons services may be classified as opaque
There can be cases where a service is considered opaque even when the service is recognized and of a supported technology. This can occur for the multiple reasons, such as:
- A process is offline but a service still makes calls to it. These opaque services are used to visualize dependencies in the context of availability problems.
- A process never started processing a request (the calling service receives an error or timeout) and therefore Dynatrace cant track the request in the process.
- A process hasn't completely restarted following OneAgent installation. By the time the process restarts, it should no longer appear as opaque.
- The framework processing the request at the specific port is not currently supported by OneAgent. If this is important to you, please submit a Request for Enhancement request for the specific framework and version by visiting our Dynatrace Community.
- The framework is supported, but OneAgent has run into a technical problem. In such a case, please submit a Support ticket. Describe the issue as best you can and include all details regarding your underlying framework, technologies, and versions.