Attributes describing URL.
Attribute | Type | Description | Examples | Stability |
---|---|---|---|---|
url.domain |
string | Domain extracted from the url.full , such as "opentelemetry.io". [1] |
www.foo.bar ; opentelemetry.io ; 3.12.167.2 ; [1080:0:0:0:8:800:200C:417A] |
|
url.extension |
string | The file extension extracted from the url.full , excluding the leading dot. [2] |
png ; gz |
|
url.fragment |
string | The URI fragment component | SemConv |
|
url.full |
string | Absolute URL describing a network resource according to RFC3986 [3] | https://www.foo.bar/search?q=OpenTelemetry#SemConv ; //localhost |
|
url.original |
string | Unmodified original URL as seen in the event source. [4] | https://www.foo.bar/search?q=OpenTelemetry#SemConv ; search?q=OpenTelemetry |
|
url.path |
string | The URI path component [5] | /search |
|
url.port |
int | Port extracted from the url.full |
443 |
|
url.query |
string | The URI query component [6] | q=OpenTelemetry |
|
url.registered_domain |
string | The highest registered url domain, stripped of the subdomain. [7] | example.com ; foo.co.uk |
|
url.scheme |
string | The URI scheme component identifying the used protocol. | https ; ftp ; telnet |
|
url.subdomain |
string | The subdomain portion of a fully qualified domain name includes all of the names except the host name under the registered_domain. In a partially qualified domain, or if the qualification level of the full name cannot be determined, subdomain contains all of the names below the registered domain. [8] | east ; sub2.sub1 |
|
url.template |
string | The low-cardinality template of an absolute path reference. | /users/{id} ; /users/:id ; /users?id={id} |
|
url.top_level_domain |
string | The effective top level domain (eTLD), also known as the domain suffix, is the last part of the domain name. For example, the top level domain for example.com is com . [9] |
com ; co.uk |
[1]: In some cases a URL may refer to an IP and/or port directly, without a domain name. In this case, the IP address would go to the domain field. If the URL contains a literal IPv6 address enclosed by [
and ]
, the [
and ]
characters should also be captured in the domain field.
[2]: The file extension is only set if it exists, as not every url has a file extension. When the file name has multiple extensions example.tar.gz
, only the last one should be captured gz
, not tar.gz
.
[3]: For network calls, URL usually has scheme://host[:port][path][?query][#fragment]
format, where the fragment is not transmitted over HTTP, but if it is known, it SHOULD be included nevertheless.
url.full
MUST NOT contain credentials passed via URL in form of https://username:password@www.example.com/
. In such case username and password SHOULD be redacted and attribute's value SHOULD be https://REDACTED:REDACTED@www.example.com/
.
url.full
SHOULD capture the absolute URL when it is available (or can be reconstructed). Sensitive content provided in url.full
SHOULD be scrubbed when instrumentations can identify it.
[4]: In network monitoring, the observed URL may be a full URL, whereas in access logs, the URL is often just represented as a path. This field is meant to represent the URL as it was observed, complete or not.
url.original
might contain credentials passed via URL in form of https://username:password@www.example.com/
. In such case password and username SHOULD NOT be redacted and attribute's value SHOULD remain the same.
[5]: Sensitive content provided in url.path
SHOULD be scrubbed when instrumentations can identify it.
[6]: Sensitive content provided in url.query
SHOULD be scrubbed when instrumentations can identify it.
[7]: This value can be determined precisely with the public suffix list. For example, the registered domain for foo.example.com
is example.com
. Trying to approximate this by simply taking the last two labels will not work well for TLDs such as co.uk
.
[8]: The subdomain portion of www.east.mydomain.co.uk
is east
. If the domain has multiple levels of subdomain, such as sub2.sub1.example.com
, the subdomain field should contain sub2.sub1
, with no trailing period.
[9]: This value can be determined precisely with the public suffix list.