Spans and attributes

Last updated Oct 16, 2026 Cloudflare Workers provides automatic tracing instrumentation out of the box - no code changes or SDK are required.

Currently supported spans and attributes

Attributes available on all spans

  • cloud.provider - Always set to cloudflare
  • cloud.platform - Always set to cloudflare.workers
  • faas.name - The name of your Worker
  • faas.invocation_id - A unique identifier for this specific Worker invocation
  • faas.version - The deployed version tag of your Worker
  • faas.invoked_region - The region where the Worker was invoked
  • service.name - The name of your Worker
  • cloudflare.colo - The three-letter IATA airport code of the Cloudflare data center that processed the request (e.g., SFO, LHR)
  • cloudflare.script_name - The name of your Worker
  • cloudflare.script_tags - Tags associated with your Worker deployment
  • cloudflare.script_version.id - The version identifier of your deployed Worker
  • cloudflare.durable_object.id - The Durable Object instance ID, set on root and child spans for Durable Object invocations
  • cloudflare.invocation.sequence.number - A counter added to every emitted span and log that can be used to distinguish which was emitted first when the timestamps are the same
  • telemetry.sdk.language - The programming language used, set to javascript
  • telemetry.sdk.name - The telemetry SDK name, set to cloudflare

Attributes available on all root spans

  • faas.trigger - The trigger that your Worker was invoked by (e.g., http, cron, queue, email)
  • cloudflare.ray_id - A unique identifier for every request that goes through Cloudflare
  • cloudflare.handler_type - The type of handler that processed the request (e.g., fetch, scheduled, queue, email, alarm)
  • cloudflare.entrypoint - The entrypoint that was invoked in your Worker (e.g. the name of your Durable Object)
  • cloudflare.execution_model - The execution model of the Worker (e.g., stateless, stateful for Durable Objects)
  • cloudflare.outcome - The outcome of the Worker invocation (e.g., ok, exception, exceededCpu, exceededMemory)
  • cloudflare.cpu_time_ms - The CPU time used by the Worker invocation, in milliseconds
  • cloudflare.wall_time_ms - The wall time used by the Worker invocation, in milliseconds

Warning attributes

Workers tracing may attach warning attributes to a span when a non-fatal error condition is encountered while recording telemetry for that span. These are diagnostic indicators about the span's telemetry state (for example, a span that was never closed). When present, both attributes are set together.

  • cloudflare.warning.type - A closed-set identifier indicating the type of warning condition encountered. See Warning types for the set of defined values.
  • cloudflare.warning.message - A free-form, human-readable explanation of the warning condition.

Warning types

The following values are defined for cloudflare.warning.type:

  • span_not_ended - The span was still open when its parent invocation span closed. Workers tracing force-closes the span and attaches this warning.

Runtime API

fetch

  • network.protocol.name
  • network.protocol.version
  • url.full
  • url.scheme
  • url.path
  • url.query
  • server.port
  • server.address
  • user_agent.original
  • http.request.method
  • http.request.header.content-type
  • http.request.header.content-length
  • http.request.header.accept
  • http.request.header.accept-encoding
  • http.request.body.size
  • http.response.status_code
  • http.response.body.size

cache_put

  • cache.request.url
  • cache.request.method
  • cache.request.payload.status_code
  • cache.request.payload.header.cache_control
  • cache.request.payload.header.cache_tag
  • cache.request.payload.header.etag
  • cache.request.payload.header.expires
  • cache.request.payload.header.last_modified
  • cache.request.payload.size
  • cache.response.success

cache_match

  • cache.request.ignore_method
  • cache.request.url
  • cache.request.method
  • cache.request.header.range
  • cache.request.header.if_modified_since
  • cache.request.header.if_none_match
  • cache.response.status_code
  • cache.response.body.size
  • cache.response.cache_status
  • cache.response.success

cache_delete

  • cache.request.ignore_method
  • cache.request.url
  • cache.request.method
  • cache.response.status_code
  • cache.response.success

Handlers

Fetch Handler

  • cloudflare.verified_bot_category
  • cloudflare.asn
  • cloudflare.response.time_to_first_byte_ms
  • geo.timezone
  • geo.continent.code
  • geo.country.code
  • geo.locality.name
  • geo.locality.region
  • user_agent.original
  • user_agent.os.name
  • user_agent.os.version
  • user_agent.browser.name
  • user_agent.browser.major_version
  • user_agent.browser.version
  • user_agent.engine.name
  • user_agent.engine.version
  • user_agent.device.type
  • user_agent.device.vendor
  • user_agent.device.model
  • http.request.method
  • http.request.header.accept
  • http.request.header.accept-encoding
  • http.request.header.accept-language
  • url.full
  • url.path
  • network.protocol.name

Scheduled Handler

  • faas.cron
  • cloudflare.scheduled_time

QueueHandler

  • cloudflare.queue.name
  • cloudflare.queue.batch_size

RPC Handler

  • jsrpc.method

Email Handler

  • cloudflare.email.from
  • cloudflare.email.to
  • cloudflare.email.size

Tail Handler

  • cloudflare.trace.count

Alarm Handler

  • cloudflare.scheduled_time

RPC

Workers tracing emits these spans for RPC calls between Workers and from Workers to Durable Objects.

RPC session

A caller-side span that covers the lifetime of an RPC session. Calls that reuse the session appear under this span.

This span has no additional RPC-specific attributes.

RPC invocation

A callee-side span that covers an RPC invocation in the target Worker or Durable Object.

RPC call

A caller-side or callee-side span for an individual method call or property access.

Caller-side and callee-side spans use the execution color of the Worker or Durable Object where they run. The color change marks the execution boundary.

  • jsrpc.method - The method name or property path
  • jsrpc.operation - The operation type: call or getProperty
  • jsrpc.target_kind - The type of RPC target
  • jsrpc.caller_span_id - On callee-side spans, the corresponding caller-side jsRpcCall span ID

D1

Attributes available on all D1 spans

  • db.system.name
  • db.operation.name
  • db.query.text
  • cloudflare.binding.type
  • cloudflare.d1.response.size_after
  • cloudflare.d1.response.rows_read
  • cloudflare.d1.response.rows_written
  • cloudflare.d1.response.last_row_id
  • cloudflare.d1.response.changed_db
  • cloudflare.d1.response.changes
  • cloudflare.d1.response.served_by_region
  • cloudflare.d1.response.served_by_primary
  • cloudflare.d1.response.sql_duration_ms
  • cloudflare.d1.response.total_attempts

d1_batch

  • db.operation.batch.size
  • cloudflare.d1.query.bookmark
  • cloudflare.d1.response.bookmark

d1_exec

d1_first

  • cloudflare.d1.query.bookmark
  • cloudflare.d1.response.bookmark

d1_run

  • cloudflare.d1.query.bookmark
  • cloudflare.d1.response.bookmark

d1_all

  • cloudflare.d1.query.bookmark
  • cloudflare.d1.response.bookmark

d1_raw

  • cloudflare.d1.query.bookmark
  • cloudflare.d1.response.bookmark

Browser Run

browser_rendering_fetch


Workers KV

Attributes available on all KV spans

  • db.system.name
  • db.operation.name
  • cloudflare.binding.name
  • cloudflare.binding.type

kv_get

  • cloudflare.kv.query.keys
  • cloudflare.kv.query.keys.count
  • cloudflare.kv.query.type
  • cloudflare.kv.query.cache_ttl
  • cloudflare.kv.response.size
  • cloudflare.kv.response.returned_rows
  • cloudflare.kv.response.metadata
  • cloudflare.kv.response.cache_status

kv_getWithMetadata

  • cloudflare.kv.query.keys
  • cloudflare.kv.query.keys.count
  • cloudflare.kv.query.type
  • cloudflare.kv.query.cache_ttl
  • cloudflare.kv.response.size
  • cloudflare.kv.response.returned_rows
  • cloudflare.kv.response.metadata
  • cloudflare.kv.response.cache_status

kv_put

  • cloudflare.kv.query.keys
  • cloudflare.kv.query.keys.count
  • cloudflare.kv.query.value_type
  • cloudflare.kv.query.expiration
  • cloudflare.kv.query.expiration_ttl
  • cloudflare.kv.query.metadata
  • cloudflare.kv.query.payload.size

kv_delete

  • cloudflare.kv.query.keys
  • cloudflare.kv.query.keys.colunt

kv_list

  • cloudflare.kv.query.prefix
  • cloudflare.kv.query.limit
  • cloudflare.kv.query.cursor
  • cloudflare.kv.response.size
  • cloudflare.kv.response.returned_rows
  • cloudflare.kv.response.list_complete
  • cloudflare.kv.response.cursor
  • cloudflare.kv.response.cache_status
  • cloudflare.kv.response.expiration

R2

Attributes available on all R2 spans

  • cloudflare.binding.type
  • cloudflare.binding.name
  • cloudflare.r2.bucket
  • cloudflare.r2.operation
  • cloudflare.r2.response.success
  • cloudflare.r2.error.message
  • cloudflare.r2.error.code

r2_head

  • cloudflare.r2.request.key
  • cloudflare.r2.response.etag
  • cloudflare.r2.response.size
  • cloudflare.r2.response.uploaded
  • cloudflare.r2.response.checksum.value
  • cloudflare.r2.response.checksum.type
  • cloudflare.r2.response.storage_class
  • cloudflare.r2.response.ssec_key
  • cloudflare.r2.response.content_type
  • cloudflare.r2.response.content_encoding
  • cloudflare.r2.response.content_disposition
  • cloudflare.r2.response.content_language
  • cloudflare.r2.response.cache_control
  • cloudflare.r2.response.cache_expiry
  • cloudflare.r2.response.custom_metadata

r2_get