Skip to content

Trace Data Collection


TrueWatch trace data collection currently supports collectors using the OpenTracing protocol. After enabling the trace data receiving service in DataKit and completing the instrumentation in the code, DataKit automatically converts the format and collects the data, and finally reports it to TrueWatch.

Data Collection

DataKit currently supports collecting tracing data from third-party sources such as DDTrace, Apache Jaeger, OpenTelemetry, Skywalking, Zipkin, and others.

Prerequisites

  1. Install DataKit

  2. Configure all relevant collectors for trace data collection.

Collector Configuration

Field Descriptions

DataKit converts the reported data from different collectors into the TrueWatch trace data format, preserving tags and metrics. The following are common field descriptions:

Field Name Description
host Host name, default global tag
source Source of the trace. For example, zipkin if collected via Zipkin, jaeger if collected via Jaeger, and so on.
service Service name. It is recommended to specify the name of the business system that generates the trace data through this tag.
parent_id ID of the previous span of the current span.
operation Operation name of the current span, also understood as the Span name.
span_id Unique ID of the current span.
trace_id Unique ID representing the current trace.
span_type Span type. Currently supported: entry, local, exit, unknow.
  • entry span indicates a span created when entering a service, i.e., the endpoint of the service that provides call requests to other services. Most spans should be entry spans. Only a call whose span type is entry is an independent request.
  • local span indicates a span that has no relationship with remote calls; it is created when a local method is called, e.g., a regular Java method.
  • exit span indicates a span created when leaving a service, e.g., when making a remote call or when a message queue produces a message.
  • unknow span indicates an unknown Span.
  • endpoint Target address of the request, the network address used by the client to access the target service, e.g., 127.0.0.1:8080. Default: null.
    message Raw data collected before trace conversion.
    duration Duration of the current trace span.
    status Trace status: info, warning, error, critical, ok.
    env Environment of the trace, e.g., dev for development environment, prod for production environment. Customizable.

    For a full list of fields, see DataKit Tracing Data Structure.