URL

URL 属性

描述 URL 的属性。

Attributes

StabilityValue Type描述Example Values
url.domainDevelopment字符串url.full 中提取的域名,例如“opentelemetry.io”。[1]www.foo.bar; opentelemetry.io; 3.12.167.2; [1080:0:0:0:8:800:200C:417A]
url.extensionDevelopment字符串url.full 中提取的文件扩展名,不包含开头的点。[2]png; gz
url.fragmentStable字符串URI 片段组件SemConv
url.fullStable字符串根据 RFC3986 描述的网络资源的绝对 URL。[3]https://www.foo.bar/search?q=OpenTelemetry#SemConv; //
url.originalDevelopment字符串在事件源中看到的未修改的原始 URL。[4]https://www.foo.bar/search?q=OpenTelemetry#SemConv; search?q=OpenTelemetry
url.pathStable字符串The URI 路径组件 [5]/search
url.portDevelopmentinturl.full 中提取的端口443
url.queryStable字符串The URI 查询组件 [6]q=OpenTelemetry
url.registered_domainDevelopment字符串已注册的最高层级 URL 域名,已移除子域名。[7]example.com; foo.co.uk
url.schemeStable字符串The URI 方案组件,用于标识所使用的协议。https; ftp; telnet
url.subdomainDevelopment字符串完全限定域名中的子域名部分,包含除注册域名之外的所有名称。在部分限定域名中,或者如果无法确定完整名称的限定级别,则子域名包含注册域名下的所有名称。[8]east; sub2.sub1
url.templateDevelopment字符串The low-cardinality template of an 绝对路径引用/users/{id}; /users/:id; /users?id={id}
url.top_level_domainDevelopment字符串有效顶级域名 (eTLD),也称为域名后缀,是域名名称的最后一部分。例如,example.com 的顶级域名是 com。[9]com; co.uk

[1] url.domain: 在某些情况下,URL 可能直接指向 IP 地址和/或端口,而不包含域名。在这种情况下,IP 地址将被放入 domain 字段。如果 URL 包含由 [] 包围的 字面 IPv6 地址,那么 [] 字符也应包含在 domain 字段中。

[2] url.extension: 文件扩展名仅在存在时设置,因为并非所有 URL 都有文件扩展名。当文件名有多个扩展名(例如 example.tar.gz)时,应只捕获最后一个扩展名 gz,而不是 tar.gz

[3] url.full: 对于网络调用,URL 通常具有 scheme://host[:port][path][?query][#fragment] 格式,其中片段不会通过 HTTP 传输,但如果已知,仍应包含在内。

url.full 不能包含通过 URL 形式传递的凭证,例如 https://username:password@www.example.com/。在这种情况下,用户名和密码应被redacted,属性值应为 https://REDACTED:REDACTED@www.example.com/

url.full 应该捕获可用(或可以重建)的绝对 URL。

url.full 中提供的敏感内容应在仪表化工具能够识别时进行清除。

Development 查询字符串中以下键的值应默认redacted,并替换为 REDACTED 值。

此列表可能会随时间而更改。

当查询字符串值被redacted时,查询字符串键仍应保留,例如 https://www.example.com/path?color=blue&sig=REDACTED

[4] url.original: 在网络监控中,观察到的 URL 可能是完整的 URL,而在访问日志中,URL 通常仅表示为路径。此字段旨在表示所观察到的 URL,无论其是否完整。url.original 可能包含通过 URL 形式传递的凭证,例如 https://username:password@www.example.com/。在这种情况下,不应redacted密码和用户名,属性值应保持不变。

[5] url.path: url.path 中提供的敏感内容应在仪表化工具能够识别时进行清除。

[6] url.query: url.query 中提供的敏感内容应在仪表化工具能够识别时进行清除。

Development 查询字符串中以下键的值应默认redacted,并替换为 REDACTED 值。

此列表可能会随时间而更改。

当查询字符串值被redacted时,查询字符串键仍应保留,例如 q=OpenTelemetry&sig=REDACTED

[7] url.registered_domain: 此值可以使用 公共后缀列表精确确定。例如,foo.example.com 的注册域名是 example.com。尝试通过简单地取最后两个标签来近似此值,对于像 co.uk 这样的 TLD 将不起作用。

[8] url.subdomain: www.east.mydomain.co.uk 的子域名部分是 east。如果域名具有多个子域名级别,例如 sub2.sub1.example.com,则子域名字段应包含 sub2.sub1,不带尾随点。

[9] url.top_level_domain: 此值可以使用 公共后缀列表精确确定。