opentelemetry

    The plugin currently only supports binary-encoded OTLP over HTTP. For details, see .

    Then reload APISIX.

    You can set the collecting by specifying the configuration in .

    NameTypeDefaultDescription
    trace_id_sourceenumrandomthe source of trace id, the valid value is random or x-request-id. If is set, the value of x-request-id request header will be used as trace id. Please make sure it match regex pattern [0-9a-f]{32}
    resourceobjectadditional append to trace
    collectorobject{address = “127.0.0.1:4318”, request_timeout = 3}otlp collector
    collector.addressstring127.0.0.1:4318collector address
    collector.request_timeoutinteger3report request timeout(second)
    collector.request_headersobjectreport request http headers
    batch_span_processorobjecttrace span processor
    batch_span_processor.drop_on_queue_fullbooleantruedrop span when queue is full, otherwise force process batches
    batch_span_processor.max_queue_sizeinteger2048maximum queue size to buffer spans for delayed processing
    batch_span_processor.batch_timeoutnumber5maximum duration(second) for constructing a batch
    batch_span_processor.max_export_batch_sizeinteger256maximum number of spans to process in a single batch
    batch_span_processor.inactive_timeoutnumber2timer interval(second) for processing batches

    When you want to disable the opentelemetry plugin on a route/service, it is very simple, you can delete the corresponding JSON configuration in the plugin configuration, no need to restart the service, it will take effect immediately: