第 15 章 网络流格式参考
这些是网络流格式的规格,在内部和将流导出到 Kafka 时使用。
15.1. 网络流格式参考
这是网络流格式的规格。在配置了 Kafka 导出器时,使用这种格式,用于 Prometheus 指标标签,以及 Loki 存储的内部。
"Filter ID"列显示定义 Quick Filters 时使用的相关名称(请参阅 FlowCollector
规格中的 spec.consolePlugin.quickFilters
)。
当直接查询 Loki 时,"Loki label"列很有用:需要使用 流选择器 来选择标签字段。
"Cardinality" 列包括有关在此字段用作带有 FlowMetric
API 的 Prometheus 标签时代表的指标卡inality 的信息。如需更多信息,请参阅 FlowMetrics
文档来了解使用此 API 的更多信息。
Name | 类型 | 描述 | 过滤 ID | Loki 标签 | 基准 | OpenTelemetry |
---|---|---|---|---|---|---|
| number | 字节数 | 不适用 | 否 | avoid | bytes |
| number | 从 DNS tracker ebpf hook 功能返回的错误数 |
| 否 | fine | dns.errno |
| number | DNS 记录的 DNS 标记 | 不适用 | 否 | fine | dns.flags |
| string | 解析的 DNS 标头 RCODE 名称 |
| 否 | fine | dns.responsecode |
| number | DNS 记录 ID |
| 否 | avoid | dns.id |
| number | DNS 请求和响应之间的时间(以毫秒为单位) |
| 否 | avoid | dns.latency |
| number | 差异化服务代码点 (DSCP) 值 |
| 否 | fine | dscp |
| string | 目标 IP 地址 (ipv4 或 ipv6) |
| 否 | avoid | destination.address |
| string | 目的地节点 IP |
| 否 | fine | destination.k8s.host.address |
| string | 目标节点名称 |
| 否 | fine | destination.k8s.host.name |
| string | 目标 Kubernetes 对象的名称,如 Pod 名称、服务名称或节点名称。 |
| 否 | careful | destination.k8s.name |
| string | 目标命名空间 |
| 是 | fine | destination.k8s.namespace.name |
| string | 目标所有者的名称,如 Deployment 名称、StatefulSet 名称等。 |
| 是 | fine | destination.k8s.owner.name |
| string | 目标所有者的类型,如 Deployment、StatefulSet 等。 |
| 否 | fine | destination.k8s.owner.kind |
| string | 目标 Kubernetes 对象的类型,如 Pod、Service 或 Node。 |
| 是 | fine | destination.k8s.kind |
| string | 目标可用区 |
| 是 | fine | destination.zone |
| string | 目标 MAC 地址 |
| 否 | avoid | destination.mac |
| number | 目的地端口 |
| 否 | careful | destination.port |
| string | 目的地子网标签 |
| 否 | fine | 不适用 |
| 布尔值 | 指明此流是否也从同一主机上的另一个接口捕获 | 不适用 | 否 | fine | 不适用 |
| number |
在流中包括唯一 TCP 标志的逻辑 OR 组合,根据 RFC-9293,带有额外的自定义标志来代表每个数据包的组合: |
| 否 | fine | tcp.flags |
| number |
来自节点观察点的流解释方向。可以是: |
| 是 | fine | host.direction |
| number | ICMP 代码 |
| 否 | fine | icmp.code |
| number | ICMP 类型 |
| 否 | fine | icmp.type |
| number |
来自网络接口观察点的流方向。可以是: |
| 否 | fine | interface.directions |
| string | 网络接口 |
| 否 | careful | interface.names |
| string | 集群名称或标识符 |
| 是 | fine | k8s.cluster.name |
| string | 流层: 'app' 或 'infra' |
| 是 | fine | k8s.layer |
| string | 网络事件流监控 |
| 否 | avoid | 不适用 |
| number | 数据包数 | 不适用 | 否 | avoid | packets |
| number | 内核丢弃的字节数 | 不适用 | 否 | avoid | drops.bytes |
| string | 最新丢弃原因 |
| 否 | fine | drops.latestcause |
| number | 最后丢弃的数据包上的 TCP 标志 | 不适用 | 否 | fine | drops.latestflags |
| string | 最后丢弃的数据包上的 TCP 状态 |
| 否 | fine | drops.lateststate |
| number | 内核丢弃的数据包数 | 不适用 | 否 | avoid | drops.packets |
| number | L4 协议 |
| 否 | fine | protocol |
| string | 源 IP 地址 (ipv4 或 ipv6) |
| 否 | avoid | source.address |
| string | 源节点 IP |
| 否 | fine | source.k8s.host.address |
| string | 源节点名称 |
| 否 | fine | source.k8s.host.name |
| string | 源 Kubernetes 对象的名称,如 Pod 名称、服务名称或节点名称。 |
| 否 | careful | source.k8s.name |
| string | 源命名空间 |
| 是 | fine | source.k8s.namespace.name |
| string | 源所有者的名称,如 Deployment 名称、StatefulSet 名称等。 |
| 是 | fine | source.k8s.owner.name |
| string | 源所有者的类型,如 Deployment、StatefulSet 等。 |
| 否 | fine | source.k8s.owner.kind |
| string | 源 Kubernetes 对象的类型,如 Pod、Service 或 Node。 |
| 是 | fine | source.k8s.kind |
| string | 源可用区 |
| 是 | fine | source.zone |
| string | 源 MAC 地址 |
| 否 | avoid | source.mac |
| number | 源端口 |
| 否 | careful | source.port |
| string | 源子网标签 |
| 否 | fine | 不适用 |
| number | 此流的结束时间戳,以毫秒为单位 | 不适用 | 否 | avoid | timeflowend |
| number | TCP Smoothed Round Trip Time (SRTT),单位为纳秒 |
| 否 | avoid | tcp.rtt |
| number | 开始此流的时间戳,以毫秒为单位 | 不适用 | 否 | avoid | timeflowstart |
| number | 由流被流收集器接收并处理时的时间戳,以秒为单位 | 不适用 | 否 | avoid | timereceived |
| string | 在对话跟踪中,对话标识符 |
| 否 | avoid | 不适用 |
| string | 记录类型:'flowLog' 用于常规流日志,或 'newConnection', 'heartbeat', 'endConnection' 用于对话跟踪 |
| 是 | fine | 不适用 |