Skip to content
Kong Logo | Kong Docs Logo
search
  • We're Hiring!
  • Docs
    • Kong Gateway
    • Kong Konnect
    • Kong Mesh
    • Plugin Hub
    • decK
    • Kubernetes Ingress Controller
    • Insomnia
    • Kuma

    • Docs contribution guidelines
  • Plugin Hub
  • Support
  • Community
  • Kong Academy
Get a Demo Start Free Trial
  • Kong Gateway
  • Kong Konnect
  • Kong Mesh
  • Plugin Hub
  • decK
  • Kubernetes Ingress Controller
  • Insomnia
  • Kuma

  • Docs contribution guidelines
  • 3.3.x (latest)
  • 3.2.x
  • 3.1.x
  • 3.0.x
  • 2.8.x
  • 2.7.x
  • 2.6.x
  • Older Enterprise versions (2.1-2.5)
  • Older OSS versions (2.1-2.5)
  • Archive (pre-2.1)

github-edit-pageEdit this page

report-issueReport an issue

enterprise-switcher-iconSwitch to OSS

On this pageOn this page
  • span:finish(end_time_ns)
  • span:set_attribute(key, value)
  • span:add_event(name, attributes, time_ns)
  • span:record_error(err)
  • span:set_status(status)
  • kong.tracing.new_span()
  • kong.tracing.new_span(span)
  • kong.tracing.new_span(name, options)
  • kong.tracing.process_span(processor)
Kong Gateway
3.2.x
  • Home
  • Kong Gateway
  • Plugin Development
  • PDK
  • kong.tracing
You are browsing documentation for an outdated version. See the latest documentation here.

kong.tracing

Tracer module Application-level tracing for Kong.

span:finish(end_time_ns)

Ends a Span Set the end time and release the span, the span table MUST not being used after ended.

Parameters

  • end_time_ns (number|nil):

Usage

span:finish()

local time = ngx.now()
span:finish(time * 100000000)

span:set_attribute(key, value)

Set an attribute to a Span

Parameters

  • key (string):
  • value (string|number|boolean):

Usage

span:set_attribute("net.transport", "ip_tcp")
span:set_attribute("net.peer.port", 443)
span:set_attribute("exception.escaped", true)

span:add_event(name, attributes, time_ns)

Adds an event to a Span

Parameters

  • name (string): Event name
  • attributes (table|nil): Event attributes
  • time_ns (number|nil): Event timestamp

span:record_error(err)

Adds an error event to a Span

Parameters

  • err (string): error string

span:set_status(status)

Adds an error event to a Span Status codes:

  • 0 unset
  • 1 ok
  • 2 error

Parameters

  • status (number): status code

kong.tracing.new_span()

Get the active span Returns the root span by default

Phases

  • rewrite, access, header_filter, response, body_filter, log, admin_api

Returns

  • table: span

kong.tracing.new_span(span)

Set the active span

Phases

  • rewrite, access, header_filter, response, body_filter, log, admin_api

Parameters

  • span (table):

kong.tracing.new_span(name, options)

Create a new Span

Phases

  • rewrite, access, header_filter, response, body_filter, log, admin_api

Parameters

  • name (string): span name
  • options (table): TODO(mayo)

Returns

  • table: span

kong.tracing.process_span(processor)

Batch process spans Please note that socket is not available in the log phase, use ngx.timer.at instead

Phases

  • log

Parameters

  • processor (function): a function that accecpt a span as the parameter
Thank you for your feedback.
Was this page useful?
  • Kong
    THE CLOUD CONNECTIVITY COMPANY

    Kong powers reliable digital connections across APIs, hybrid and multi-cloud environments.

    • Company
    • Customers
    • Events
    • Investors
    • Careers Hiring!
    • Partners
    • Press
    • Contact
  • Products
    • Kong Konnect
    • Kong Gateway
    • Kong Mesh
    • Get Started
    • Pricing
  • Resources
    • eBooks
    • Webinars
    • Briefs
    • Blog
    • API Gateway
    • Microservices
  • Open Source
    • Install Kong Gateway
    • Kong Community
    • Kubernetes Ingress
    • Kuma
    • Insomnia
  • Solutions
    • Decentralize
    • Secure & Govern
    • Create a Dev Platform
    • API Gateway
    • Kubernetes
    • Service Mesh
Star
  • Terms•Privacy
© Kong Inc. 2023