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.
Opaque services without deep monitoring support
The following image shows an example of an opaque CouchCB service, a technology that is supported by Dynatrace but for which code-level visibility isn't available. CouchDB is a supported technology, but only at the metric and process level; Dynatrace doesn't provide code-level insights for CouchDB.
Nevertheless, Dynatrace can detect all requests to CouchDB services that are sent by services that Dynatrace does monitor. 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 CouchDB service crashes, Dynatrace will interpret the crash as the root cause of any increased failure rate in calls to the CouchDB service.
Unrecognized or unsupported technologies are opaque services
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.
The following image shows an example of a service that is considered opaque because it is of an unrecognized technology. Since the technology isn't known, no commercial logo can be included to denote the service. This is why a cog icon is included to signify the service. As shown in the example below, although deep monitoring isn't supported for this service, Dynatrace can still detect all requests to this service that are sent by monitored services and, for example, calculate the relevant response times and failure rate.
Note that opaque services of unrecognized or unsupported technologies are still included in Smartscape. This ensures a complete representation of your infrastructure’s topology, even when your environment includes opaque services.
The Dynatrace 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 following reasons:
A process is offline though a service still makes calls to it. These types of 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 Answers user forum.
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.