Http Attributes

41 attributes in this category.28 stable·13 deprecated

41 attributes

Stable Attributes

http.decoded_response_content_length

integerScrub: ManualVisibility: PublicOTel: False

The decoded body size of the response (in bytes).

Example456
Changelog
v0.4.0#228
v0.0.0
Raw JSON
{
  "key": "http.decoded_response_content_length",
  "brief": "The decoded body size of the response (in bytes).",
  "type": "integer",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": false,
  "visibility": "public",
  "example": 456,
  "changelog": [
    {
      "version": "0.4.0",
      "prs": [
        228
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}

http.fragment

stringScrub: AutoVisibility: PublicOTel: False

The fragments present in the URI. Note that this contains the leading # character, while the `url.fragment` attribute does not.

Example#details
Changelog
v0.0.0
Raw JSON
{
  "key": "http.fragment",
  "brief": "The fragments present in the URI. Note that this contains the leading # character, while the `url.fragment` attribute does not.",
  "type": "string",
  "apply_scrubbing": {
    "key": "auto"
  },
  "is_in_otel": false,
  "visibility": "public",
  "example": "#details",
  "changelog": [
    {
      "version": "0.0.0"
    }
  ]
}

http.query

stringScrub: AutoVisibility: PublicOTel: False

The query string present in the URL. Note that this contains the leading ? character, while the `url.query` attribute does not.

Scrubbing ReasonQuery string values can contain sensitive information. Clients should attempt to scrub parameters that might contain sensitive information.
Example?foo=bar&bar=baz
Changelog
v0.0.0
Raw JSON
{
  "key": "http.query",
  "brief": "The query string present in the URL. Note that this contains the leading ? character, while the `url.query` attribute does not.",
  "type": "string",
  "apply_scrubbing": {
    "key": "auto",
    "reason": "Query string values can contain sensitive information. Clients should attempt to scrub parameters that might contain sensitive information."
  },
  "is_in_otel": false,
  "visibility": "public",
  "example": "?foo=bar&bar=baz",
  "changelog": [
    {
      "version": "0.0.0"
    }
  ]
}

http.request.body.data

stringScrub: AutoVisibility: PublicOTel: False

HTTP request body data. Can be given as string or structural data of any format.

Example[{"role": "user", "message": "hello"}]
Changelog
v0.6.0#336Added http.request.body.data attribute
Raw JSON
{
  "key": "http.request.body.data",
  "brief": "HTTP request body data. Can be given as string or structural data of any format.",
  "type": "string",
  "apply_scrubbing": {
    "key": "auto"
  },
  "is_in_otel": false,
  "visibility": "public",
  "example": "[{\"role\": \"user\", \"message\": \"hello\"}]",
  "changelog": [
    {
      "version": "0.6.0",
      "prs": [
        336
      ],
      "description": "Added http.request.body.data attribute"
    }
  ]
}

http.request.connect_start

doubleScrub: ManualVisibility: PublicOTel: False

The UNIX timestamp representing the time immediately before the user agent starts establishing the connection to the server to retrieve the resource.

Example1732829555.111
Changelog
v0.4.0#228
v0.1.0#134
v0.0.0
Raw JSON
{
  "key": "http.request.connect_start",
  "brief": "The UNIX timestamp representing the time immediately before the user agent starts establishing the connection to the server to retrieve the resource.",
  "type": "double",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": false,
  "visibility": "public",
  "example": 1732829555.111,
  "changelog": [
    {
      "version": "0.4.0",
      "prs": [
        228
      ]
    },
    {
      "version": "0.1.0",
      "prs": [
        134
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}

http.request.connection_end

doubleScrub: ManualVisibility: PublicOTel: False

The UNIX timestamp representing the time immediately after the browser finishes establishing the connection to the server to retrieve the resource. The timestamp value includes the time interval to establish the transport connection, as well as other time intervals such as TLS handshake and SOCKS authentication.

Example1732829555.15
Changelog
v0.4.0#228
v0.1.0#134
v0.0.0
Raw JSON
{
  "key": "http.request.connection_end",
  "brief": "The UNIX timestamp representing the time immediately after the browser finishes establishing the connection to the server to retrieve the resource. The timestamp value includes the time interval to establish the transport connection, as well as other time intervals such as TLS handshake and SOCKS authentication.",
  "type": "double",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": false,
  "visibility": "public",
  "example": 1732829555.15,
  "changelog": [
    {
      "version": "0.4.0",
      "prs": [
        228
      ]
    },
    {
      "version": "0.1.0",
      "prs": [
        134
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}

http.request.domain_lookup_end

doubleScrub: ManualVisibility: PublicOTel: False

The UNIX timestamp representing the time immediately after the browser finishes the domain-name lookup for the resource.

Example1732829555.201
Changelog
v0.4.0#228
v0.1.0#134
v0.0.0
Raw JSON
{
  "key": "http.request.domain_lookup_end",
  "brief": "The UNIX timestamp representing the time immediately after the browser finishes the domain-name lookup for the resource.",
  "type": "double",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": false,
  "visibility": "public",
  "example": 1732829555.201,
  "changelog": [
    {
      "version": "0.4.0",
      "prs": [
        228
      ]
    },
    {
      "version": "0.1.0",
      "prs": [
        134
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}

http.request.domain_lookup_start

doubleScrub: ManualVisibility: PublicOTel: False

The UNIX timestamp representing the time immediately before the browser starts the domain name lookup for the resource.

Example1732829555.322
Changelog
v0.4.0#228
v0.1.0#134
v0.0.0
Raw JSON
{
  "key": "http.request.domain_lookup_start",
  "brief": "The UNIX timestamp representing the time immediately before the browser starts the domain name lookup for the resource.",
  "type": "double",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": false,
  "visibility": "public",
  "example": 1732829555.322,
  "changelog": [
    {
      "version": "0.4.0",
      "prs": [
        228
      ]
    },
    {
      "version": "0.1.0",
      "prs": [
        134
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}

http.request.fetch_start

doubleScrub: ManualVisibility: PublicOTel: False

The UNIX timestamp representing the time immediately before the browser starts to fetch the resource.

Example1732829555.389
Changelog
v0.4.0#228
v0.1.0#134
v0.0.0
Raw JSON
{
  "key": "http.request.fetch_start",
  "brief": "The UNIX timestamp representing the time immediately before the browser starts to fetch the resource.",
  "type": "double",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": false,
  "visibility": "public",
  "example": 1732829555.389,
  "changelog": [
    {
      "version": "0.4.0",
      "prs": [
        228
      ]
    },
    {
      "version": "0.1.0",
      "prs": [
        134
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}

http.request.header.<key>

string[]Scrub: AutoVisibility: PublicOTel: TrueDynamic

HTTP request headers, <key> being the normalized HTTP Header name (lowercase), the value being the header values.

Examplehttp.request.header.custom-header=['foo', 'bar']
Dynamic SuffixYes - the key contains dynamic parts
Changelog
v0.4.0#201#204
v0.1.0#103
Raw JSON
{
  "key": "http.request.header.<key>",
  "brief": "HTTP request headers, <key> being the normalized HTTP Header name (lowercase), the value being the header values.",
  "has_dynamic_suffix": true,
  "type": "string[]",
  "apply_scrubbing": {
    "key": "auto"
  },
  "is_in_otel": true,
  "visibility": "public",
  "example": "http.request.header.custom-header=['foo', 'bar']",
  "changelog": [
    {
      "version": "0.4.0",
      "prs": [
        201,
        204
      ]
    },
    {
      "version": "0.1.0",
      "prs": [
        103
      ]
    }
  ]
}

http.request.method

stringScrub: ManualVisibility: PublicOTel: True

The HTTP method used.

Changelog
v0.1.0#127
v0.0.0
Raw JSON
{
  "key": "http.request.method",
  "brief": "The HTTP method used.",
  "type": "string",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": true,
  "visibility": "public",
  "example": "GET",
  "alias": [
    "method",
    "http.method",
    "http.request_method"
  ],
  "changelog": [
    {
      "version": "0.1.0",
      "prs": [
        127
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}

http.request.redirect_end

doubleScrub: ManualVisibility: PublicOTel: False

The UNIX timestamp representing the timestamp immediately after receiving the last byte of the response of the last redirect

Example1732829558.502
Changelog
v0.4.0#228
v0.1.0#130#134
Raw JSON
{
  "key": "http.request.redirect_end",
  "brief": "The UNIX timestamp representing the timestamp immediately after receiving the last byte of the response of the last redirect",
  "type": "double",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": false,
  "visibility": "public",
  "example": 1732829558.502,
  "changelog": [
    {
      "version": "0.4.0",
      "prs": [
        228
      ]
    },
    {
      "version": "0.1.0",
      "prs": [
        130,
        134
      ]
    }
  ]
}

http.request.redirect_start

doubleScrub: ManualVisibility: PublicOTel: False

The UNIX timestamp representing the start time of the fetch which that initiates the redirect.

Example1732829555.495
Changelog
v0.4.0#228
v0.1.0#134
v0.0.0
Raw JSON
{
  "key": "http.request.redirect_start",
  "brief": "The UNIX timestamp representing the start time of the fetch which that initiates the redirect.",
  "type": "double",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": false,
  "visibility": "public",
  "example": 1732829555.495,
  "changelog": [
    {
      "version": "0.4.0",
      "prs": [
        228
      ]
    },
    {
      "version": "0.1.0",
      "prs": [
        134
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}

http.request.request_start

doubleScrub: ManualVisibility: PublicOTel: False

The UNIX timestamp representing the time immediately before the browser starts requesting the resource from the server, cache, or local resource. If the transport connection fails and the browser retires the request, the value returned will be the start of the retry request.

Example1732829555.51
Changelog
v0.4.0#228
v0.1.0#134
v0.0.0
Raw JSON
{
  "key": "http.request.request_start",
  "brief": "The UNIX timestamp representing the time immediately before the browser starts requesting the resource from the server, cache, or local resource. If the transport connection fails and the browser retires the request, the value returned will be the start of the retry request.",
  "type": "double",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": false,
  "visibility": "public",
  "example": 1732829555.51,
  "changelog": [
    {
      "version": "0.4.0",
      "prs": [
        228
      ]
    },
    {
      "version": "0.1.0",
      "prs": [
        134
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}

http.request.resend_count

integerScrub: ManualVisibility: PublicOTel: False

The ordinal number of request resending attempt (for any reason, including redirects).

Example2
Changelog
v0.4.0#228
v0.0.0
Raw JSON
{
  "key": "http.request.resend_count",
  "brief": "The ordinal number of request resending attempt (for any reason, including redirects).",
  "type": "integer",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": false,
  "visibility": "public",
  "example": 2,
  "changelog": [
    {
      "version": "0.4.0",
      "prs": [
        228
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}

http.request.response_end

doubleScrub: ManualVisibility: PublicOTel: False

The UNIX timestamp representing the time immediately after the browser receives the last byte of the resource or immediately before the transport connection is closed, whichever comes first.

Example1732829555.89
Changelog
v0.4.0#228
v0.1.0#134
v0.0.0
Raw JSON
{
  "key": "http.request.response_end",
  "brief": "The UNIX timestamp representing the time immediately after the browser receives the last byte of the resource or immediately before the transport connection is closed, whichever comes first.",
  "type": "double",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": false,
  "visibility": "public",
  "example": 1732829555.89,
  "changelog": [
    {
      "version": "0.4.0",
      "prs": [
        228
      ]
    },
    {
      "version": "0.1.0",
      "prs": [
        134
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}

http.request.response_start

doubleScrub: ManualVisibility: PublicOTel: False

The UNIX timestamp representing the time immediately before the browser starts requesting the resource from the server, cache, or local resource. If the transport connection fails and the browser retires the request, the value returned will be the start of the retry request.

Example1732829555.7
Changelog
v0.4.0#228
v0.1.0#134
v0.0.0
Raw JSON
{
  "key": "http.request.response_start",
  "brief": "The UNIX timestamp representing the time immediately before the browser starts requesting the resource from the server, cache, or local resource. If the transport connection fails and the browser retires the request, the value returned will be the start of the retry request.",
  "type": "double",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": false,
  "visibility": "public",
  "example": 1732829555.7,
  "changelog": [
    {
      "version": "0.4.0",
      "prs": [
        228
      ]
    },
    {
      "version": "0.1.0",
      "prs": [
        134
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}

http.request.same_origin

booleanScrub: ManualVisibility: PublicOTel: False

Indicates that a URL has the same origin as the current page's origin in the browser.

Exampletrue
Changelog
v0.16.0#456Added http.request.same_origin attribute
Raw JSON
{
  "key": "http.request.same_origin",
  "brief": "Indicates that a URL has the same origin as the current page's origin in the browser.",
  "type": "boolean",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": false,
  "visibility": "public",
  "example": true,
  "alias": [
    "url.same_origin"
  ],
  "changelog": [
    {
      "version": "0.16.0",
      "prs": [
        456
      ],
      "description": "Added http.request.same_origin attribute"
    }
  ]
}

http.request.secure_connection_start

doubleScrub: ManualVisibility: PublicOTel: False

The UNIX timestamp representing the time immediately before the browser starts the handshake process to secure the current connection. If a secure connection is not used, the property returns zero.

Example1732829555.73
Changelog
v0.4.0#228
v0.1.0#134
v0.0.0
Raw JSON
{
  "key": "http.request.secure_connection_start",
  "brief": "The UNIX timestamp representing the time immediately before the browser starts the handshake process to secure the current connection. If a secure connection is not used, the property returns zero.",
  "type": "double",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": false,
  "visibility": "public",
  "example": 1732829555.73,
  "changelog": [
    {
      "version": "0.4.0",
      "prs": [
        228
      ]
    },
    {
      "version": "0.1.0",
      "prs": [
        134
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}

http.request.time_to_first_byte

doubleScrub: ManualVisibility: PublicOTel: False

The time in seconds from the browser's timeorigin to when the first byte of the request's response was received. See https://web.dev/articles/ttfb#measure-resource-requests

Example1.032
Changelog
v0.4.0#228
v0.1.0#131
Raw JSON
{
  "key": "http.request.time_to_first_byte",
  "brief": "The time in seconds from the browser's timeorigin to when the first byte of the request's response was received. See https://web.dev/articles/ttfb#measure-resource-requests",
  "type": "double",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": false,
  "visibility": "public",
  "example": 1.032,
  "changelog": [
    {
      "version": "0.4.0",
      "prs": [
        228
      ]
    },
    {
      "version": "0.1.0",
      "prs": [
        131
      ]
    }
  ]
}

http.request.worker_start

doubleScrub: ManualVisibility: PublicOTel: False

The UNIX timestamp representing the timestamp immediately before dispatching the FetchEvent if a Service Worker thread is already running, or immediately before starting the Service Worker thread if it is not already running.

Example1732829553.68
Changelog
v0.4.0#228
v0.1.0#130#134
Raw JSON
{
  "key": "http.request.worker_start",
  "brief": "The UNIX timestamp representing the timestamp immediately before dispatching the FetchEvent if a Service Worker thread is already running, or immediately before starting the Service Worker thread if it is not already running.",
  "type": "double",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": false,
  "visibility": "public",
  "example": 1732829553.68,
  "changelog": [
    {
      "version": "0.4.0",
      "prs": [
        228
      ]
    },
    {
      "version": "0.1.0",
      "prs": [
        130,
        134
      ]
    }
  ]
}

http.response.body.size

integerScrub: ManualVisibility: PublicOTel: True

The encoded body size of the response (in bytes).

Changelog
v0.4.0#228
v0.1.0#106
v0.0.0
Raw JSON
{
  "key": "http.response.body.size",
  "brief": "The encoded body size of the response (in bytes).",
  "type": "integer",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": true,
  "visibility": "public",
  "example": 123,
  "alias": [
    "http.response_content_length",
    "http.response.header.content-length"
  ],
  "changelog": [
    {
      "version": "0.4.0",
      "prs": [
        228
      ]
    },
    {
      "version": "0.1.0",
      "prs": [
        106
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}

http.response.header.<key>

string[]Scrub: AutoVisibility: PublicOTel: TrueDynamic

HTTP response headers, <key> being the normalized HTTP Header name (lowercase), the value being the header values.

Examplehttp.response.header.custom-header=['foo', 'bar']
Dynamic SuffixYes - the key contains dynamic parts
Changelog
v0.4.0#201#204
v0.1.0#103
Raw JSON
{
  "key": "http.response.header.<key>",
  "brief": "HTTP response headers, <key> being the normalized HTTP Header name (lowercase), the value being the header values.",
  "has_dynamic_suffix": true,
  "type": "string[]",
  "apply_scrubbing": {
    "key": "auto"
  },
  "is_in_otel": true,
  "visibility": "public",
  "example": "http.response.header.custom-header=['foo', 'bar']",
  "changelog": [
    {
      "version": "0.4.0",
      "prs": [
        201,
        204
      ]
    },
    {
      "version": "0.1.0",
      "prs": [
        103
      ]
    }
  ]
}

http.response.header.content-length

stringScrub: ManualVisibility: PublicOTel: True

The size of the message body sent to the recipient (in bytes)

Examplehttp.response.header.custom-header=['foo', 'bar']
Changelog
v0.1.0#127
v0.0.0
Raw JSON
{
  "key": "http.response.header.content-length",
  "brief": "The size of the message body sent to the recipient (in bytes)",
  "type": "string",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": true,
  "visibility": "public",
  "example": "http.response.header.custom-header=['foo', 'bar']",
  "alias": [
    "http.response_content_length",
    "http.response.body.size"
  ],
  "changelog": [
    {
      "version": "0.1.0",
      "prs": [
        127
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}

http.response.size

integerScrub: ManualVisibility: PublicOTel: True

The transfer size of the response (in bytes).

Changelog
v0.4.0#228
v0.0.0
Raw JSON
{
  "key": "http.response.size",
  "brief": "The transfer size of the response (in bytes).",
  "type": "integer",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": true,
  "visibility": "public",
  "example": 456,
  "alias": [
    "http.response_transfer_size"
  ],
  "changelog": [
    {
      "version": "0.4.0",
      "prs": [
        228
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}

http.response.status_code

integerScrub: ManualVisibility: PublicOTel: True

The status code of the HTTP response.

Example404
Changelog
v0.4.0#228
v0.0.0
Raw JSON
{
  "key": "http.response.status_code",
  "brief": "The status code of the HTTP response.",
  "type": "integer",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": true,
  "visibility": "public",
  "example": 404,
  "alias": [
    "http.status_code"
  ],
  "changelog": [
    {
      "version": "0.4.0",
      "prs": [
        228
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}

http.route

stringScrub: ManualVisibility: PublicOTel: True

The matched route, that is, the path template in the format used by the respective server framework.

Examples/users/:idmy-controller/my-action/{id}/posts
Aliasesroute
Additional Context
  • This attribute should primarily be set by server-side instrumentation that captures the framework route of an incoming request.
  • For `http.client` spans and client-side routing, use `url.template` instead.
Changelog
v0.19.0#505#521Added multiple examples, removed alias to `url.template`, added additional context
v0.1.0#127
v0.0.0
Raw JSON
{
  "key": "http.route",
  "brief": "The matched route, that is, the path template in the format used by the respective server framework.",
  "type": "string",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": true,
  "visibility": "public",
  "examples": [
    "/users/:id",
    "my-controller/my-action/{id}",
    "/posts"
  ],
  "alias": [
    "route"
  ],
  "additional_context": [
    "This attribute should primarily be set by server-side instrumentation that captures the framework route of an incoming request.",
    "For `http.client` spans and client-side routing, use `url.template` instead."
  ],
  "changelog": [
    {
      "version": "0.19.0",
      "prs": [
        505,
        521
      ],
      "description": "Added multiple examples, removed alias to `url.template`, added additional context"
    },
    {
      "version": "0.1.0",
      "prs": [
        127
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}

http.server.request.time_in_queue

doubleScrub: ManualVisibility: PublicOTel: False

The time in milliseconds the request spent in the server queue before processing began. Measured from the X-Request-Start header set by reverse proxies (e.g., Nginx, HAProxy, Heroku) to when the application started handling the request.

Example50
Changelog
v0.5.0#267
Raw JSON
{
  "key": "http.server.request.time_in_queue",
  "brief": "The time in milliseconds the request spent in the server queue before processing began. Measured from the X-Request-Start header set by reverse proxies (e.g., Nginx, HAProxy, Heroku) to when the application started handling the request.",
  "type": "double",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": false,
  "visibility": "public",
  "example": 50,
  "changelog": [
    {
      "version": "0.5.0",
      "prs": [
        267
      ]
    }
  ]
}

Deprecated Attributes

These attributes are deprecated and should not be used in new code. See each attribute for migration guidance.

http.client_ipDeprecated

stringScrub: AutoVisibility: PublicOTel: True

Client address - domain name if available without reverse DNS lookup; otherwise, IP address or Unix domain socket name.

Exampleexample.com

Use client.address instead.

Changelog
v0.0.0
Raw JSON
{
  "key": "http.client_ip",
  "brief": "Client address - domain name if available without reverse DNS lookup; otherwise, IP address or Unix domain socket name.",
  "type": "string",
  "apply_scrubbing": {
    "key": "auto"
  },
  "is_in_otel": true,
  "visibility": "public",
  "example": "example.com",
  "deprecation": {
    "replacement": "client.address",
    "_status": null
  },
  "alias": [
    "client.address"
  ],
  "changelog": [
    {
      "version": "0.1.0",
      "prs": [
        61,
        106,
        127
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}

http.flavorDeprecated

stringScrub: ManualVisibility: PublicOTel: True

The actual version of the protocol used for network communication.

Changelog
v0.0.0
Raw JSON
{
  "key": "http.flavor",
  "brief": "The actual version of the protocol used for network communication.",
  "type": "string",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": true,
  "visibility": "public",
  "example": "1.1",
  "deprecation": {
    "replacement": "network.protocol.version",
    "_status": null
  },
  "alias": [
    "network.protocol.version",
    "net.protocol.version"
  ],
  "changelog": [
    {
      "version": "0.1.0",
      "prs": [
        61,
        108,
        127
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}

http.hostDeprecated

stringScrub: ManualVisibility: PublicOTel: True

The domain name.

Exampleexample.com

Use server.address instead.

Deprecated, use one of `server.address` or `client.address`, depending on the usage

Changelog
v0.19.0#534Added address as an alias
v0.0.0
Raw JSON
{
  "key": "http.host",
  "brief": "The domain name.",
  "type": "string",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": true,
  "visibility": "public",
  "example": "example.com",
  "deprecation": {
    "replacement": "server.address",
    "reason": "Deprecated, use one of `server.address` or `client.address`, depending on the usage",
    "_status": null
  },
  "alias": [
    "address",
    "server.address",
    "client.address",
    "http.server_name",
    "net.host.name",
    "server_name"
  ],
  "changelog": [
    {
      "version": "0.19.0",
      "prs": [
        534
      ],
      "description": "Added address as an alias"
    },
    {
      "version": "0.1.0",
      "prs": [
        61,
        108,
        127
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}

http.methodDeprecated

stringScrub: ManualVisibility: PublicOTel: True

The HTTP method used.

ExampleGET

Use http.request.method instead.

Status: backfill

Changelog
v0.1.0#61#127
v0.0.0
Raw JSON
{
  "key": "http.method",
  "brief": "The HTTP method used.",
  "type": "string",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": true,
  "visibility": "public",
  "example": "GET",
  "deprecation": {
    "replacement": "http.request.method",
    "_status": "backfill"
  },
  "alias": [
    "http.request.method",
    "http.request_method",
    "method"
  ],
  "changelog": [
    {
      "version": "0.1.0",
      "prs": [
        61,
        127
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}

http.request_methodDeprecated

stringScrub: ManualVisibility: PublicOTel: False

The HTTP method used.

ExampleGET

Use http.request.method instead.

Status: backfill

Changelog
v0.6.0#343Added http.request_method attribute
Raw JSON
{
  "key": "http.request_method",
  "brief": "The HTTP method used.",
  "type": "string",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": false,
  "visibility": "public",
  "example": "GET",
  "deprecation": {
    "replacement": "http.request.method",
    "_status": "backfill"
  },
  "alias": [
    "method",
    "http.method",
    "http.request.method"
  ],
  "changelog": [
    {
      "version": "0.6.0",
      "prs": [
        343
      ],
      "description": "Added http.request_method attribute"
    }
  ]
}

http.response_content_lengthDeprecated

integerScrub: ManualVisibility: PublicOTel: True

The encoded body size of the response (in bytes).

Changelog
v0.4.0#228
v0.1.0#61#106
v0.0.0
Raw JSON
{
  "key": "http.response_content_length",
  "brief": "The encoded body size of the response (in bytes).",
  "type": "integer",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": true,
  "visibility": "public",
  "example": 123,
  "deprecation": {
    "replacement": "http.response.body.size",
    "_status": "backfill"
  },
  "alias": [
    "http.response.body.size",
    "http.response.header.content-length"
  ],
  "changelog": [
    {
      "version": "0.4.0",
      "prs": [
        228
      ]
    },
    {
      "version": "0.1.0",
      "prs": [
        61,
        106
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}

http.response_transfer_sizeDeprecated

integerScrub: ManualVisibility: PublicOTel: False

The transfer size of the response (in bytes).

Example456

Use http.response.size instead.

Status: backfill

Changelog
v0.4.0#228
v0.1.0#61
v0.0.0
Raw JSON
{
  "key": "http.response_transfer_size",
  "brief": "The transfer size of the response (in bytes).",
  "type": "integer",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": false,
  "visibility": "public",
  "example": 456,
  "deprecation": {
    "replacement": "http.response.size",
    "_status": "backfill"
  },
  "alias": [
    "http.response.size"
  ],
  "changelog": [
    {
      "version": "0.4.0",
      "prs": [
        228
      ]
    },
    {
      "version": "0.1.0",
      "prs": [
        61
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}

http.schemeDeprecated

stringScrub: ManualVisibility: PublicOTel: True

The URI scheme component identifying the used protocol.

Examplehttps
Aliasesurl.scheme

Use url.scheme instead.

Changelog
v0.1.0#61#127
v0.0.0
Raw JSON
{
  "key": "http.scheme",
  "brief": "The URI scheme component identifying the used protocol.",
  "type": "string",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": true,
  "visibility": "public",
  "example": "https",
  "deprecation": {
    "replacement": "url.scheme",
    "_status": null
  },
  "alias": [
    "url.scheme"
  ],
  "changelog": [
    {
      "version": "0.1.0",
      "prs": [
        61,
        127
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}

http.server_nameDeprecated

stringScrub: ManualVisibility: PublicOTel: True

The server domain name

Changelog
v0.19.0#534Added address as an alias
v0.0.0
Raw JSON
{
  "key": "http.server_name",
  "brief": "The server domain name",
  "type": "string",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": true,
  "visibility": "public",
  "example": "example.com",
  "deprecation": {
    "replacement": "server.address",
    "_status": null
  },
  "alias": [
    "address",
    "server.address",
    "net.host.name",
    "http.host",
    "server_name"
  ],
  "changelog": [
    {
      "version": "0.19.0",
      "prs": [
        534
      ],
      "description": "Added address as an alias"
    },
    {
      "version": "0.1.0",
      "prs": [
        61,
        108,
        127
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}

http.status_codeDeprecated

integerScrub: ManualVisibility: PublicOTel: True

The status code of the HTTP response.

Changelog
v0.4.0#228
v0.1.0#61
v0.0.0
Raw JSON
{
  "key": "http.status_code",
  "brief": "The status code of the HTTP response.",
  "type": "integer",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": true,
  "visibility": "public",
  "example": 404,
  "deprecation": {
    "replacement": "http.response.status_code",
    "_status": null
  },
  "alias": [
    "http.response.status_code"
  ],
  "changelog": [
    {
      "version": "0.4.0",
      "prs": [
        228
      ]
    },
    {
      "version": "0.1.0",
      "prs": [
        61
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}

http.targetDeprecated

stringScrub: AutoVisibility: PublicOTel: True

The pathname and query string of the URL.

Example/test?foo=bar#buzz

Use url.path instead.

This attribute is being deprecated in favor of url.path and url.query

Changelog
v0.1.0#61
v0.0.0
Raw JSON
{
  "key": "http.target",
  "brief": "The pathname and query string of the URL.",
  "type": "string",
  "apply_scrubbing": {
    "key": "auto"
  },
  "is_in_otel": true,
  "visibility": "public",
  "example": "/test?foo=bar#buzz",
  "deprecation": {
    "replacement": "url.path",
    "reason": "This attribute is being deprecated in favor of url.path and url.query",
    "_status": null
  },
  "changelog": [
    {
      "version": "0.1.0",
      "prs": [
        61
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}

http.urlDeprecated

stringScrub: AutoVisibility: PublicOTel: True

The URL of the resource that was fetched.

Examplehttps://example.com/test?foo=bar#buzz

Use url.full instead.

Changelog
v0.1.0#61#108
v0.0.0
Raw JSON
{
  "key": "http.url",
  "brief": "The URL of the resource that was fetched.",
  "type": "string",
  "apply_scrubbing": {
    "key": "auto"
  },
  "is_in_otel": true,
  "visibility": "public",
  "example": "https://example.com/test?foo=bar#buzz",
  "deprecation": {
    "replacement": "url.full",
    "_status": null
  },
  "alias": [
    "url.full",
    "url",
    "aws.request.url"
  ],
  "changelog": [
    {
      "version": "0.1.0",
      "prs": [
        61,
        108
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}

http.user_agentDeprecated

stringScrub: ManualVisibility: PublicOTel: True

Value of the HTTP User-Agent header sent by the client.

ExampleMozilla/5.0 (iPhone; CPU iPhone OS 14_7_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.1.2 Mobile/15E148 Safari/604.1

Use user_agent.original instead.

Changelog
v0.1.0#61#127
v0.0.0
Raw JSON
{
  "key": "http.user_agent",
  "brief": "Value of the HTTP User-Agent header sent by the client.",
  "type": "string",
  "apply_scrubbing": {
    "key": "manual"
  },
  "is_in_otel": true,
  "visibility": "public",
  "example": "Mozilla/5.0 (iPhone; CPU iPhone OS 14_7_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.1.2 Mobile/15E148 Safari/604.1",
  "deprecation": {
    "replacement": "user_agent.original",
    "_status": null
  },
  "alias": [
    "user_agent.original"
  ],
  "changelog": [
    {
      "version": "0.1.0",
      "prs": [
        61,
        127
      ]
    },
    {
      "version": "0.0.0"
    }
  ]
}