The Dynatrace AI causation engine, Davis, relies on high data quality and fidelity. The main source of the data are the captured PurePath traces. To analyze the collected data, Davis has to be sure that its quality meets a certain standard, meaning that all services, methods, timings, properties, and so on have been correctly captured and transmitted.
In case some data isn't captured correctly or is lost in transition, Dynatrace labels the affected PurePath trace with a diagnostic message. The message explains the possible causes and ensures that Davis knows which parts of the information it can rely on.
Consequences of missing data
In case the correct service can be determined, PurePath traces with diagnostic messages are listed on the service's PurePaths page, along with all other PurePath traces related to the service.
PurePath traces for which a related service can't be determined, for example, because of a missing service name or type, are listed as Unexpected services in the list of services of the process for which PurePaths have been captured.
Unexpected services may be caused by network issues (data lost in transition) or by abrupt termination of the process (restart or scaling).
Volatile services aim to prevent the creation of too many distinct services. A volatile service is created when it is obvious that too many individual services would be detected based on the call information.
Examples of volatile services include:
- A database that is called through many distinct connection strings. Each connection is captured as a separate service.
- A service that is called via dynamic port setup. A call from each port is captured as a separate service.
You can use service detection rules to reduce the number of services. For example, you can merge connections from various ports into one service.
How to handle PurePath diagnostic messages
In modern dynamic multitier environments, a certain number of PurePath capture errors is to be expected. Dynatrace has built-in resilience, so this is nothing to worry about—there is enough high-quality data.
Nevertheless, sometimes PurePath capture errors are symptoms of an issue with the setup and should be investigated. These are usually indicated by a specific pattern. For example, all calls of a specific service or all calls from a certain timeframe are affected.
A diagnostic message shows possible causes for the capture errors. If you've investigated and fixed the suggested cause but the issue is still present, you should investigate the issue further with Dynatrace Support.
Reducing PurePath capture errors
Though you might not be able to prevent periodic network issues, you can use network error patterns to identify processes that might require the attention of your developers. For example, if all requests of a specific service have network-related errors, the cause may be a short-living process that isn't sending data to Dynatrace.