网络数据包捕获集成

编辑

网络数据包捕获集成

编辑

版本

1.32.1 (查看全部)

兼容的 Kibana 版本

8.6.2 或更高版本

支持的无服务器项目类型
这是什么?

安全
可观测性

订阅级别
这是什么?

基本

支持级别
这是什么?

Elastic

此集成会嗅探主机上的网络数据包并解析已知协议。

监控网络流量对于获得可观测性并保护您的环境至关重要,从而确保高水平的性能和安全性。“网络数据包捕获”集成会捕获应用程序服务器之间的网络流量,解码常见的应用程序层协议,并记录每个事务的有趣字段。

支持的协议

编辑

目前,“网络数据包捕获”支持以下协议

  • ICMP (v4 和 v6)
  • DHCP (v4)
  • DNS
  • HTTP
  • AMQP 0.9.1
  • Cassandra
  • Mysql
  • PostgreSQL
  • Redis
  • Thrift-RPC
  • MongoDB
  • Memcache
  • NFS
  • TLS
  • SIP/SDP (beta)

通用协议选项

编辑

以下选项适用于所有协议

map_to_ecs
编辑

将根目录中任何非 ECS Packetbeat 字段重新映射到其正确的 ECS 字段。这将重命名已移动的字段,以便这些字段不会出现在文档的根目录中,因此任何依赖于这些字段的规则都需要更新。

此选项的旧版行为是不重新映射到 ECS。此行为仍然是默认行为,但已弃用,建议用户将此选项设置为 true。

ECS 重新映射可能会对依赖于非 ECS 字段标识的工作流程产生影响,用户应在进行更改之前评估这些字段的使用情况。需要保留使用旧版映射收集的数据的用户可能需要重新索引其旧文档。有关执行此操作的说明,请参见此处。用于为每个数据流执行 ECS 重新映射的管道可在 堆栈管理摄取管道中找到,并搜索“logs-network_traffic compatibility”。

旧版行为的弃用和停用时间表可在此处找到

enabled
编辑

启用设置是一个布尔设置,用于启用或禁用协议,而无需注释掉配置部分。如果设置为 false,则禁用该协议。

默认值为 true。

ports
编辑

例外:对于 ICMP,必须使用选项 enabled

“网络数据包捕获”将在这些端口上查找以捕获特定协议的流量。“网络数据包捕获”会基于此部分中指定的端口安装 BPF 过滤器。如果数据包与过滤器不匹配,则丢弃该数据包只需极少的 CPU。 “网络数据包捕获”还使用此处指定的端口来确定要为每个数据包使用哪个解析器。

monitor_processes
编辑

如果启用此选项,则网络流量事件将使用与事件关联的进程的信息进行丰富。

默认值为 false。

send_request
编辑

如果启用此选项,则请求的原始消息(request 字段)将发送到 Elasticsearch。默认值为 false。当您要索引整个请求时,此选项很有用。请注意,对于 HTTP,默认情况下不包括正文,仅包括 HTTP 标头。

send_response
编辑

如果启用此选项,则响应的原始消息(response 字段)将发送到 Elasticsearch。默认值为 false。当您要索引整个响应时,此选项很有用。请注意,对于 HTTP,默认情况下不包括正文,仅包括 HTTP 标头。

transaction_timeout
编辑

每个协议的事务超时。过期的事务将不再与传入的响应相关联,而是立即发送到 Elasticsearch。

tags
编辑

将随事务事件发送的标签列表。此设置是可选的。

processors
编辑

要应用于协议生成的数据的处理程序列表。

keep_null
编辑

如果此选项设置为 true,则具有 null 值的字段将发布在输出文档中。默认情况下,keep_null 设置为 false

网络流

编辑

有关主机上网络连接的总体流信息。

您可以将“网络数据包捕获”配置为收集和报告有关网络流的统计信息。是在同一时间段内发送的一组数据包,这些数据包共享相同的属性,例如相同的源地址和目标地址以及协议。您可以使用此功能来分析网络上特定协议的网络流量。

对于每个流,“网络数据包捕获”都会报告从源发送到目标的包数和总字节数。每个流事件还包含有关源主机和目标主机的信息,例如其 IP 地址。对于双向流,“网络数据包捕获”会报告反向流的统计信息。

“网络数据包捕获”会收集并报告统计信息,直到包括传输层。

配置选项

您可以指定以下用于捕获流的选项。

enabled
编辑

如果设置为 true,则启用流支持。设置为 false 以禁用网络流支持,而无需删除或注释掉流部分。默认值为 true。

timeout
编辑

超时配置流的生命周期。如果在超时时间窗口内未收到任何流的数据包,则该流将被终止并报告。默认值为 30 秒。

period
编辑

配置报告间隔。所有流都在同一时间点报告。可以通过将值设置为 -1 来禁用定期报告。如果禁用,则流仍然在超时后报告。默认值为 10 秒。

导出的字段
字段 描述 类型

@timestamp

事件时间戳。

date

client.bytes

从客户端发送到服务器的字节。

long

client.geo.city_name

城市名称。

keyword

client.geo.continent_name

大洲的名称。

keyword

client.geo.country_iso_code

国家/地区 ISO 代码。

keyword

client.geo.country_name

国家/地区名称。

keyword

client.geo.location

经度和纬度。

geo_point

client.geo.region_iso_code

区域 ISO 代码。

keyword

client.geo.region_name

区域名称。

keyword

client.ip

客户端的 IP 地址(IPv4 或 IPv6)。

ip

client.port

客户端的端口。

long

client.process.args

启动事务的进程的命令行。

keyword

client.process.executable

客户端进程可执行文件的绝对路径。

keyword

client.process.name

启动事务的进程的名称。

keyword

client.process.start

客户端进程启动的时间。

date

client.process.working_directory

客户端进程的工作目录。

keyword

cloud.account.id

用于标识多租户环境中不同实体的云帐户或组织 ID。示例:AWS 帐户 ID、Google Cloud ORG ID 或其他唯一标识符。

keyword

cloud.availability_zone

此主机运行所在的可用区。

keyword

cloud.image.id

云实例的映像 ID。

keyword

cloud.instance.id

主机计算机的实例 ID。

keyword

cloud.instance.name

主机计算机的实例名称。

keyword

cloud.machine.type

主机计算机的机器类型。

keyword

cloud.project.id

Google Cloud 中项目的名称。

keyword

cloud.provider

云提供商的名称。示例值包括 aws、azure、gcp 或 digitalocean。

keyword

cloud.region

此主机运行所在的区域。

keyword

container.id

唯一的容器 ID。

keyword

container.image.name

构建容器所基于的映像的名称。

keyword

container.labels

映像标签。

object

container.name

容器名称。

keyword

data_stream.dataset

数据流数据集。

constant_keyword

data_stream.namespace

数据流命名空间。

constant_keyword

data_stream.type

数据流类型。

constant_keyword

destination.bytes

从目标发送到源的字节。

long

destination.geo.city_name

城市名称。

keyword

destination.geo.continent_name

大洲的名称。

keyword

destination.geo.country_iso_code

国家/地区 ISO 代码。

keyword

destination.geo.country_name

国家/地区名称。

keyword

destination.geo.location

经度和纬度。

geo_point

destination.geo.region_iso_code

区域 ISO 代码。

keyword

destination.geo.region_name

区域名称。

keyword

destination.ip

目标的 IP 地址(IPv4 或 IPv6)。

ip

destination.mac

目标的 MAC 地址。建议使用 RFC 7042 中的表示法格式:每个八位字节(即 8 位字节)由两个 [大写] 十六进制数字表示,给出八位字节的值作为无符号整数。连续的八位字节用连字符分隔。

keyword

destination.packets

从目标发送到源的数据包。

long

destination.port

目标的端口。

long

ecs.version

此事件符合的 ECS 版本。ecs.version 是必填字段,并且必须存在于所有事件中。在查询可能符合略有不同的 ECS 版本的多个索引时,此字段允许集成调整到事件的架构版本。

keyword

event.category

这是四个 ECS 分类字段之一,表示 ECS 类别层次结构中的第二级。event.category 表示 ECS 类别的“大类”。例如,筛选 event.category:process 会生成与进程活动相关的所有事件。此字段与用作子类别的 event.type 密切相关。此字段是一个数组。这将允许正确分类属于多个类别的某些事件。

keyword

event.dataset

数据集的名称。如果某个事件源发布多种类型的日志或事件(例如,访问日志、错误日志),则数据集用于指定该事件的来源。建议但不是必须以模块名称开头命名数据集名称,后跟一个点,然后是数据集名称。

keyword

event.duration

事件的持续时间,以纳秒为单位。如果知道 event.startevent.end,则此值应为结束时间和开始时间之间的差值。

long

event.end

event.end 包含事件结束或上次观察到活动时的日期。

date

event.kind

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的最高级别。event.kind 提供关于事件包含的信息类型的高级信息,而无需具体到事件的内容。例如,此字段的值区分警报事件和指标事件。此字段的值可用于通知应如何处理这些类型的事件。它们可能需要不同的保留策略、不同的访问控制,它还有助于了解数据是否以固定间隔传入。

keyword

event.module

此数据来自的模块的名称。如果您的监控代理支持使用模块或插件来处理给定来源的事件(例如,Apache 日志),则 event.module 应包含此模块的名称。

constant_keyword

event.start

event.start 包含事件开始的时间或首次观察到活动的时间。

date

event.type

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的第三级。event.type 表示一个分类“子桶”,当与 event.category 字段值一起使用时,可以将事件过滤到适合单个可视化的级别。此字段是一个数组。这将允许对属于多个事件类型的某些事件进行适当的分类。

keyword

flow.final

指示事件是否是流中的最后一个事件。如果 final 为 false,则该事件仅报告中间流状态。

boolean

flow.id

基于连接元数据和地址的内部流 ID。

keyword

flow.vlan

来自 802.1q 帧的 VLAN 标识符。如果存在多标记帧,则此字段将是一个数组,其中外部标记的 VLAN 标识符首先列出。

long

host.architecture

操作系统架构。

keyword

host.containerized

主机是否为容器。

boolean

host.domain

主机所属的域名。例如,在 Windows 上,这可以是主机的 Active Directory 域或 NetBIOS 域名。对于 Linux,这可以是主机 LDAP 提供程序的域。

keyword

host.hostname

主机的 hostname。它通常包含主机上的 hostname 命令返回的内容。

keyword

host.id

唯一的主机 ID。由于 hostname 并不总是唯一的,请使用在您的环境中具有意义的值。例如:当前 beat.name 的用法。

keyword

host.ip

主机 IP 地址。

ip

host.mac

主机 MAC 地址。

keyword

host.name

主机的名称。它可以包含 Unix 系统上 hostname 返回的内容、完全限定域名或用户指定的名称。发送者决定使用哪个值。

keyword

host.os.build

操作系统构建信息。

keyword

host.os.codename

操作系统代码名(如果有)。

keyword

host.os.family

操作系统系列(如 redhat、debian、freebsd、windows)。

keyword

host.os.kernel

操作系统内核版本,以原始字符串形式表示。

keyword

host.os.name

操作系统名称,不带版本。

keyword

host.os.name.text

host.os.name 的多字段。

text

host.os.platform

操作系统平台(如 centos、ubuntu、windows)。

keyword

host.os.version

操作系统版本,以原始字符串形式表示。

keyword

host.type

主机类型。对于云提供商,这可以是诸如 t2.medium 之类的机器类型。如果为虚拟机,则可以是容器,或其他在您的环境中具有意义的信息。

keyword

method

事务的命令/动词/方法。对于 HTTP,这是方法名称(GET、POST、PUT 等);对于 SQL,这是动词(SELECT、UPDATE、DELETE 等)。

keyword

network.bytes

在两个方向上传输的总字节数。如果已知 source.bytesdestination.bytes,则 network.bytes 是它们的总和。

long

network.community_id

源 IP 和目标 IP、端口以及通信中使用的协议的哈希值。这是一个与工具无关的用于标识流的标准。在 https://github.com/corelight/community-id-spec 了解更多信息。

keyword

network.direction

网络流量的方向。当从基于主机的监控上下文中映射事件时,请从主机的角度使用值“ingress”或“egress”填充此字段。当从基于网络或基于边界的监控上下文中映射事件时,请从网络边界的角度使用值“inbound”、“outbound”、“internal”或“external”填充此字段。请注意,“internal”未跨越边界,旨在描述边界内两台主机之间的通信。另请注意,“external”旨在描述边界外部两台主机之间的流量。例如,这对于 ISP 或 VPN 服务提供商可能很有用。

keyword

network.forwarded_ip

当源 IP 地址为代理时的主机 IP 地址。

ip

network.packets

在两个方向上传输的总数据包数。如果已知 source.packetsdestination.packets,则 network.packets 是它们的总和。

long

network.protocol

在 OSI 模型中,这将是应用层协议。例如,httpdnsssh。为了进行查询,必须将字段值标准化为小写。

keyword

network.transport

与 network.iana_number 相同,但使用传输层的关键字名称(udp、tcp、ipv6-icmp 等)。为了进行查询,必须将字段值标准化为小写。

keyword

network.type

在 OSI 模型中,这将是网络层。ipv4、ipv6、ipsec、pim 等。为了进行查询,必须将字段值标准化为小写。

keyword

network_traffic.flow.final

指示事件是否是流中的最后一个事件。如果 final 为 false,则该事件仅报告中间流状态。

boolean

network_traffic.flow.id

基于连接元数据和地址的内部流 ID。

keyword

network_traffic.flow.vlan

来自 802.1q 帧的 VLAN 标识符。如果存在多标记帧,则此字段将是一个数组,其中外部标记的 VLAN 标识符首先列出。

long

network_traffic.status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

observer.hostname

观察者的主机名。

keyword

observer.ip

观察者的 IP 地址。

ip

observer.mac

观察者的 MAC 地址。建议使用 RFC 7042 中的表示法格式:每个八位字节(即 8 位字节)由两个[大写]十六进制数字表示,给出该八位字节的值作为无符号整数。连续的八位字节用连字符分隔。

keyword

observer.name

观察者的自定义名称。这是可以赋予观察者的名称。例如,如果在组织中使用同一型号的多个防火墙,则这可能会有所帮助。如果不需要自定义名称,则该字段可以留空。

keyword

params

请求参数。对于 HTTP,这些是 POST 或 GET 参数。对于 Thrift-RPC,这些是请求中的参数。

text

path

事务引用的路径。对于 HTTP,这是 URL。对于 SQL 数据库,这是表名。对于键值存储,这是键。

keyword

process.args

进程参数的数组,从可执行文件的绝对路径开始。可能会经过过滤以保护敏感信息。

keyword

process.executable

进程可执行文件的绝对路径。

keyword

process.executable.text

process.executable 的多字段。

match_only_text

process.name

进程名称。有时称为程序名称或类似名称。

keyword

process.name.text

process.name 的多字段。

match_only_text

process.start

进程启动的时间。

date

process.working_directory

进程的工作目录。

keyword

process.working_directory.text

process.working_directory 的多字段。

match_only_text

query

人类可读格式的查询。对于 HTTP,它通常类似于 GET /users/_search?name=test。对于 MySQL,它类似于 SELECT id from users where name=test

keyword

related.hosts

在您的事件中看到的所有主机名或其他主机标识符。示例标识符包括 FQDN、域名、工作站名称或别名。

keyword

related.ip

在您的事件中看到的所有 IP。

ip

request

对于文本协议,这是在网络上看到的请求(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

resource

此事务引用的逻辑资源。对于 HTTP,这是 URL 路径,直到最后一个斜杠 (/)。例如,如果 URL 是 /users/1,则资源是 /users。对于数据库,资源通常是表名。并非所有事务类型都会填充该字段。

keyword

response

对于文本协议,这是在网络上看到的响应(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

server.bytes

从服务器发送到客户端的字节数。

long

server.geo.city_name

城市名称。

keyword

server.geo.continent_name

大洲的名称。

keyword

server.geo.country_iso_code

国家/地区 ISO 代码。

keyword

server.geo.country_name

国家/地区名称。

keyword

server.geo.location

经度和纬度。

geo_point

server.geo.region_iso_code

区域 ISO 代码。

keyword

server.geo.region_name

区域名称。

keyword

server.ip

服务器的 IP 地址(IPv4 或 IPv6)。

ip

server.port

服务器的端口。

long

server.process.args

为事务提供服务的进程的命令行。

keyword

server.process.executable

服务器进程可执行文件的绝对路径。

keyword

server.process.name

为事务提供服务的进程的名称。

keyword

server.process.start

服务器进程启动的时间。

date

server.process.working_directory

服务器进程的工作目录。

keyword

source.bytes

从源发送到目标的字节数。

long

source.geo.city_name

城市名称。

keyword

source.geo.continent_name

大洲的名称。

keyword

source.geo.country_iso_code

国家/地区 ISO 代码。

keyword

source.geo.country_name

国家/地区名称。

keyword

source.geo.location

经度和纬度。

geo_point

source.geo.region_iso_code

区域 ISO 代码。

keyword

source.geo.region_name

区域名称。

keyword

source.ip

源的 IP 地址(IPv4 或 IPv6)。

ip

source.mac

源的 MAC 地址。建议使用 RFC 7042 中的表示法格式:每个八位字节(即 8 位字节)由两个[大写]十六进制数字表示,给出该八位字节的值作为无符号整数。连续的八位字节用连字符分隔。

keyword

source.packets

从源发送到目标的数据包数。

long

source.port

源的端口。

long

status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

tags

用于标记每个事件的关键字列表。

keyword

类型

事务的类型(例如,HTTP、MySQL、Redis 或 RUM),如果是流程则为 “flow”。

keyword

示例

一个 flow 的示例事件如下所示

{
    "@timestamp": "2023-10-16T22:40:20.005Z",
    "agent": {
        "ephemeral_id": "005dde79-7459-4b47-ae00-972086b4f5db",
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "name": "docker-fleet-agent",
        "type": "packetbeat",
        "version": "8.6.2"
    },
    "data_stream": {
        "dataset": "network_traffic.flow",
        "namespace": "ep",
        "type": "logs"
    },
    "destination": {
        "bytes": 64,
        "ip": "::1",
        "packets": 1,
        "port": 8000
    },
    "ecs": {
        "version": "8.11.0"
    },
    "elastic_agent": {
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "snapshot": false,
        "version": "8.6.2"
    },
    "event": {
        "action": "network_flow",
        "agent_id_status": "verified",
        "category": [
            "network"
        ],
        "dataset": "network_traffic.flow",
        "duration": 73561,
        "end": "2023-10-16T22:39:45.677Z",
        "ingested": "2023-10-16T22:40:21Z",
        "kind": "event",
        "start": "2023-10-16T22:39:45.677Z",
        "type": [
            "connection",
            "end"
        ]
    },
    "flow": {
        "final": true,
        "id": "QAT///////8A////IP8AAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAUAfeMg"
    },
    "host": {
        "architecture": "x86_64",
        "containerized": false,
        "hostname": "docker-fleet-agent",
        "id": "f91b175388d443fca5c155815dfc2279",
        "ip": [
            "172.19.0.7"
        ],
        "mac": [
            "02-42-AC-13-00-07"
        ],
        "name": "docker-fleet-agent",
        "os": {
            "codename": "focal",
            "family": "debian",
            "kernel": "5.15.49-linuxkit",
            "name": "Ubuntu",
            "platform": "ubuntu",
            "type": "linux",
            "version": "20.04.5 LTS (Focal Fossa)"
        }
    },
    "network": {
        "bytes": 152,
        "community_id": "1:5y9AkdbV9U8xqD9dhlj6obkubHg=",
        "packets": 2,
        "transport": "tcp",
        "type": "ipv6"
    },
    "source": {
        "bytes": 88,
        "ip": "::1",
        "packets": 1,
        "port": 51320
    },
    "type": "flow"
}

协议

编辑

AMQP

编辑

配置选项

另请参阅 通用协议选项

max_body_length
编辑

请求或响应字段中显示的消息的最大字节大小。大于指定大小的消息将被截断。当启用 `send_request``send_response` 时,使用此选项以避免发布巨大的消息。默认值为 1000 字节。

parse_headers
编辑

如果设置为 true,网络数据包捕获会解析消息头字段中指定的附加参数。这些参数是键值对,用于指定消息的内容类型或消息优先级等信息。默认值为 true。

parse_arguments
编辑

如果设置为 true,网络数据包捕获会解析 AMQP 方法中指定的附加参数。这些参数是用户指定的键值对,可以是任意长度。默认值为 true。

hide_connection_information
编辑

如果设置为 false,也会显示协议的连接层方法,例如客户端打开和关闭连接和通道,或服务质量协商。默认值为 true。

为 AMQP 数据包发布的字段。

导出的字段
字段 描述 类型

@timestamp

事件时间戳。

date

amqp.app-id

创建应用程序 ID。

keyword

amqp.arguments

传递给某些方法的可选附加参数。可以是各种类型。

扁平化

amqp.auto-delete

如果设置,则在未使用时自动删除队列。

boolean

amqp.class-id

失败的方法类。

long

amqp.consumer-count

队列的消费者数量。

long

amqp.consumer-tag

消费者标识符,在当前通道中有效。

keyword

amqp.content-encoding

MIME 内容编码。

keyword

amqp.content-type

MIME 内容类型。

keyword

amqp.correlation-id

应用程序关联标识符。

keyword

amqp.delivery-mode

非持久性 (1) 或持久性 (2)。

keyword

amqp.delivery-tag

服务器分配且特定于通道的交付标签。

long

amqp.durable

如果设置,则请求持久的交换/队列。

boolean

amqp.exchange

交换机的名称。

keyword

amqp.exchange-type

交换机类型。

keyword

amqp.exclusive

如果设置,则请求独占队列。

boolean

amqp.expiration

消息过期规范。

keyword

amqp.headers

消息头字段表。

object

amqp.if-empty

仅在为空时删除。

boolean

amqp.if-unused

仅在未使用时删除。

boolean

amqp.immediate

请求立即交付。

boolean

amqp.mandatory

指示强制路由。

boolean

amqp.message-count

队列中的消息数量,对于新声明的队列将为零。

long

amqp.message-id

应用程序消息标识符。

keyword

amqp.method-id

失败的方法 ID。

long

amqp.multiple

确认多个消息。

boolean

amqp.no-ack

如果设置,则服务器不期望收到消息的确认。

boolean

amqp.no-local

如果设置,则服务器不会将消息发送到发布它们的连接。

boolean

amqp.no-wait

如果设置,则服务器不会响应此方法。

boolean

amqp.passive

如果设置,则不创建交换机/队列。

boolean

amqp.priority

消息优先级,0 到 9。

long

amqp.queue

队列名称标识 vhost 中的队列。

keyword

amqp.redelivered

指示消息已先前发送到此或其他客户端。

boolean

amqp.reply-code

AMQP 对错误的回复代码,类似于 HTTP 回复代码

long

amqp.reply-text

解释错误的文本。

keyword

amqp.reply-to

回复地址。

keyword

amqp.routing-key

消息路由键。

keyword

amqp.timestamp

消息时间戳。

keyword

amqp.type

消息类型名称。

keyword

amqp.user-id

创建用户 ID。

keyword

client.bytes

从客户端发送到服务器的字节。

long

client.geo.city_name

城市名称。

keyword

client.geo.continent_name

大洲的名称。

keyword

client.geo.country_iso_code

国家/地区 ISO 代码。

keyword

client.geo.country_name

国家/地区名称。

keyword

client.geo.location

经度和纬度。

geo_point

client.geo.region_iso_code

区域 ISO 代码。

keyword

client.geo.region_name

区域名称。

keyword

client.ip

客户端的 IP 地址(IPv4 或 IPv6)。

ip

client.port

客户端的端口。

long

client.process.args

启动事务的进程的命令行。

keyword

client.process.executable

客户端进程可执行文件的绝对路径。

keyword

client.process.name

启动事务的进程的名称。

keyword

client.process.start

客户端进程启动的时间。

date

client.process.working_directory

客户端进程的工作目录。

keyword

cloud.account.id

用于标识多租户环境中不同实体的云帐户或组织 ID。示例:AWS 帐户 ID、Google Cloud ORG ID 或其他唯一标识符。

keyword

cloud.availability_zone

此主机运行所在的可用区。

keyword

cloud.image.id

云实例的映像 ID。

keyword

cloud.instance.id

主机计算机的实例 ID。

keyword

cloud.instance.name

主机计算机的实例名称。

keyword

cloud.machine.type

主机计算机的机器类型。

keyword

cloud.project.id

Google Cloud 中项目的名称。

keyword

cloud.provider

云提供商的名称。示例值包括 aws、azure、gcp 或 digitalocean。

keyword

cloud.region

此主机运行所在的区域。

keyword

container.id

唯一的容器 ID。

keyword

container.image.name

构建容器所基于的映像的名称。

keyword

container.labels

映像标签。

object

container.name

容器名称。

keyword

data_stream.dataset

数据流数据集。

constant_keyword

data_stream.namespace

数据流命名空间。

constant_keyword

data_stream.type

数据流类型。

constant_keyword

destination.bytes

从目标发送到源的字节。

long

destination.geo.city_name

城市名称。

keyword

destination.geo.continent_name

大洲的名称。

keyword

destination.geo.country_iso_code

国家/地区 ISO 代码。

keyword

destination.geo.country_name

国家/地区名称。

keyword

destination.geo.location

经度和纬度。

geo_point

destination.geo.region_iso_code

区域 ISO 代码。

keyword

destination.geo.region_name

区域名称。

keyword

destination.ip

目标的 IP 地址(IPv4 或 IPv6)。

ip

destination.port

目标的端口。

long

ecs.version

此事件符合的 ECS 版本。ecs.version 是必填字段,并且必须存在于所有事件中。在查询可能符合略有不同的 ECS 版本的多个索引时,此字段允许集成调整到事件的架构版本。

keyword

event.action

事件捕获的操作。这描述了事件中的信息。它比 event.category 更具体。示例包括 group-addprocess-startedfile-created。该值通常由实施者定义。

keyword

event.category

这是四个 ECS 分类字段之一,表示 ECS 类别层次结构中的第二级。event.category 表示 ECS 类别的“大类”。例如,筛选 event.category:process 会生成与进程活动相关的所有事件。此字段与用作子类别的 event.type 密切相关。此字段是一个数组。这将允许正确分类属于多个类别的某些事件。

keyword

event.dataset

数据集的名称。如果某个事件源发布多种类型的日志或事件(例如,访问日志、错误日志),则数据集用于指定该事件的来源。建议但不是必须以模块名称开头命名数据集名称,后跟一个点,然后是数据集名称。

keyword

event.duration

事件的持续时间,以纳秒为单位。如果知道 event.startevent.end,则此值应为结束时间和开始时间之间的差值。

long

event.end

event.end 包含事件结束或上次观察到活动时的日期。

date

event.kind

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的最高级别。event.kind 提供关于事件包含的信息类型的高级信息,而无需具体到事件的内容。例如,此字段的值区分警报事件和指标事件。此字段的值可用于通知应如何处理这些类型的事件。它们可能需要不同的保留策略、不同的访问控制,它还有助于了解数据是否以固定间隔传入。

keyword

event.module

此数据来自的模块的名称。如果您的监控代理支持使用模块或插件来处理给定来源的事件(例如,Apache 日志),则 event.module 应包含此模块的名称。

constant_keyword

event.start

event.start 包含事件开始的时间或首次观察到活动的时间。

date

event.type

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的第三级。event.type 表示一个分类“子桶”,当与 event.category 字段值一起使用时,可以将事件过滤到适合单个可视化的级别。此字段是一个数组。这将允许对属于多个事件类型的某些事件进行适当的分类。

keyword

flow.final

指示事件是否是流中的最后一个事件。如果 final 为 false,则该事件仅报告中间流状态。

boolean

flow.id

基于连接元数据和地址的内部流 ID。

keyword

flow.vlan

来自 802.1q 帧的 VLAN 标识符。如果存在多标记帧,则此字段将是一个数组,其中外部标记的 VLAN 标识符首先列出。

long

host.architecture

操作系统架构。

keyword

host.containerized

主机是否为容器。

boolean

host.domain

主机所属的域名。例如,在 Windows 上,这可以是主机的 Active Directory 域或 NetBIOS 域名。对于 Linux,这可以是主机 LDAP 提供程序的域。

keyword

host.hostname

主机的 hostname。它通常包含主机上的 hostname 命令返回的内容。

keyword

host.id

唯一的主机 ID。由于 hostname 并不总是唯一的,请使用在您的环境中具有意义的值。例如:当前 beat.name 的用法。

keyword

host.ip

主机 IP 地址。

ip

host.mac

主机 MAC 地址。

keyword

host.name

主机的名称。它可以包含 Unix 系统上 hostname 返回的内容、完全限定域名或用户指定的名称。发送者决定使用哪个值。

keyword

host.os.build

操作系统构建信息。

keyword

host.os.codename

操作系统代码名(如果有)。

keyword

host.os.family

操作系统系列(如 redhat、debian、freebsd、windows)。

keyword

host.os.kernel

操作系统内核版本,以原始字符串形式表示。

keyword

host.os.name

操作系统名称,不带版本。

keyword

host.os.name.text

host.os.name 的多字段。

text

host.os.platform

操作系统平台(如 centos、ubuntu、windows)。

keyword

host.os.version

操作系统版本,以原始字符串形式表示。

keyword

host.type

主机类型。对于云提供商,这可以是诸如 t2.medium 之类的机器类型。如果为虚拟机,则可以是容器,或其他在您的环境中具有意义的信息。

keyword

method

事务的命令/动词/方法。对于 HTTP,这是方法名称(GET、POST、PUT 等);对于 SQL,这是动词(SELECT、UPDATE、DELETE 等)。

keyword

network.bytes

在两个方向上传输的总字节数。如果已知 source.bytesdestination.bytes,则 network.bytes 是它们的总和。

long

network.community_id

源 IP 和目标 IP、端口以及通信中使用的协议的哈希值。这是一个与工具无关的用于标识流的标准。在 https://github.com/corelight/community-id-spec 了解更多信息。

keyword

network.direction

网络流量的方向。当从基于主机的监控上下文中映射事件时,请从主机的角度使用值“ingress”或“egress”填充此字段。当从基于网络或基于边界的监控上下文中映射事件时,请从网络边界的角度使用值“inbound”、“outbound”、“internal”或“external”填充此字段。请注意,“internal”未跨越边界,旨在描述边界内两台主机之间的通信。另请注意,“external”旨在描述边界外部两台主机之间的流量。例如,这对于 ISP 或 VPN 服务提供商可能很有用。

keyword

network.forwarded_ip

当源 IP 地址为代理时的主机 IP 地址。

ip

network.protocol

在 OSI 模型中,这将是应用层协议。例如,httpdnsssh。为了进行查询,必须将字段值标准化为小写。

keyword

network.transport

与 network.iana_number 相同,但使用传输层的关键字名称(udp、tcp、ipv6-icmp 等)。为了进行查询,必须将字段值标准化为小写。

keyword

network.type

在 OSI 模型中,这将是网络层。ipv4、ipv6、ipsec、pim 等。为了进行查询,必须将字段值标准化为小写。

keyword

network_traffic.amqp.app-id

创建应用程序 ID。

keyword

network_traffic.amqp.arguments

传递给某些方法的可选附加参数。可以是各种类型。

扁平化

network_traffic.amqp.auto-delete

如果设置,则在未使用时自动删除队列。

boolean

network_traffic.amqp.class-id

失败的方法类。

long

network_traffic.amqp.consumer-count

队列的消费者数量。

long

network_traffic.amqp.consumer-tag

消费者标识符,在当前通道中有效。

keyword

network_traffic.amqp.content-encoding

MIME 内容编码。

keyword

network_traffic.amqp.content-type

MIME 内容类型。

keyword

network_traffic.amqp.correlation-id

应用程序关联标识符。

keyword

network_traffic.amqp.delivery-mode

非持久性 (1) 或持久性 (2)。

keyword

network_traffic.amqp.delivery-tag

服务器分配且特定于通道的交付标签。

long

network_traffic.amqp.durable

如果设置,则请求持久的交换/队列。

boolean

network_traffic.amqp.exchange

交换机的名称。

keyword

network_traffic.amqp.exchange-type

交换机类型。

keyword

network_traffic.amqp.exclusive

如果设置,则请求独占队列。

boolean

network_traffic.amqp.expiration

消息过期规范。

keyword

network_traffic.amqp.headers

消息头字段表。

object

network_traffic.amqp.if-empty

仅在为空时删除。

boolean

network_traffic.amqp.if-unused

仅在未使用时删除。

boolean

network_traffic.amqp.immediate

请求立即交付。

boolean

network_traffic.amqp.mandatory

指示强制路由。

boolean

network_traffic.amqp.message-count

队列中的消息数量,对于新声明的队列将为零。

long

network_traffic.amqp.message-id

应用程序消息标识符。

keyword

network_traffic.amqp.method

事务的命令/动词/方法。对于 HTTP,这是方法名称(GET、POST、PUT 等);对于 SQL,这是动词(SELECT、UPDATE、DELETE 等)。

keyword

network_traffic.amqp.method-id

失败的方法 ID。

long

network_traffic.amqp.multiple

确认多个消息。

boolean

network_traffic.amqp.no-ack

如果设置,则服务器不期望收到消息的确认。

boolean

network_traffic.amqp.no-local

如果设置,则服务器不会将消息发送到发布它们的连接。

boolean

network_traffic.amqp.no-wait

如果设置,则服务器不会响应此方法。

boolean

network_traffic.amqp.passive

如果设置,则不创建交换机/队列。

boolean

network_traffic.amqp.priority

消息优先级,0 到 9。

long

network_traffic.amqp.queue

队列名称标识 vhost 中的队列。

keyword

network_traffic.amqp.redelivered

指示消息已先前发送到此或其他客户端。

boolean

network_traffic.amqp.reply-code

AMQP 对错误的回复代码,类似于 HTTP 回复代码

long

network_traffic.amqp.reply-text

解释错误的文本。

keyword

network_traffic.amqp.reply-to

回复地址。

keyword

network_traffic.amqp.routing-key

消息路由键。

keyword

network_traffic.amqp.timestamp

消息时间戳。

keyword

network_traffic.amqp.type

消息类型名称。

keyword

network_traffic.amqp.user-id

创建用户 ID。

keyword

network_traffic.status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

observer.hostname

观察者的主机名。

keyword

observer.ip

观察者的 IP 地址。

ip

observer.mac

观察者的 MAC 地址。建议使用 RFC 7042 中的表示法格式:每个八位字节(即 8 位字节)由两个[大写]十六进制数字表示,给出该八位字节的值作为无符号整数。连续的八位字节用连字符分隔。

keyword

observer.name

观察者的自定义名称。这是可以赋予观察者的名称。例如,如果在组织中使用同一型号的多个防火墙,则这可能会有所帮助。如果不需要自定义名称,则该字段可以留空。

keyword

params

请求参数。对于 HTTP,这些是 POST 或 GET 参数。对于 Thrift-RPC,这些是请求中的参数。

text

path

事务引用的路径。对于 HTTP,这是 URL。对于 SQL 数据库,这是表名。对于键值存储,这是键。

keyword

process.args

进程参数的数组,从可执行文件的绝对路径开始。可能会经过过滤以保护敏感信息。

keyword

process.executable

进程可执行文件的绝对路径。

keyword

process.executable.text

process.executable 的多字段。

match_only_text

process.name

进程名称。有时称为程序名称或类似名称。

keyword

process.name.text

process.name 的多字段。

match_only_text

process.start

进程启动的时间。

date

process.working_directory

进程的工作目录。

keyword

process.working_directory.text

process.working_directory 的多字段。

match_only_text

query

人类可读格式的查询。对于 HTTP,它通常类似于 GET /users/_search?name=test。对于 MySQL,它类似于 SELECT id from users where name=test

keyword

related.hosts

在您的事件中看到的所有主机名或其他主机标识符。示例标识符包括 FQDN、域名、工作站名称或别名。

keyword

related.ip

在您的事件中看到的所有 IP。

ip

request

对于文本协议,这是在网络上看到的请求(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

resource

此事务引用的逻辑资源。对于 HTTP,这是 URL 路径,直到最后一个斜杠 (/)。例如,如果 URL 是 /users/1,则资源是 /users。对于数据库,资源通常是表名。并非所有事务类型都会填充该字段。

keyword

response

对于文本协议,这是在网络上看到的响应(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

server.bytes

从服务器发送到客户端的字节数。

long

server.geo.city_name

城市名称。

keyword

server.geo.continent_name

大洲的名称。

keyword

server.geo.country_iso_code

国家/地区 ISO 代码。

keyword

server.geo.country_name

国家/地区名称。

keyword

server.geo.location

经度和纬度。

geo_point

server.geo.region_iso_code

区域 ISO 代码。

keyword

server.geo.region_name

区域名称。

keyword

server.ip

服务器的 IP 地址(IPv4 或 IPv6)。

ip

server.port

服务器的端口。

long

server.process.args

为事务提供服务的进程的命令行。

keyword

server.process.executable

服务器进程可执行文件的绝对路径。

keyword

server.process.name

为事务提供服务的进程的名称。

keyword

server.process.start

服务器进程启动的时间。

date

server.process.working_directory

服务器进程的工作目录。

keyword

source.bytes

从源发送到目标的字节数。

long

source.geo.city_name

城市名称。

keyword

source.geo.continent_name

大洲的名称。

keyword

source.geo.country_iso_code

国家/地区 ISO 代码。

keyword

source.geo.country_name

国家/地区名称。

keyword

source.geo.location

经度和纬度。

geo_point

source.geo.region_iso_code

区域 ISO 代码。

keyword

source.geo.region_name

区域名称。

keyword

source.ip

源的 IP 地址(IPv4 或 IPv6)。

ip

source.port

源的端口。

long

status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

tags

用于标记每个事件的关键字列表。

keyword

类型

事务的类型(例如,HTTP、MySQL、Redis 或 RUM),如果是流程则为 “flow”。

keyword

示例

一个 amqp 的示例事件如下所示

{
    "@timestamp": "2023-10-16T22:25:39.072Z",
    "agent": {
        "ephemeral_id": "0749f3ad-7bc9-4e3a-9ffc-90eaefc86763",
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "name": "docker-fleet-agent",
        "type": "packetbeat",
        "version": "8.6.2"
    },
    "amqp": {
        "auto-delete": false,
        "consumer-count": 0,
        "durable": false,
        "exclusive": false,
        "message-count": 0,
        "no-wait": false,
        "passive": false,
        "queue": "hello"
    },
    "client": {
        "bytes": 25,
        "ip": "127.0.0.1",
        "port": 34222
    },
    "data_stream": {
        "dataset": "network_traffic.amqp",
        "namespace": "ep",
        "type": "logs"
    },
    "destination": {
        "bytes": 26,
        "ip": "127.0.0.1",
        "port": 5672
    },
    "ecs": {
        "version": "8.11.0"
    },
    "elastic_agent": {
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "snapshot": false,
        "version": "8.6.2"
    },
    "event": {
        "action": "amqp.queue.declare",
        "agent_id_status": "verified",
        "category": [
            "network"
        ],
        "dataset": "network_traffic.amqp",
        "duration": 1265764,
        "end": "2023-10-16T22:25:39.073Z",
        "ingested": "2023-10-16T22:25:40Z",
        "kind": "event",
        "start": "2023-10-16T22:25:39.072Z",
        "type": [
            "connection",
            "protocol"
        ]
    },
    "host": {
        "architecture": "x86_64",
        "containerized": false,
        "hostname": "docker-fleet-agent",
        "id": "f91b175388d443fca5c155815dfc2279",
        "ip": [
            "172.19.0.7"
        ],
        "mac": [
            "02-42-AC-13-00-07"
        ],
        "name": "docker-fleet-agent",
        "os": {
            "codename": "focal",
            "family": "debian",
            "kernel": "5.15.49-linuxkit",
            "name": "Ubuntu",
            "platform": "ubuntu",
            "type": "linux",
            "version": "20.04.5 LTS (Focal Fossa)"
        }
    },
    "method": "queue.declare",
    "network": {
        "bytes": 51,
        "community_id": "1:i6J4zz0FGnZMYLIy8kabND2W/XE=",
        "direction": "ingress",
        "protocol": "amqp",
        "transport": "tcp",
        "type": "ipv4"
    },
    "related": {
        "ip": [
            "127.0.0.1"
        ]
    },
    "server": {
        "bytes": 26,
        "ip": "127.0.0.1",
        "port": 5672
    },
    "source": {
        "bytes": 25,
        "ip": "127.0.0.1",
        "port": 34222
    },
    "status": "OK",
    "type": "amqp"
}

Cassandra

编辑

配置选项

另请参阅 通用协议选项

send_request_header
编辑

如果启用此选项,则响应的原始消息(cassandra_request.request_headers 字段)将发送到 Elasticsearch。默认值为 true。在启用此选项之前,请先启用 send_request

send_response_header
编辑

如果启用此选项,则响应的原始消息(cassandra_response.response_headers 字段)将包含在已发布的事件中。默认值为 true。在启用此选项之前,请先启用 send_response

ignored_ops
编辑

此选项指示将忽略捕获的哪些操作符/操作。当前支持:ERRORSTARTUPREADYAUTHENTICATEOPTIONSSUPPORTEDQUERYRESULTPREPAREEXECUTEREGISTEREVENTBATCHAUTH_CHALLENGEAUTH_RESPONSEAUTH_SUCCESS

compressor
编辑

配置用于按名称解压缩压缩帧的默认压缩算法。目前只能配置 snappy。默认情况下,不配置压缩器。

为 Apache Cassandra 数据包发布的字段。

导出的字段
字段 描述 类型

@timestamp

事件时间戳。

date

cassandra.no_request

指示没有请求,因为这是一条 PUSH 消息。

boolean

cassandra.request.headers.flags

应用于此帧的标志。

keyword

cassandra.request.headers.length

表示帧主体长度的整数(一个帧的长度限制为 256MB)。

long

cassandra.request.headers.op

区分实际消息的操作类型。

keyword

cassandra.request.headers.stream

帧具有流 ID。如果客户端发送流 ID 为 X 的请求消息,则保证该消息的响应的流 ID 将为 X。

keyword

cassandra.request.headers.version

协议的版本。

keyword

cassandra.request.query

客户端发送到 Cassandra 的 CQL 查询。

keyword

cassandra.response.authentication.class

指示正在使用的 IAuthenticator 的完整类名称

keyword

cassandra.response.error.code

Cassandra 响应的错误代码。

long

cassandra.response.error.details.alive

表示在处理请求时已知处于活动状态的副本数量(因为已触发不可用异常)。

long

cassandra.response.error.details.arg_types

失败函数的每个参数类型的字符串(作为 CQL 类型)。

keyword

cassandra.response.error.details.blockfor

表示为达到一致性级别所需的副本的确认数量。

long

cassandra.response.error.details.data_present

表示请求数据的副本已响应。

boolean

cassandra.response.error.details.function

失败函数的名称。

keyword

cassandra.response.error.details.keyspace

失败函数的键空间。

keyword

cassandra.response.error.details.num_failures

表示在执行请求时遇到故障的节点数量。

keyword

cassandra.response.error.details.read_consistency

表示触发异常的查询的一致性级别。

keyword

cassandra.response.error.details.received

表示已确认请求的节点数量。

long

cassandra.response.error.details.required

表示应处于活动状态以符合一致性级别的节点数量。

long

cassandra.response.error.details.stmt_id

表示未知 ID。

keyword

cassandra.response.error.details.table

失败函数的键空间。

keyword

cassandra.response.error.details.write_type

描述超时的写入类型。

keyword

cassandra.response.error.msg

Cassandra 响应的错误消息。

keyword

cassandra.response.error.type

Cassandra 响应的错误类型。

keyword

cassandra.response.event.change

分别对应于更改类型的消息,后跟新/已删除节点的地址。

keyword

cassandra.response.event.host

表示节点 IP。

keyword

cassandra.response.event.port

表示节点端口。

long

cassandra.response.event.schema_change.args

每个参数类型的字符串(作为 CQL 类型)。

keyword

cassandra.response.event.schema_change.change

表示所涉及的更改类型。

keyword

cassandra.response.event.schema_change.keyspace

描述哪个键空间已更改。

keyword

cassandra.response.event.schema_change.name

函数/聚合名称。

keyword

cassandra.response.event.schema_change.object

描述受影响对象的名称(表、用户类型、函数或聚合名称)。

keyword

cassandra.response.event.schema_change.table

描述哪个表已更改。

keyword

cassandra.response.event.schema_change.target

目标可以是“FUNCTION”或“AGGREGATE”,多个参数。

keyword

cassandra.response.event.type

表示事件类型。

keyword

cassandra.response.headers.flags

应用于此帧的标志。

keyword

cassandra.response.headers.length

表示帧主体长度的整数(一个帧的长度限制为 256MB)。

long

cassandra.response.headers.op

区分实际消息的操作类型。

keyword

cassandra.response.headers.stream

帧具有流 ID。如果客户端发送流 ID 为 X 的请求消息,则保证该消息的响应的流 ID 将为 X。

keyword

cassandra.response.headers.version

协议的版本。

keyword

cassandra.response.result.keyspace

指示已设置的键空间的名称。

keyword

cassandra.response.result.prepared.prepared_id

表示预备查询 ID。

keyword

cassandra.response.result.prepared.req_meta.col_count

表示生成此结果的查询选择的列数。

long

cassandra.response.result.prepared.req_meta.flags

提供有关其余信息格式的信息。

keyword

cassandra.response.result.prepared.req_meta.keyspace

仅在设置 Global_tables_spec 后显示,键空间名称。

keyword

cassandra.response.result.prepared.req_meta.paging_state

paging_state 是一个字节值,应在 QUERY/EXECUTE 中使用以继续分页并检索此查询的剩余结果。

keyword

cassandra.response.result.prepared.req_meta.pkey_columns

表示主键列的索引和计数。

long

cassandra.response.result.prepared.req_meta.table

仅在设置 Global_tables_spec 后出现,表示表名。

keyword

cassandra.response.result.prepared.resp_meta.col_count

表示生成此结果的查询选择的列数。

long

cassandra.response.result.prepared.resp_meta.flags

提供有关其余信息格式的信息。

keyword

cassandra.response.result.prepared.resp_meta.keyspace

仅在设置 Global_tables_spec 后显示,键空间名称。

keyword

cassandra.response.result.prepared.resp_meta.paging_state

paging_state 是一个字节值,应在 QUERY/EXECUTE 中使用以继续分页并检索此查询的剩余结果。

keyword

cassandra.response.result.prepared.resp_meta.pkey_columns

表示主键列的索引和计数。

long

cassandra.response.result.prepared.resp_meta.table

仅在设置 Global_tables_spec 后出现,表示表名。

keyword

cassandra.response.result.rows.meta.col_count

表示生成此结果的查询选择的列数。

long

cassandra.response.result.rows.meta.flags

提供有关其余信息格式的信息。

keyword

cassandra.response.result.rows.meta.keyspace

仅在设置 Global_tables_spec 后显示,键空间名称。

keyword

cassandra.response.result.rows.meta.paging_state

paging_state 是一个字节值,应在 QUERY/EXECUTE 中使用以继续分页并检索此查询的剩余结果。

keyword

cassandra.response.result.rows.meta.pkey_columns

表示主键列的索引和计数。

long

cassandra.response.result.rows.meta.table

仅在设置 Global_tables_spec 后出现,表示表名。

keyword

cassandra.response.result.rows.num_rows

表示此结果中存在的行数。

long

cassandra.response.result.schema_change.args

每个参数类型的字符串(作为 CQL 类型)。

keyword

cassandra.response.result.schema_change.change

表示所涉及的更改类型。

keyword

cassandra.response.result.schema_change.keyspace

描述哪个键空间已更改。

keyword

cassandra.response.result.schema_change.name

函数/聚合名称。

keyword

cassandra.response.result.schema_change.object

描述受影响对象的名称(表、用户类型、函数或聚合名称)。

keyword

cassandra.response.result.schema_change.table

描述哪个表已更改。

keyword

cassandra.response.result.schema_change.target

目标可以是“FUNCTION”或“AGGREGATE”,多个参数。

keyword

cassandra.response.result.type

Cassandra 结果类型。

keyword

cassandra.response.supported

指示服务器支持哪些启动选项。此消息是对 OPTIONS 消息的响应。

扁平化

cassandra.response.warnings

警告文本,仅当设置了 Warning 标志时才会出现。

keyword

client.bytes

从客户端发送到服务器的字节。

long

client.geo.city_name

城市名称。

keyword

client.geo.continent_name

大洲的名称。

keyword

client.geo.country_iso_code

国家/地区 ISO 代码。

keyword

client.geo.country_name

国家/地区名称。

keyword

client.geo.location

经度和纬度。

geo_point

client.geo.region_iso_code

区域 ISO 代码。

keyword

client.geo.region_name

区域名称。

keyword

client.ip

客户端的 IP 地址(IPv4 或 IPv6)。

ip

client.port

客户端的端口。

long

client.process.args

启动事务的进程的命令行。

keyword

client.process.executable

客户端进程可执行文件的绝对路径。

keyword

client.process.name

启动事务的进程的名称。

keyword

client.process.start

客户端进程启动的时间。

date

client.process.working_directory

客户端进程的工作目录。

keyword

cloud.account.id

用于标识多租户环境中不同实体的云帐户或组织 ID。示例:AWS 帐户 ID、Google Cloud ORG ID 或其他唯一标识符。

keyword

cloud.availability_zone

此主机运行所在的可用区。

keyword

cloud.image.id

云实例的映像 ID。

keyword

cloud.instance.id

主机计算机的实例 ID。

keyword

cloud.instance.name

主机计算机的实例名称。

keyword

cloud.machine.type

主机计算机的机器类型。

keyword

cloud.project.id

Google Cloud 中项目的名称。

keyword

cloud.provider

云提供商的名称。示例值包括 aws、azure、gcp 或 digitalocean。

keyword

cloud.region

此主机运行所在的区域。

keyword

container.id

唯一的容器 ID。

keyword

container.image.name

构建容器所基于的映像的名称。

keyword

container.labels

映像标签。

object

container.name

容器名称。

keyword

data_stream.dataset

数据流数据集。

constant_keyword

data_stream.namespace

数据流命名空间。

constant_keyword

data_stream.type

数据流类型。

constant_keyword

destination.bytes

从目标发送到源的字节。

long

destination.geo.city_name

城市名称。

keyword

destination.geo.continent_name

大洲的名称。

keyword

destination.geo.country_iso_code

国家/地区 ISO 代码。

keyword

destination.geo.country_name

国家/地区名称。

keyword

destination.geo.location

经度和纬度。

geo_point

destination.geo.region_iso_code

区域 ISO 代码。

keyword

destination.geo.region_name

区域名称。

keyword

destination.ip

目标的 IP 地址(IPv4 或 IPv6)。

ip

destination.port

目标的端口。

long

ecs.version

此事件符合的 ECS 版本。ecs.version 是必填字段,并且必须存在于所有事件中。在查询可能符合略有不同的 ECS 版本的多个索引时,此字段允许集成调整到事件的架构版本。

keyword

event.category

这是四个 ECS 分类字段之一,表示 ECS 类别层次结构中的第二级。event.category 表示 ECS 类别的“大类”。例如,筛选 event.category:process 会生成与进程活动相关的所有事件。此字段与用作子类别的 event.type 密切相关。此字段是一个数组。这将允许正确分类属于多个类别的某些事件。

keyword

event.dataset

数据集的名称。如果某个事件源发布多种类型的日志或事件(例如,访问日志、错误日志),则数据集用于指定该事件的来源。建议但不是必须以模块名称开头命名数据集名称,后跟一个点,然后是数据集名称。

keyword

event.duration

事件的持续时间,以纳秒为单位。如果知道 event.startevent.end,则此值应为结束时间和开始时间之间的差值。

long

event.end

event.end 包含事件结束或上次观察到活动时的日期。

date

event.kind

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的最高级别。event.kind 提供关于事件包含的信息类型的高级信息,而无需具体到事件的内容。例如,此字段的值区分警报事件和指标事件。此字段的值可用于通知应如何处理这些类型的事件。它们可能需要不同的保留策略、不同的访问控制,它还有助于了解数据是否以固定间隔传入。

keyword

event.module

此数据来自的模块的名称。如果您的监控代理支持使用模块或插件来处理给定来源的事件(例如,Apache 日志),则 event.module 应包含此模块的名称。

constant_keyword

event.start

event.start 包含事件开始的时间或首次观察到活动的时间。

date

event.type

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的第三级。event.type 表示一个分类“子桶”,当与 event.category 字段值一起使用时,可以将事件过滤到适合单个可视化的级别。此字段是一个数组。这将允许对属于多个事件类型的某些事件进行适当的分类。

keyword

flow.final

指示事件是否是流中的最后一个事件。如果 final 为 false,则该事件仅报告中间流状态。

boolean

flow.id

基于连接元数据和地址的内部流 ID。

keyword

flow.vlan

来自 802.1q 帧的 VLAN 标识符。如果存在多标记帧,则此字段将是一个数组,其中外部标记的 VLAN 标识符首先列出。

long

host.architecture

操作系统架构。

keyword

host.containerized

主机是否为容器。

boolean

host.domain

主机所属的域名。例如,在 Windows 上,这可以是主机的 Active Directory 域或 NetBIOS 域名。对于 Linux,这可以是主机 LDAP 提供程序的域。

keyword

host.hostname

主机的 hostname。它通常包含主机上的 hostname 命令返回的内容。

keyword

host.id

唯一的主机 ID。由于 hostname 并不总是唯一的,请使用在您的环境中具有意义的值。例如:当前 beat.name 的用法。

keyword

host.ip

主机 IP 地址。

ip

host.mac

主机 MAC 地址。

keyword

host.name

主机的名称。它可以包含 Unix 系统上 hostname 返回的内容、完全限定域名或用户指定的名称。发送者决定使用哪个值。

keyword

host.os.build

操作系统构建信息。

keyword

host.os.codename

操作系统代码名(如果有)。

keyword

host.os.family

操作系统系列(如 redhat、debian、freebsd、windows)。

keyword

host.os.kernel

操作系统内核版本,以原始字符串形式表示。

keyword

host.os.name

操作系统名称,不带版本。

keyword

host.os.name.text

host.os.name 的多字段。

text

host.os.platform

操作系统平台(如 centos、ubuntu、windows)。

keyword

host.os.version

操作系统版本,以原始字符串形式表示。

keyword

host.type

主机类型。对于云提供商,这可以是诸如 t2.medium 之类的机器类型。如果为虚拟机,则可以是容器,或其他在您的环境中具有意义的信息。

keyword

method

事务的命令/动词/方法。对于 HTTP,这是方法名称(GET、POST、PUT 等);对于 SQL,这是动词(SELECT、UPDATE、DELETE 等)。

keyword

network.bytes

在两个方向上传输的总字节数。如果已知 source.bytesdestination.bytes,则 network.bytes 是它们的总和。

long

network.community_id

源 IP 和目标 IP、端口以及通信中使用的协议的哈希值。这是一个与工具无关的用于标识流的标准。在 https://github.com/corelight/community-id-spec 了解更多信息。

keyword

network.direction

网络流量的方向。当从基于主机的监控上下文中映射事件时,请从主机的角度使用值“ingress”或“egress”填充此字段。当从基于网络或基于边界的监控上下文中映射事件时,请从网络边界的角度使用值“inbound”、“outbound”、“internal”或“external”填充此字段。请注意,“internal”未跨越边界,旨在描述边界内两台主机之间的通信。另请注意,“external”旨在描述边界外部两台主机之间的流量。例如,这对于 ISP 或 VPN 服务提供商可能很有用。

keyword

network.forwarded_ip

当源 IP 地址为代理时的主机 IP 地址。

ip

network.protocol

在 OSI 模型中,这将是应用层协议。例如,httpdnsssh。为了进行查询,必须将字段值标准化为小写。

keyword

network.transport

与 network.iana_number 相同,但使用传输层的关键字名称(udp、tcp、ipv6-icmp 等)。为了进行查询,必须将字段值标准化为小写。

keyword

network.type

在 OSI 模型中,这将是网络层。ipv4、ipv6、ipsec、pim 等。为了进行查询,必须将字段值标准化为小写。

keyword

network_traffic.cassandra.no_request

指示没有请求,因为这是一条 PUSH 消息。

boolean

network_traffic.cassandra.request.headers.flags

应用于此帧的标志。

keyword

network_traffic.cassandra.request.headers.length

表示帧主体长度的整数(一个帧的长度限制为 256MB)。

long

network_traffic.cassandra.request.headers.op

区分实际消息的操作类型。

keyword

network_traffic.cassandra.request.headers.stream

帧具有流 ID。如果客户端发送流 ID 为 X 的请求消息,则保证该消息的响应的流 ID 将为 X。

keyword

network_traffic.cassandra.request.headers.version

协议的版本。

keyword

network_traffic.cassandra.request.query

客户端发送到 Cassandra 的 CQL 查询。

keyword

network_traffic.cassandra.response.authentication.class

指示正在使用的 IAuthenticator 的完整类名称

keyword

network_traffic.cassandra.response.error.code

Cassandra 响应的错误代码。

long

network_traffic.cassandra.response.error.details.alive

表示在处理请求时已知处于活动状态的副本数量(因为已触发不可用异常)。

long

network_traffic.cassandra.response.error.details.arg_types

失败函数的每个参数类型的字符串(作为 CQL 类型)。

keyword

network_traffic.cassandra.response.error.details.blockfor

表示为达到一致性级别所需的副本的确认数量。

long

network_traffic.cassandra.response.error.details.data_present

表示请求数据的副本已响应。

boolean

network_traffic.cassandra.response.error.details.function

失败函数的名称。

keyword

network_traffic.cassandra.response.error.details.keyspace

失败函数的键空间。

keyword

network_traffic.cassandra.response.error.details.num_failures

表示在执行请求时遇到故障的节点数量。

keyword

network_traffic.cassandra.response.error.details.read_consistency

表示触发异常的查询的一致性级别。

keyword

network_traffic.cassandra.response.error.details.received

表示已确认请求的节点数量。

long

network_traffic.cassandra.response.error.details.required

表示应处于活动状态以符合一致性级别的节点数量。

long

network_traffic.cassandra.response.error.details.stmt_id

表示未知 ID。

keyword

network_traffic.cassandra.response.error.details.table

失败函数的键空间。

keyword

network_traffic.cassandra.response.error.details.write_type

描述超时的写入类型。

keyword

network_traffic.cassandra.response.error.msg

Cassandra 响应的错误消息。

keyword

network_traffic.cassandra.response.error.type

Cassandra 响应的错误类型。

keyword

network_traffic.cassandra.response.event.change

分别对应于更改类型的消息,后跟新/已删除节点的地址。

keyword

network_traffic.cassandra.response.event.host

表示节点 IP。

keyword

network_traffic.cassandra.response.event.port

表示节点端口。

long

network_traffic.cassandra.response.event.schema_change.args

每个参数类型的字符串(作为 CQL 类型)。

keyword

network_traffic.cassandra.response.event.schema_change.change

表示所涉及的更改类型。

keyword

network_traffic.cassandra.response.event.schema_change.keyspace

描述哪个键空间已更改。

keyword

network_traffic.cassandra.response.event.schema_change.name

函数/聚合名称。

keyword

network_traffic.cassandra.response.event.schema_change.object

描述受影响对象的名称(表、用户类型、函数或聚合名称)。

keyword

network_traffic.cassandra.response.event.schema_change.table

描述哪个表已更改。

keyword

network_traffic.cassandra.response.event.schema_change.target

目标可以是“FUNCTION”或“AGGREGATE”,多个参数。

keyword

network_traffic.cassandra.response.event.type

表示事件类型。

keyword

network_traffic.cassandra.response.headers.flags

应用于此帧的标志。

keyword

network_traffic.cassandra.response.headers.length

表示帧主体长度的整数(一个帧的长度限制为 256MB)。

long

network_traffic.cassandra.response.headers.op

区分实际消息的操作类型。

keyword

network_traffic.cassandra.response.headers.stream

帧具有流 ID。如果客户端发送流 ID 为 X 的请求消息,则保证该消息的响应的流 ID 将为 X。

keyword

network_traffic.cassandra.response.headers.version

协议的版本。

keyword

network_traffic.cassandra.response.result.keyspace

指示已设置的键空间的名称。

keyword

network_traffic.cassandra.response.result.prepared.prepared_id

表示预备查询 ID。

keyword

network_traffic.cassandra.response.result.prepared.req_meta.col_count

表示生成此结果的查询选择的列数。

long

network_traffic.cassandra.response.result.prepared.req_meta.flags

提供有关其余信息格式的信息。

keyword

network_traffic.cassandra.response.result.prepared.req_meta.keyspace

仅在设置 Global_tables_spec 后显示,键空间名称。

keyword

network_traffic.cassandra.response.result.prepared.req_meta.paging_state

paging_state 是一个字节值,应在 QUERY/EXECUTE 中使用以继续分页并检索此查询的剩余结果。

keyword

network_traffic.cassandra.response.result.prepared.req_meta.pkey_columns

表示主键列的索引和计数。

long

network_traffic.cassandra.response.result.prepared.req_meta.table

仅在设置 Global_tables_spec 后出现,表示表名。

keyword

network_traffic.cassandra.response.result.prepared.resp_meta.col_count

表示生成此结果的查询选择的列数。

long

network_traffic.cassandra.response.result.prepared.resp_meta.flags

提供有关其余信息格式的信息。

keyword

network_traffic.cassandra.response.result.prepared.resp_meta.keyspace

仅在设置 Global_tables_spec 后显示,键空间名称。

keyword

network_traffic.cassandra.response.result.prepared.resp_meta.paging_state

paging_state 是一个字节值,应在 QUERY/EXECUTE 中使用以继续分页并检索此查询的剩余结果。

keyword

network_traffic.cassandra.response.result.prepared.resp_meta.pkey_columns

表示主键列的索引和计数。

long

network_traffic.cassandra.response.result.prepared.resp_meta.table

仅在设置 Global_tables_spec 后出现,表示表名。

keyword

network_traffic.cassandra.response.result.rows.meta.col_count

表示生成此结果的查询选择的列数。

long

network_traffic.cassandra.response.result.rows.meta.flags

提供有关其余信息格式的信息。

keyword

network_traffic.cassandra.response.result.rows.meta.keyspace

仅在设置 Global_tables_spec 后显示,键空间名称。

keyword

network_traffic.cassandra.response.result.rows.meta.paging_state

paging_state 是一个字节值,应在 QUERY/EXECUTE 中使用以继续分页并检索此查询的剩余结果。

keyword

network_traffic.cassandra.response.result.rows.meta.pkey_columns

表示主键列的索引和计数。

long

network_traffic.cassandra.response.result.rows.meta.table

仅在设置 Global_tables_spec 后出现,表示表名。

keyword

network_traffic.cassandra.response.result.rows.num_rows

表示此结果中存在的行数。

long

network_traffic.cassandra.response.result.schema_change.args

每个参数类型的字符串(作为 CQL 类型)。

keyword

network_traffic.cassandra.response.result.schema_change.change

表示所涉及的更改类型。

keyword

network_traffic.cassandra.response.result.schema_change.keyspace

描述哪个键空间已更改。

keyword

network_traffic.cassandra.response.result.schema_change.name

函数/聚合名称。

keyword

network_traffic.cassandra.response.result.schema_change.object

描述受影响对象的名称(表、用户类型、函数或聚合名称)。

keyword

network_traffic.cassandra.response.result.schema_change.table

描述哪个表已更改。

keyword

network_traffic.cassandra.response.result.schema_change.target

目标可以是“FUNCTION”或“AGGREGATE”,多个参数。

keyword

network_traffic.cassandra.response.result.type

Cassandra 结果类型。

keyword

network_traffic.cassandra.response.supported

指示服务器支持哪些启动选项。此消息是对 OPTIONS 消息的响应。

扁平化

network_traffic.cassandra.response.warnings

警告文本,仅当设置了 Warning 标志时才会出现。

keyword

network_traffic.status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

observer.hostname

观察者的主机名。

keyword

observer.ip

观察者的 IP 地址。

ip

observer.mac

观察者的 MAC 地址。建议使用 RFC 7042 中的表示法格式:每个八位字节(即 8 位字节)由两个[大写]十六进制数字表示,给出该八位字节的值作为无符号整数。连续的八位字节用连字符分隔。

keyword

observer.name

观察者的自定义名称。这是可以赋予观察者的名称。例如,如果在组织中使用同一型号的多个防火墙,则这可能会有所帮助。如果不需要自定义名称,则该字段可以留空。

keyword

params

请求参数。对于 HTTP,这些是 POST 或 GET 参数。对于 Thrift-RPC,这些是请求中的参数。

text

path

事务引用的路径。对于 HTTP,这是 URL。对于 SQL 数据库,这是表名。对于键值存储,这是键。

keyword

process.args

进程参数的数组,从可执行文件的绝对路径开始。可能会经过过滤以保护敏感信息。

keyword

process.executable

进程可执行文件的绝对路径。

keyword

process.executable.text

process.executable 的多字段。

match_only_text

process.name

进程名称。有时称为程序名称或类似名称。

keyword

process.name.text

process.name 的多字段。

match_only_text

process.start

进程启动的时间。

date

process.working_directory

进程的工作目录。

keyword

process.working_directory.text

process.working_directory 的多字段。

match_only_text

query

人类可读格式的查询。对于 HTTP,它通常类似于 GET /users/_search?name=test。对于 MySQL,它类似于 SELECT id from users where name=test

keyword

related.hosts

在您的事件中看到的所有主机名或其他主机标识符。示例标识符包括 FQDN、域名、工作站名称或别名。

keyword

related.ip

在您的事件中看到的所有 IP。

ip

request

对于文本协议,这是在网络上看到的请求(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

resource

此事务引用的逻辑资源。对于 HTTP,这是 URL 路径,直到最后一个斜杠 (/)。例如,如果 URL 是 /users/1,则资源是 /users。对于数据库,资源通常是表名。并非所有事务类型都会填充该字段。

keyword

response

对于文本协议,这是在网络上看到的响应(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

server.bytes

从服务器发送到客户端的字节数。

long

server.geo.city_name

城市名称。

keyword

server.geo.continent_name

大洲的名称。

keyword

server.geo.country_iso_code

国家/地区 ISO 代码。

keyword

server.geo.country_name

国家/地区名称。

keyword

server.geo.location

经度和纬度。

geo_point

server.geo.region_iso_code

区域 ISO 代码。

keyword

server.geo.region_name

区域名称。

keyword

server.ip

服务器的 IP 地址(IPv4 或 IPv6)。

ip

server.port

服务器的端口。

long

server.process.args

为事务提供服务的进程的命令行。

keyword

server.process.executable

服务器进程可执行文件的绝对路径。

keyword

server.process.name

为事务提供服务的进程的名称。

keyword

server.process.start

服务器进程启动的时间。

date

server.process.working_directory

服务器进程的工作目录。

keyword

source.bytes

从源发送到目标的字节数。

long

source.geo.city_name

城市名称。

keyword

source.geo.continent_name

大洲的名称。

keyword

source.geo.country_iso_code

国家/地区 ISO 代码。

keyword

source.geo.country_name

国家/地区名称。

keyword

source.geo.location

经度和纬度。

geo_point

source.geo.region_iso_code

区域 ISO 代码。

keyword

source.geo.region_name

区域名称。

keyword

source.ip

源的 IP 地址(IPv4 或 IPv6)。

ip

source.port

源的端口。

long

status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

tags

用于标记每个事件的关键字列表。

keyword

类型

事务的类型(例如,HTTP、MySQL、Redis 或 RUM),如果是流程则为 “flow”。

keyword

示例

cassandra 的一个示例事件如下所示

{
    "@timestamp": "2023-10-16T22:31:00.694Z",
    "agent": {
        "ephemeral_id": "c013fddf-67ee-4638-8676-393fc70318cc",
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "name": "docker-fleet-agent",
        "type": "packetbeat",
        "version": "8.6.2"
    },
    "cassandra": {
        "request": {
            "headers": {
                "flags": "Default",
                "length": 98,
                "op": "QUERY",
                "stream": 49,
                "version": "4"
            },
            "query": "CREATE TABLE users (\n  user_id int PRIMARY KEY,\n  fname text,\n  lname text\n);"
        },
        "response": {
            "headers": {
                "flags": "Default",
                "length": 39,
                "op": "RESULT",
                "stream": 49,
                "version": "4"
            },
            "result": {
                "schema_change": {
                    "change": "CREATED",
                    "keyspace": "mykeyspace",
                    "object": "users",
                    "target": "TABLE"
                },
                "type": "schemaChanged"
            }
        }
    },
    "client": {
        "bytes": 107,
        "ip": "127.0.0.1",
        "port": 52749
    },
    "data_stream": {
        "dataset": "network_traffic.cassandra",
        "namespace": "ep",
        "type": "logs"
    },
    "destination": {
        "bytes": 48,
        "ip": "127.0.0.1",
        "port": 9042
    },
    "ecs": {
        "version": "8.11.0"
    },
    "elastic_agent": {
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "snapshot": false,
        "version": "8.6.2"
    },
    "event": {
        "agent_id_status": "verified",
        "category": [
            "network"
        ],
        "dataset": "network_traffic.cassandra",
        "duration": 131789052,
        "end": "2023-10-16T22:31:00.826Z",
        "ingested": "2023-10-16T22:31:04Z",
        "kind": "event",
        "start": "2023-10-16T22:31:00.694Z",
        "type": [
            "connection",
            "protocol"
        ]
    },
    "host": {
        "architecture": "x86_64",
        "containerized": false,
        "hostname": "docker-fleet-agent",
        "id": "f91b175388d443fca5c155815dfc2279",
        "ip": [
            "172.19.0.7"
        ],
        "mac": [
            "02-42-AC-13-00-07"
        ],
        "name": "docker-fleet-agent",
        "os": {
            "codename": "focal",
            "family": "debian",
            "kernel": "5.15.49-linuxkit",
            "name": "Ubuntu",
            "platform": "ubuntu",
            "type": "linux",
            "version": "20.04.5 LTS (Focal Fossa)"
        }
    },
    "network": {
        "bytes": 155,
        "community_id": "1:bCORHZnGIk6GWYaE3Kn0DOpQCKE=",
        "direction": "ingress",
        "protocol": "cassandra",
        "transport": "tcp",
        "type": "ipv4"
    },
    "related": {
        "ip": [
            "127.0.0.1"
        ]
    },
    "server": {
        "bytes": 48,
        "ip": "127.0.0.1",
        "port": 9042
    },
    "source": {
        "bytes": 107,
        "ip": "127.0.0.1",
        "port": 52749
    },
    "status": "OK",
    "type": "cassandra"
}

DHCP

编辑

配置选项

请参阅通用协议选项

为 DHCPv4 数据包发布的字段。

导出的字段
字段 描述 类型

@timestamp

事件时间戳。

date

client.bytes

从客户端发送到服务器的字节。

long

client.geo.city_name

城市名称。

keyword

client.geo.continent_name

大洲的名称。

keyword

client.geo.country_iso_code

国家/地区 ISO 代码。

keyword

client.geo.country_name

国家/地区名称。

keyword

client.geo.location

经度和纬度。

geo_point

client.geo.region_iso_code

区域 ISO 代码。

keyword

client.geo.region_name

区域名称。

keyword

client.ip

客户端的 IP 地址(IPv4 或 IPv6)。

ip

client.port

客户端的端口。

long

client.process.args

启动事务的进程的命令行。

keyword

client.process.executable

客户端进程可执行文件的绝对路径。

keyword

client.process.name

启动事务的进程的名称。

keyword

client.process.start

客户端进程启动的时间。

date

client.process.working_directory

客户端进程的工作目录。

keyword

cloud.account.id

用于标识多租户环境中不同实体的云帐户或组织 ID。示例:AWS 帐户 ID、Google Cloud ORG ID 或其他唯一标识符。

keyword

cloud.availability_zone

此主机运行所在的可用区。

keyword

cloud.image.id

云实例的映像 ID。

keyword

cloud.instance.id

主机计算机的实例 ID。

keyword

cloud.instance.name

主机计算机的实例名称。

keyword

cloud.machine.type

主机计算机的机器类型。

keyword

cloud.project.id

Google Cloud 中项目的名称。

keyword

cloud.provider

云提供商的名称。示例值包括 aws、azure、gcp 或 digitalocean。

keyword

cloud.region

此主机运行所在的区域。

keyword

container.id

唯一的容器 ID。

keyword

container.image.name

构建容器所基于的映像的名称。

keyword

container.labels

映像标签。

object

container.name

容器名称。

keyword

data_stream.dataset

数据流数据集。

constant_keyword

data_stream.namespace

数据流命名空间。

constant_keyword

data_stream.type

数据流类型。

constant_keyword

destination.bytes

从目标发送到源的字节。

long

destination.geo.city_name

城市名称。

keyword

destination.geo.continent_name

大洲的名称。

keyword

destination.geo.country_iso_code

国家/地区 ISO 代码。

keyword

destination.geo.country_name

国家/地区名称。

keyword

destination.geo.location

经度和纬度。

geo_point

destination.geo.region_iso_code

区域 ISO 代码。

keyword

destination.geo.region_name

区域名称。

keyword

destination.ip

目标的 IP 地址(IPv4 或 IPv6)。

ip

destination.port

目标的端口。

long

dhcpv4.assigned_ip

DHCP 服务器分配给客户端的 IP 地址。此字段也称为“您的”IP 地址。

ip

dhcpv4.client_ip

客户端的当前 IP 地址。

ip

dhcpv4.client_mac

客户端的 MAC 地址(二层)。

keyword

dhcpv4.flags

客户端设置标志以指示 DHCP 服务器应如何回复 — 单播或广播。

keyword

dhcpv4.hardware_type

用于本地网络的硬件类型(以太网、LocalTalk 等)。

keyword

dhcpv4.hops

DHCP 消息经过的跳数。

long

dhcpv4.op_code

消息操作码(引导请求或引导回复)。

keyword

dhcpv4.option.boot_file_name

当 DHCP 标头中的文件字段已用于 DHCP 选项时,此选项用于标识引导文件。

keyword

dhcpv4.option.broadcast_address

此选项指定客户端子网上使用的广播地址。

ip

dhcpv4.option.class_identifier

DHCP 客户端使用此选项来可选地标识 DHCP 客户端的供应商类型和配置。供应商可以选择定义特定的供应商类标识符来传递有关客户端的特定配置或其他标识信息。例如,标识符可以编码客户端的硬件配置。

keyword

dhcpv4.option.dns_servers

域名服务器选项指定客户端可用的域名系统服务器列表。

ip

dhcpv4.option.domain_name

此选项指定客户端在通过域名系统解析主机名时应使用的域名。

keyword

dhcpv4.option.hostname

此选项指定客户端的名称。

keyword

dhcpv4.option.ip_address_lease_time_sec

此选项在客户端请求(DHCPDISCOVER 或 DHCPREQUEST)中使用,以允许客户端请求 IP 地址的租用时间。在服务器回复 (DHCPOFFER) 中,DHCP 服务器使用此选项指定其愿意提供的租用时间。

long

dhcpv4.option.max_dhcp_message_size

此选项指定客户端愿意接受的最大长度 DHCP 消息。

long

dhcpv4.option.message

DHCP 服务器在发生故障时使用此选项在 DHCPNAK 消息中向 DHCP 客户端提供错误消息。客户端可以在 DHCPDECLINE 消息中使用此选项来指示客户端拒绝所提供的参数的原因。

text

dhcpv4.option.message_type

发送的特定类型的 DHCP 消息(例如,discover、offer、request、decline、ack、nak、release、inform)。

keyword

dhcpv4.option.ntp_servers

此选项指定指示客户端可用的 NTP 服务器的 IP 地址列表。

ip

dhcpv4.option.parameter_request_list

DHCP 客户端使用此选项来请求指定配置参数的值。

keyword

dhcpv4.option.rebinding_time_sec

此选项指定从地址分配到客户端转换为 REBINDING 状态的时间间隔。

long

dhcpv4.option.renewal_time_sec

此选项指定从地址分配到客户端转换为 RENEWING 状态的时间间隔。

long

dhcpv4.option.requested_ip_address

此选项在客户端请求 (DHCPDISCOVER) 中使用,以允许客户端请求分配特定 IP 地址。

ip

dhcpv4.option.router

路由器选项指定客户端子网上的路由器 IP 地址列表。

ip

dhcpv4.option.server_identifier

处理此消息的各个 DHCP 服务器的 IP 地址。

ip

dhcpv4.option.subnet_mask

客户端应在当前网络上使用的子网掩码。

ip

dhcpv4.option.time_servers

时间服务器选项指定客户端可用的 RFC 868 时间服务器列表。

ip

dhcpv4.option.utc_time_offset_sec

时区偏移字段指定客户端子网与协调世界时 (UTC) 的偏移量(以秒为单位)。

long

dhcpv4.option.vendor_identifying_options.data

以十六进制格式编码的其他供应商数据。

keyword

dhcpv4.option.vendor_identifying_options.id

设备标识符。

keyword

dhcpv4.relay_ip

客户端用于联系服务器的转发 IP 地址(即 DHCP 转发服务器)。

ip

dhcpv4.seconds

自客户端开始地址获取或续订过程以来经过的秒数。

long

dhcpv4.server_ip

客户端应在引导过程的下一步中使用的 DHCP 服务器的 IP 地址。

ip

dhcpv4.server_name

发送消息的服务器的名称。可选。用于 DHCPOFFER 或 DHCPACK 消息。

keyword

dhcpv4.transaction_id

事务 ID,客户端选择的随机数,客户端和服务器使用该数字来关联客户端和服务器之间的消息和响应。

keyword

ecs.version

此事件符合的 ECS 版本。ecs.version 是必填字段,并且必须存在于所有事件中。在查询可能符合略有不同的 ECS 版本的多个索引时,此字段允许集成调整到事件的架构版本。

keyword

event.category

这是四个 ECS 分类字段之一,表示 ECS 类别层次结构中的第二级。event.category 表示 ECS 类别的“大类”。例如,筛选 event.category:process 会生成与进程活动相关的所有事件。此字段与用作子类别的 event.type 密切相关。此字段是一个数组。这将允许正确分类属于多个类别的某些事件。

keyword

event.dataset

数据集的名称。如果某个事件源发布多种类型的日志或事件(例如,访问日志、错误日志),则数据集用于指定该事件的来源。建议但不是必须以模块名称开头命名数据集名称,后跟一个点,然后是数据集名称。

keyword

event.duration

事件的持续时间,以纳秒为单位。如果知道 event.startevent.end,则此值应为结束时间和开始时间之间的差值。

long

event.end

event.end 包含事件结束或上次观察到活动时的日期。

date

event.kind

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的最高级别。event.kind 提供关于事件包含的信息类型的高级信息,而无需具体到事件的内容。例如,此字段的值区分警报事件和指标事件。此字段的值可用于通知应如何处理这些类型的事件。它们可能需要不同的保留策略、不同的访问控制,它还有助于了解数据是否以固定间隔传入。

keyword

event.module

此数据来自的模块的名称。如果您的监控代理支持使用模块或插件来处理给定来源的事件(例如,Apache 日志),则 event.module 应包含此模块的名称。

constant_keyword

event.start

event.start 包含事件开始的时间或首次观察到活动的时间。

date

event.type

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的第三级。event.type 表示一个分类“子桶”,当与 event.category 字段值一起使用时,可以将事件过滤到适合单个可视化的级别。此字段是一个数组。这将允许对属于多个事件类型的某些事件进行适当的分类。

keyword

flow.final

指示事件是否是流中的最后一个事件。如果 final 为 false,则该事件仅报告中间流状态。

boolean

flow.id

基于连接元数据和地址的内部流 ID。

keyword

flow.vlan

来自 802.1q 帧的 VLAN 标识符。如果存在多标记帧,则此字段将是一个数组,其中外部标记的 VLAN 标识符首先列出。

long

host.architecture

操作系统架构。

keyword

host.containerized

主机是否为容器。

boolean

host.domain

主机所属的域名。例如,在 Windows 上,这可以是主机的 Active Directory 域或 NetBIOS 域名。对于 Linux,这可以是主机 LDAP 提供程序的域。

keyword

host.hostname

主机的 hostname。它通常包含主机上的 hostname 命令返回的内容。

keyword

host.id

唯一的主机 ID。由于 hostname 并不总是唯一的,请使用在您的环境中具有意义的值。例如:当前 beat.name 的用法。

keyword

host.ip

主机 IP 地址。

ip

host.mac

主机 MAC 地址。

keyword

host.name

主机的名称。它可以包含 Unix 系统上 hostname 返回的内容、完全限定域名或用户指定的名称。发送者决定使用哪个值。

keyword

host.os.build

操作系统构建信息。

keyword

host.os.codename

操作系统代码名(如果有)。

keyword

host.os.family

操作系统系列(如 redhat、debian、freebsd、windows)。

keyword

host.os.kernel

操作系统内核版本,以原始字符串形式表示。

keyword

host.os.name

操作系统名称,不带版本。

keyword

host.os.name.text

host.os.name 的多字段。

text

host.os.platform

操作系统平台(如 centos、ubuntu、windows)。

keyword

host.os.version

操作系统版本,以原始字符串形式表示。

keyword

host.type

主机类型。对于云提供商,这可以是诸如 t2.medium 之类的机器类型。如果为虚拟机,则可以是容器,或其他在您的环境中具有意义的信息。

keyword

method

事务的命令/动词/方法。对于 HTTP,这是方法名称(GET、POST、PUT 等);对于 SQL,这是动词(SELECT、UPDATE、DELETE 等)。

keyword

network.bytes

在两个方向上传输的总字节数。如果已知 source.bytesdestination.bytes,则 network.bytes 是它们的总和。

long

network.community_id

源 IP 和目标 IP、端口以及通信中使用的协议的哈希值。这是一个与工具无关的用于标识流的标准。在 https://github.com/corelight/community-id-spec 了解更多信息。

keyword

network.direction

网络流量的方向。当从基于主机的监控上下文中映射事件时,请从主机的角度使用值“ingress”或“egress”填充此字段。当从基于网络或基于边界的监控上下文中映射事件时,请从网络边界的角度使用值“inbound”、“outbound”、“internal”或“external”填充此字段。请注意,“internal”未跨越边界,旨在描述边界内两台主机之间的通信。另请注意,“external”旨在描述边界外部两台主机之间的流量。例如,这对于 ISP 或 VPN 服务提供商可能很有用。

keyword

network.forwarded_ip

当源 IP 地址为代理时的主机 IP 地址。

ip

network.protocol

在 OSI 模型中,这将是应用层协议。例如,httpdnsssh。为了进行查询,必须将字段值标准化为小写。

keyword

network.transport

与 network.iana_number 相同,但使用传输层的关键字名称(udp、tcp、ipv6-icmp 等)。为了进行查询,必须将字段值标准化为小写。

keyword

network.type

在 OSI 模型中,这将是网络层。ipv4、ipv6、ipsec、pim 等。为了进行查询,必须将字段值标准化为小写。

keyword

network_traffic.dhcpv4.assigned_ip

DHCP 服务器分配给客户端的 IP 地址。此字段也称为“您的”IP 地址。

ip

network_traffic.dhcpv4.client_ip

客户端的当前 IP 地址。

ip

network_traffic.dhcpv4.client_mac

客户端的 MAC 地址(二层)。

keyword

network_traffic.dhcpv4.flags

客户端设置标志以指示 DHCP 服务器应如何回复 — 单播或广播。

keyword

network_traffic.dhcpv4.hardware_type

用于本地网络的硬件类型(以太网、LocalTalk 等)。

keyword

network_traffic.dhcpv4.hops

DHCP 消息经过的跳数。

long

network_traffic.dhcpv4.op_code

消息操作码(引导请求或引导回复)。

keyword

network_traffic.dhcpv4.option.boot_file_name

当 DHCP 标头中的文件字段已用于 DHCP 选项时,此选项用于标识引导文件。

keyword

network_traffic.dhcpv4.option.broadcast_address

此选项指定客户端子网上使用的广播地址。

ip

network_traffic.dhcpv4.option.class_identifier

DHCP 客户端使用此选项来可选地标识 DHCP 客户端的供应商类型和配置。供应商可以选择定义特定的供应商类标识符来传递有关客户端的特定配置或其他标识信息。例如,标识符可以编码客户端的硬件配置。

keyword

network_traffic.dhcpv4.option.dns_servers

域名服务器选项指定客户端可用的域名系统服务器列表。

ip

network_traffic.dhcpv4.option.domain_name

此选项指定客户端在通过域名系统解析主机名时应使用的域名。

keyword

network_traffic.dhcpv4.option.hostname

此选项指定客户端的名称。

keyword

network_traffic.dhcpv4.option.ip_address_lease_time_sec

此选项在客户端请求(DHCPDISCOVER 或 DHCPREQUEST)中使用,以允许客户端请求 IP 地址的租用时间。在服务器回复 (DHCPOFFER) 中,DHCP 服务器使用此选项指定其愿意提供的租用时间。

long

network_traffic.dhcpv4.option.max_dhcp_message_size

此选项指定客户端愿意接受的最大长度 DHCP 消息。

long

network_traffic.dhcpv4.option.message

DHCP 服务器在发生故障时使用此选项在 DHCPNAK 消息中向 DHCP 客户端提供错误消息。客户端可以在 DHCPDECLINE 消息中使用此选项来指示客户端拒绝所提供的参数的原因。

text

network_traffic.dhcpv4.option.message_type

发送的特定类型的 DHCP 消息(例如,discover、offer、request、decline、ack、nak、release、inform)。

keyword

network_traffic.dhcpv4.option.ntp_servers

此选项指定指示客户端可用的 NTP 服务器的 IP 地址列表。

ip

network_traffic.dhcpv4.option.parameter_request_list

DHCP 客户端使用此选项来请求指定配置参数的值。

keyword

network_traffic.dhcpv4.option.rebinding_time_sec

此选项指定从地址分配到客户端转换为 REBINDING 状态的时间间隔。

long

network_traffic.dhcpv4.option.renewal_time_sec

此选项指定从地址分配到客户端转换为 RENEWING 状态的时间间隔。

long

network_traffic.dhcpv4.option.requested_ip_address

此选项在客户端请求 (DHCPDISCOVER) 中使用,以允许客户端请求分配特定 IP 地址。

ip

network_traffic.dhcpv4.option.router

路由器选项指定客户端子网上的路由器 IP 地址列表。

ip

network_traffic.dhcpv4.option.server_identifier

处理此消息的各个 DHCP 服务器的 IP 地址。

ip

network_traffic.dhcpv4.option.subnet_mask

客户端应在当前网络上使用的子网掩码。

ip

network_traffic.dhcpv4.option.time_servers

时间服务器选项指定客户端可用的 RFC 868 时间服务器列表。

ip

network_traffic.dhcpv4.option.utc_time_offset_sec

时区偏移字段指定客户端子网与协调世界时 (UTC) 的偏移量(以秒为单位)。

long

network_traffic.dhcpv4.option.vendor_identifying_options.data

以十六进制格式编码的其他供应商数据。

keyword

network_traffic.dhcpv4.option.vendor_identifying_options.id

设备标识符。

keyword

network_traffic.dhcpv4.relay_ip

客户端用于联系服务器的转发 IP 地址(即 DHCP 转发服务器)。

ip

network_traffic.dhcpv4.seconds

自客户端开始地址获取或续订过程以来经过的秒数。

long

network_traffic.dhcpv4.server_ip

客户端应在引导过程的下一步中使用的 DHCP 服务器的 IP 地址。

ip

network_traffic.dhcpv4.server_name

发送消息的服务器的名称。可选。用于 DHCPOFFER 或 DHCPACK 消息。

keyword

network_traffic.dhcpv4.transaction_id

事务 ID,客户端选择的随机数,客户端和服务器使用该数字来关联客户端和服务器之间的消息和响应。

keyword

network_traffic.status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

observer.hostname

观察者的主机名。

keyword

observer.ip

观察者的 IP 地址。

ip

observer.mac

观察者的 MAC 地址。建议使用 RFC 7042 中的表示法格式:每个八位字节(即 8 位字节)由两个[大写]十六进制数字表示,给出该八位字节的值作为无符号整数。连续的八位字节用连字符分隔。

keyword

observer.name

观察者的自定义名称。这是可以赋予观察者的名称。例如,如果在组织中使用同一型号的多个防火墙,则这可能会有所帮助。如果不需要自定义名称,则该字段可以留空。

keyword

params

请求参数。对于 HTTP,这些是 POST 或 GET 参数。对于 Thrift-RPC,这些是请求中的参数。

text

path

事务引用的路径。对于 HTTP,这是 URL。对于 SQL 数据库,这是表名。对于键值存储,这是键。

keyword

process.args

进程参数的数组,从可执行文件的绝对路径开始。可能会经过过滤以保护敏感信息。

keyword

process.executable

进程可执行文件的绝对路径。

keyword

process.executable.text

process.executable 的多字段。

match_only_text

process.name

进程名称。有时称为程序名称或类似名称。

keyword

process.name.text

process.name 的多字段。

match_only_text

process.start

进程启动的时间。

date

process.working_directory

进程的工作目录。

keyword

process.working_directory.text

process.working_directory 的多字段。

match_only_text

query

人类可读格式的查询。对于 HTTP,它通常类似于 GET /users/_search?name=test。对于 MySQL,它类似于 SELECT id from users where name=test

keyword

related.hosts

在您的事件中看到的所有主机名或其他主机标识符。示例标识符包括 FQDN、域名、工作站名称或别名。

keyword

related.ip

在您的事件中看到的所有 IP。

ip

request

对于文本协议,这是在网络上看到的请求(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

resource

此事务引用的逻辑资源。对于 HTTP,这是 URL 路径,直到最后一个斜杠 (/)。例如,如果 URL 是 /users/1,则资源是 /users。对于数据库,资源通常是表名。并非所有事务类型都会填充该字段。

keyword

response

对于文本协议,这是在网络上看到的响应(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

server.bytes

从服务器发送到客户端的字节数。

long

server.geo.city_name

城市名称。

keyword

server.geo.continent_name

大洲的名称。

keyword

server.geo.country_iso_code

国家/地区 ISO 代码。

keyword

server.geo.country_name

国家/地区名称。

keyword

server.geo.location

经度和纬度。

geo_point

server.geo.region_iso_code

区域 ISO 代码。

keyword

server.geo.region_name

区域名称。

keyword

server.ip

服务器的 IP 地址(IPv4 或 IPv6)。

ip

server.port

服务器的端口。

long

server.process.args

为事务提供服务的进程的命令行。

keyword

server.process.executable

服务器进程可执行文件的绝对路径。

keyword

server.process.name

为事务提供服务的进程的名称。

keyword

server.process.start

服务器进程启动的时间。

date

server.process.working_directory

服务器进程的工作目录。

keyword

source.bytes

从源发送到目标的字节数。

long

source.geo.city_name

城市名称。

keyword

source.geo.continent_name

大洲的名称。

keyword

source.geo.country_iso_code

国家/地区 ISO 代码。

keyword

source.geo.country_name

国家/地区名称。

keyword

source.geo.location

经度和纬度。

geo_point

source.geo.region_iso_code

区域 ISO 代码。

keyword

source.geo.region_name

区域名称。

keyword

source.ip

源的 IP 地址(IPv4 或 IPv6)。

ip

source.port

源的端口。

long

status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

tags

用于标记每个事件的关键字列表。

keyword

类型

事务的类型(例如,HTTP、MySQL、Redis 或 RUM),如果是流程则为 “flow”。

keyword

示例

dhcpv4 的一个示例事件如下所示

{
    "@timestamp": "2023-10-16T22:31:47.648Z",
    "agent": {
        "ephemeral_id": "a1bdc581-8ac7-4f07-a78a-656bceaa0c91",
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "name": "docker-fleet-agent",
        "type": "packetbeat",
        "version": "8.6.2"
    },
    "client": {
        "bytes": 272,
        "ip": "0.0.0.0",
        "port": 68
    },
    "data_stream": {
        "dataset": "network_traffic.dhcpv4",
        "namespace": "ep",
        "type": "logs"
    },
    "destination": {
        "ip": "255.255.255.255",
        "port": 67
    },
    "dhcpv4": {
        "client_mac": "00-0B-82-01-FC-42",
        "flags": "unicast",
        "hardware_type": "Ethernet",
        "hops": 0,
        "op_code": "bootrequest",
        "option": {
            "message_type": "discover",
            "parameter_request_list": [
                "Subnet Mask",
                "Router",
                "Domain Name Server",
                "NTP Servers"
            ],
            "requested_ip_address": "0.0.0.0"
        },
        "seconds": 0,
        "transaction_id": "0x00003d1d"
    },
    "ecs": {
        "version": "8.11.0"
    },
    "elastic_agent": {
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "snapshot": false,
        "version": "8.6.2"
    },
    "event": {
        "agent_id_status": "verified",
        "category": [
            "network"
        ],
        "dataset": "network_traffic.dhcpv4",
        "ingested": "2023-10-16T22:31:48Z",
        "kind": "event",
        "start": "2023-10-16T22:31:47.648Z",
        "type": [
            "connection",
            "protocol"
        ]
    },
    "host": {
        "architecture": "x86_64",
        "containerized": false,
        "hostname": "docker-fleet-agent",
        "id": "f91b175388d443fca5c155815dfc2279",
        "ip": [
            "172.19.0.7"
        ],
        "mac": [
            "02-42-AC-13-00-07"
        ],
        "name": "docker-fleet-agent",
        "os": {
            "codename": "focal",
            "family": "debian",
            "kernel": "5.15.49-linuxkit",
            "name": "Ubuntu",
            "platform": "ubuntu",
            "type": "linux",
            "version": "20.04.5 LTS (Focal Fossa)"
        }
    },
    "network": {
        "bytes": 272,
        "community_id": "1:t9O1j0qj71O4wJM7gnaHtgmfev8=",
        "direction": "unknown",
        "protocol": "dhcpv4",
        "transport": "udp",
        "type": "ipv4"
    },
    "related": {
        "ip": [
            "0.0.0.0",
            "255.255.255.255"
        ]
    },
    "server": {
        "ip": "255.255.255.255",
        "port": 67
    },
    "source": {
        "bytes": 272,
        "ip": "0.0.0.0",
        "port": 68
    },
    "status": "OK",
    "type": "dhcpv4"
}

DNS 协议支持在 TCP 和 UDP 上处理 DNS 消息。

配置选项

另请参阅 通用协议选项

include_authorities
编辑

如果启用此选项,则 dns.authority 字段(授权资源记录)将添加到 DNS 事件。默认值为 false。

include_additionals
编辑

如果启用此选项,则 dns.additionals 字段(附加资源记录)将添加到 DNS 事件。默认值为 false。

为 DNS 数据包发布的字段。

导出的字段
字段 描述 类型

@timestamp

事件时间戳。

date

client.bytes

从客户端发送到服务器的字节。

long

client.geo.city_name

城市名称。

keyword

client.geo.continent_name

大洲的名称。

keyword

client.geo.country_iso_code

国家/地区 ISO 代码。

keyword

client.geo.country_name

国家/地区名称。

keyword

client.geo.location

经度和纬度。

geo_point

client.geo.region_iso_code

区域 ISO 代码。

keyword

client.geo.region_name

区域名称。

keyword

client.ip

客户端的 IP 地址(IPv4 或 IPv6)。

ip

client.port

客户端的端口。

long

client.process.args

启动事务的进程的命令行。

keyword

client.process.executable

客户端进程可执行文件的绝对路径。

keyword

client.process.name

启动事务的进程的名称。

keyword

client.process.start

客户端进程启动的时间。

date

client.process.working_directory

客户端进程的工作目录。

keyword

cloud.account.id

用于标识多租户环境中不同实体的云帐户或组织 ID。示例:AWS 帐户 ID、Google Cloud ORG ID 或其他唯一标识符。

keyword

cloud.availability_zone

此主机运行所在的可用区。

keyword

cloud.image.id

云实例的映像 ID。

keyword

cloud.instance.id

主机计算机的实例 ID。

keyword

cloud.instance.name

主机计算机的实例名称。

keyword

cloud.machine.type

主机计算机的机器类型。

keyword

cloud.project.id

Google Cloud 中项目的名称。

keyword

cloud.provider

云提供商的名称。示例值包括 aws、azure、gcp 或 digitalocean。

keyword

cloud.region

此主机运行所在的区域。

keyword

container.id

唯一的容器 ID。

keyword

container.image.name

构建容器所基于的映像的名称。

keyword

container.labels

映像标签。

object

container.name

容器名称。

keyword

data_stream.dataset

数据流数据集。

constant_keyword

data_stream.namespace

数据流命名空间。

constant_keyword

data_stream.type

数据流类型。

constant_keyword

destination.bytes

从目标发送到源的字节。

long

destination.geo.city_name

城市名称。

keyword

destination.geo.continent_name

大洲的名称。

keyword

destination.geo.country_iso_code

国家/地区 ISO 代码。

keyword

destination.geo.country_name

国家/地区名称。

keyword

destination.geo.location

经度和纬度。

geo_point

destination.geo.region_iso_code

区域 ISO 代码。

keyword

destination.geo.region_name

区域名称。

keyword

destination.ip

目标的 IP 地址(IPv4 或 IPv6)。

ip

destination.port

目标的端口。

long

dns.additionals

一个数组,其中包含来自答案的每个附加部分的字典。

扁平化

dns.additionals.class

此资源记录中包含的 DNS 数据的类。

keyword

dns.additionals.data

描述资源的的数据。此数据的含义取决于资源记录的类型和类。

keyword

dns.additionals.name

此资源记录所属的域名。

keyword

dns.additionals.ttl

此资源记录在被丢弃之前可以缓存的时间间隔,以秒为单位。零值表示数据不应被缓存。

long

dns.additionals.type

此资源记录中包含的数据类型。

keyword

dns.additionals_count

dns.additionals 字段中包含的资源记录数量。 dns.additionals 字段是否包含取决于 Packetbeat 的配置。

long

dns.answers

一个数组,其中包含服务器返回的每个答案部分的 JSON 对象。 这些对象中应存在的主要键由 ECS 定义。具有更多信息的记录可能包含比 ECS 定义的更多的键。并非所有 DNS 数据源都提供有关 DNS 答案的所有详细信息。至少,答案对象必须包含 data 键。如果可以获得更多信息,请尽可能将其映射到 ECS,并将任何其他字段作为自定义字段添加到答案对象中。

group

dns.answers.class

此资源记录中包含的 DNS 数据的类。

keyword

dns.answers.data

描述资源的的数据。此数据的含义取决于资源记录的类型和类。

keyword

dns.answers.name

此资源记录所属的域名。如果要解析 CNAME 链,则每个答案的 name 应与其答案的 data 相对应。它不应仅仅是重复的原始 question.name

keyword

dns.answers.ttl

此资源记录在被丢弃之前可以缓存的时间间隔,以秒为单位。零值表示数据不应被缓存。

long

dns.answers.type

此资源记录中包含的数据类型。

keyword

dns.answers_count

dns.answers 字段中包含的资源记录数量。

long

dns.authorities

一个数组,其中包含答案中每个权威部分的字典。

扁平化

dns.authorities.class

此资源记录中包含的 DNS 数据的类。

keyword

dns.authorities.name

此资源记录所属的域名。

keyword

dns.authorities.type

此资源记录中包含的数据类型。

keyword

dns.authorities_count

dns.authorities 字段中包含的资源记录数量。 dns.authorities 字段是否包含取决于 Packetbeat 的配置。

long

dns.flags.authentic_data

一个 DNS 标志,指定递归服务器认为响应是真实的。

boolean

dns.flags.authoritative

一个 DNS 标志,指定响应服务器是问题中使用域名的权威。

boolean

dns.flags.checking_disabled

一个 DNS 标志,指定客户端禁用查询的服务器签名验证。

boolean

dns.flags.recursion_available

一个 DNS 标志,指定名称服务器中是否提供递归查询支持。

boolean

dns.flags.recursion_desired

一个 DNS 标志,指定客户端指示服务器递归执行查询。 递归查询支持是可选的。

boolean

dns.flags.truncated_response

一个 DNS 标志,指定仅返回了回复的前 512 个字节。

boolean

dns.header_flags

由 2 个字母组成的 DNS 标头标志数组。

keyword

dns.id

生成查询的程序分配的 DNS 数据包标识符。 该标识符被复制到响应中。

keyword

dns.op_code

DNS 操作码,指定消息中查询的类型。 此值由查询的发起者设置,并复制到响应中。

keyword

dns.opt.do

如果设置,则事务使用 DNSSEC。

boolean

dns.opt.ext_rcode

扩展的响应代码字段。

keyword

dns.opt.udp_size

请求者的 UDP 有效负载大小(以字节为单位)。

long

dns.opt.version

EDNS 版本。

keyword

dns.question.class

正在查询的记录的类别。

keyword

dns.question.etld_plus_one

有效的顶级域名 (eTLD) 再加一个标签。 例如,“foo.bar.golang.org.” 的 eTLD+1 是“golang.org.”。 确定 eTLD 的数据来自 http://publicsuffix.org 的嵌入数据副本。

keyword

dns.question.name

正在查询的名称。 如果名称字段包含不可打印的字符(低于 32 或高于 126),则这些字符应表示为转义的十进制整数 (\DDD)。 反斜杠和引号应被转义。 制表符、回车符和换行符应分别转换为 \t、\r 和 \n。

keyword

dns.question.registered_domain

已注册的最高域,不包含子域。 例如,“foo.example.com”的已注册域是“example.com”。 可以使用公共后缀列表 (http://publicsuffix.org) 之类的列表精确确定此值。 尝试通过简单地取最后两个标签来近似此值对于诸如“co.uk”之类的 TLD 将不起作用。

keyword

dns.question.subdomain

子域是 registered_domain 下的所有标签。 如果域具有多个级别的子域,例如“sub2.sub1.example.com”,则子域字段应包含“sub2.sub1”,且不包含尾随句点。

keyword

dns.question.top_level_domain

有效的顶级域名 (eTLD),也称为域名后缀,是域名的最后一部分。 例如,example.com 的顶级域是“com”。 可以使用公共后缀列表 (http://publicsuffix.org) 之类的列表精确确定此值。 尝试通过简单地取最后一个标签来近似此值对于诸如“co.uk”之类的有效 TLD 将不起作用。

keyword

dns.question.type

正在查询的记录类型。

keyword

dns.resolved_ip

包含在 answers.data 中看到的所有 IP 的数组。answers 数组可能难以使用,因为它可能包含各种数据格式。将其中看到的所有 IP 地址提取到 dns.resolved_ip 可以将它们作为 IP 地址进行索引,并使其更容易可视化和查询。

ip

dns.response_code

DNS 响应代码。

keyword

dns.type

捕获的 DNS 事件的类型,查询或应答。如果您的 DNS 事件来源仅为您提供 DNS 查询,则您应仅创建类型为 dns.type:query 的 dns 事件。如果您的 DNS 事件来源也为您提供应答,则您应为每个查询创建一个事件(可选地在看到查询后立即创建)。并创建第二个事件,其中包含所有查询详细信息以及应答数组。

keyword

ecs.version

此事件符合的 ECS 版本。ecs.version 是必填字段,并且必须存在于所有事件中。在查询可能符合略有不同的 ECS 版本的多个索引时,此字段允许集成调整到事件的架构版本。

keyword

event.category

这是四个 ECS 分类字段之一,表示 ECS 类别层次结构中的第二级。event.category 表示 ECS 类别的“大类”。例如,筛选 event.category:process 会生成与进程活动相关的所有事件。此字段与用作子类别的 event.type 密切相关。此字段是一个数组。这将允许正确分类属于多个类别的某些事件。

keyword

event.dataset

数据集的名称。如果某个事件源发布多种类型的日志或事件(例如,访问日志、错误日志),则数据集用于指定该事件的来源。建议但不是必须以模块名称开头命名数据集名称,后跟一个点,然后是数据集名称。

keyword

event.duration

事件的持续时间,以纳秒为单位。如果知道 event.startevent.end,则此值应为结束时间和开始时间之间的差值。

long

event.end

event.end 包含事件结束或上次观察到活动时的日期。

date

event.kind

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的最高级别。event.kind 提供关于事件包含的信息类型的高级信息,而无需具体到事件的内容。例如,此字段的值区分警报事件和指标事件。此字段的值可用于通知应如何处理这些类型的事件。它们可能需要不同的保留策略、不同的访问控制,它还有助于了解数据是否以固定间隔传入。

keyword

event.module

此数据来自的模块的名称。如果您的监控代理支持使用模块或插件来处理给定来源的事件(例如,Apache 日志),则 event.module 应包含此模块的名称。

constant_keyword

event.start

event.start 包含事件开始的时间或首次观察到活动的时间。

date

event.type

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的第三级。event.type 表示一个分类“子桶”,当与 event.category 字段值一起使用时,可以将事件过滤到适合单个可视化的级别。此字段是一个数组。这将允许对属于多个事件类型的某些事件进行适当的分类。

keyword

flow.final

指示事件是否是流中的最后一个事件。如果 final 为 false,则该事件仅报告中间流状态。

boolean

flow.id

基于连接元数据和地址的内部流 ID。

keyword

flow.vlan

来自 802.1q 帧的 VLAN 标识符。如果存在多标记帧,则此字段将是一个数组,其中外部标记的 VLAN 标识符首先列出。

long

host.architecture

操作系统架构。

keyword

host.containerized

主机是否为容器。

boolean

host.domain

主机所属的域名。例如,在 Windows 上,这可以是主机的 Active Directory 域或 NetBIOS 域名。对于 Linux,这可以是主机 LDAP 提供程序的域。

keyword

host.hostname

主机的 hostname。它通常包含主机上的 hostname 命令返回的内容。

keyword

host.id

唯一的主机 ID。由于 hostname 并不总是唯一的,请使用在您的环境中具有意义的值。例如:当前 beat.name 的用法。

keyword

host.ip

主机 IP 地址。

ip

host.mac

主机 MAC 地址。

keyword

host.name

主机的名称。它可以包含 Unix 系统上 hostname 返回的内容、完全限定域名或用户指定的名称。发送者决定使用哪个值。

keyword

host.os.build

操作系统构建信息。

keyword

host.os.codename

操作系统代码名(如果有)。

keyword

host.os.family

操作系统系列(如 redhat、debian、freebsd、windows)。

keyword

host.os.kernel

操作系统内核版本,以原始字符串形式表示。

keyword

host.os.name

操作系统名称,不带版本。

keyword

host.os.name.text

host.os.name 的多字段。

text

host.os.platform

操作系统平台(如 centos、ubuntu、windows)。

keyword

host.os.version

操作系统版本,以原始字符串形式表示。

keyword

host.type

主机类型。对于云提供商,这可以是诸如 t2.medium 之类的机器类型。如果为虚拟机,则可以是容器,或其他在您的环境中具有意义的信息。

keyword

method

事务的命令/动词/方法。对于 HTTP,这是方法名称(GET、POST、PUT 等);对于 SQL,这是动词(SELECT、UPDATE、DELETE 等)。

keyword

network.bytes

在两个方向上传输的总字节数。如果已知 source.bytesdestination.bytes,则 network.bytes 是它们的总和。

long

network.community_id

源 IP 和目标 IP、端口以及通信中使用的协议的哈希值。这是一个与工具无关的用于标识流的标准。在 https://github.com/corelight/community-id-spec 了解更多信息。

keyword

network.direction

网络流量的方向。当从基于主机的监控上下文中映射事件时,请从主机的角度使用值“ingress”或“egress”填充此字段。当从基于网络或基于边界的监控上下文中映射事件时,请从网络边界的角度使用值“inbound”、“outbound”、“internal”或“external”填充此字段。请注意,“internal”未跨越边界,旨在描述边界内两台主机之间的通信。另请注意,“external”旨在描述边界外部两台主机之间的流量。例如,这对于 ISP 或 VPN 服务提供商可能很有用。

keyword

network.forwarded_ip

当源 IP 地址为代理时的主机 IP 地址。

ip

network.protocol

在 OSI 模型中,这将是应用层协议。例如,httpdnsssh。为了进行查询,必须将字段值标准化为小写。

keyword

network.transport

与 network.iana_number 相同,但使用传输层的关键字名称(udp、tcp、ipv6-icmp 等)。为了进行查询,必须将字段值标准化为小写。

keyword

network.type

在 OSI 模型中,这将是网络层。ipv4、ipv6、ipsec、pim 等。为了进行查询,必须将字段值标准化为小写。

keyword

network_traffic.dns.additionals

一个数组,其中包含来自答案的每个附加部分的字典。

扁平化

network_traffic.dns.additionals.class

此资源记录中包含的 DNS 数据的类。

keyword

network_traffic.dns.additionals.data

描述资源的的数据。此数据的含义取决于资源记录的类型和类。

keyword

network_traffic.dns.additionals.name

此资源记录所属的域名。

keyword

network_traffic.dns.additionals.ttl

此资源记录在被丢弃之前可以缓存的时间间隔,以秒为单位。零值表示数据不应被缓存。

long

network_traffic.dns.additionals.type

此资源记录中包含的数据类型。

keyword

network_traffic.dns.additionals_count

dns.additionals 字段中包含的资源记录数量。 dns.additionals 字段是否包含取决于 Packetbeat 的配置。

long

network_traffic.dns.answers_count

dns.answers 字段中包含的资源记录数量。

long

network_traffic.dns.authorities

一个数组,其中包含答案中每个权威部分的字典。

扁平化

network_traffic.dns.authorities.class

此资源记录中包含的 DNS 数据的类。

keyword

network_traffic.dns.authorities.name

此资源记录所属的域名。

keyword

network_traffic.dns.authorities.type

此资源记录中包含的数据类型。

keyword

network_traffic.dns.authorities_count

dns.authorities 字段中包含的资源记录数量。 dns.authorities 字段是否包含取决于 Packetbeat 的配置。

long

network_traffic.dns.flags.authentic_data

一个 DNS 标志,指定递归服务器认为响应是真实的。

boolean

network_traffic.dns.flags.authoritative

一个 DNS 标志,指定响应服务器是问题中使用域名的权威。

boolean

network_traffic.dns.flags.checking_disabled

一个 DNS 标志,指定客户端禁用查询的服务器签名验证。

boolean

network_traffic.dns.flags.recursion_available

一个 DNS 标志,指定名称服务器中是否提供递归查询支持。

boolean

network_traffic.dns.flags.recursion_desired

一个 DNS 标志,指定客户端指示服务器递归执行查询。 递归查询支持是可选的。

boolean

network_traffic.dns.flags.truncated_response

一个 DNS 标志,指定仅返回了回复的前 512 个字节。

boolean

network_traffic.dns.method

事务的命令/动词/方法。

keyword

network_traffic.dns.opt.do

如果设置,则事务使用 DNSSEC。

boolean

network_traffic.dns.opt.ext_rcode

扩展的响应代码字段。

keyword

network_traffic.dns.opt.udp_size

请求者的 UDP 有效负载大小(以字节为单位)。

long

network_traffic.dns.opt.version

EDNS 版本。

keyword

network_traffic.dns.query

以人类可读格式显示的查询。

keyword

network_traffic.dns.question.etld_plus_one

有效的顶级域名 (eTLD) 再加一个标签。 例如,“foo.bar.golang.org.” 的 eTLD+1 是“golang.org.”。 确定 eTLD 的数据来自 http://publicsuffix.org 的嵌入数据副本。

keyword

network_traffic.dns.resource

此事务引用的逻辑资源。

keyword

network_traffic.status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

observer.hostname

观察者的主机名。

keyword

observer.ip

观察者的 IP 地址。

ip

observer.mac

观察者的 MAC 地址。建议使用 RFC 7042 中的表示法格式:每个八位字节(即 8 位字节)由两个[大写]十六进制数字表示,给出该八位字节的值作为无符号整数。连续的八位字节用连字符分隔。

keyword

observer.name

观察者的自定义名称。这是可以赋予观察者的名称。例如,如果在组织中使用同一型号的多个防火墙,则这可能会有所帮助。如果不需要自定义名称,则该字段可以留空。

keyword

params

请求参数。对于 HTTP,这些是 POST 或 GET 参数。对于 Thrift-RPC,这些是请求中的参数。

text

path

事务引用的路径。对于 HTTP,这是 URL。对于 SQL 数据库,这是表名。对于键值存储,这是键。

keyword

process.args

进程参数的数组,从可执行文件的绝对路径开始。可能会经过过滤以保护敏感信息。

keyword

process.executable

进程可执行文件的绝对路径。

keyword

process.executable.text

process.executable 的多字段。

match_only_text

process.name

进程名称。有时称为程序名称或类似名称。

keyword

process.name.text

process.name 的多字段。

match_only_text

process.start

进程启动的时间。

date

process.working_directory

进程的工作目录。

keyword

process.working_directory.text

process.working_directory 的多字段。

match_only_text

query

人类可读格式的查询。对于 HTTP,它通常类似于 GET /users/_search?name=test。对于 MySQL,它类似于 SELECT id from users where name=test

keyword

related.hosts

在您的事件中看到的所有主机名或其他主机标识符。示例标识符包括 FQDN、域名、工作站名称或别名。

keyword

related.ip

在您的事件中看到的所有 IP。

ip

request

对于文本协议,这是在网络上看到的请求(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

resource

此事务引用的逻辑资源。对于 HTTP,这是 URL 路径,直到最后一个斜杠 (/)。例如,如果 URL 是 /users/1,则资源是 /users。对于数据库,资源通常是表名。并非所有事务类型都会填充该字段。

keyword

response

对于文本协议,这是在网络上看到的响应(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

server.bytes

从服务器发送到客户端的字节数。

long

server.geo.city_name

城市名称。

keyword

server.geo.continent_name

大洲的名称。

keyword

server.geo.country_iso_code

国家/地区 ISO 代码。

keyword

server.geo.country_name

国家/地区名称。

keyword

server.geo.location

经度和纬度。

geo_point

server.geo.region_iso_code

区域 ISO 代码。

keyword

server.geo.region_name

区域名称。

keyword

server.ip

服务器的 IP 地址(IPv4 或 IPv6)。

ip

server.port

服务器的端口。

long

server.process.args

为事务提供服务的进程的命令行。

keyword

server.process.executable

服务器进程可执行文件的绝对路径。

keyword

server.process.name

为事务提供服务的进程的名称。

keyword

server.process.start

服务器进程启动的时间。

date

server.process.working_directory

服务器进程的工作目录。

keyword

source.bytes

从源发送到目标的字节数。

long

source.geo.city_name

城市名称。

keyword

source.geo.continent_name

大洲的名称。

keyword

source.geo.country_iso_code

国家/地区 ISO 代码。

keyword

source.geo.country_name

国家/地区名称。

keyword

source.geo.location

经度和纬度。

geo_point

source.geo.region_iso_code

区域 ISO 代码。

keyword

source.geo.region_name

区域名称。

keyword

source.ip

源的 IP 地址(IPv4 或 IPv6)。

ip

source.port

源的端口。

long

status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

tags

用于标记每个事件的关键字列表。

keyword

类型

事务的类型(例如,HTTP、MySQL、Redis 或 RUM),如果是流程则为 “flow”。

keyword

示例

关于 dns 的一个示例事件如下

{
    "@timestamp": "2023-10-16T22:36:55.594Z",
    "agent": {
        "ephemeral_id": "1aa050cd-250a-42b2-88cc-25d4a1e3b123",
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "name": "docker-fleet-agent",
        "type": "packetbeat",
        "version": "8.6.2"
    },
    "client": {
        "bytes": 28,
        "ip": "192.168.238.68",
        "port": 53765
    },
    "data_stream": {
        "dataset": "network_traffic.dns",
        "namespace": "ep",
        "type": "logs"
    },
    "destination": {
        "bytes": 167,
        "ip": "8.8.8.8",
        "port": 53
    },
    "dns": {
        "additionals_count": 0,
        "answers": [
            {
                "class": "IN",
                "data": "ns-1183.awsdns-19.org",
                "name": "elastic.co",
                "ttl": "21599",
                "type": "NS"
            },
            {
                "class": "IN",
                "data": "ns-2007.awsdns-58.co.uk",
                "name": "elastic.co",
                "ttl": "21599",
                "type": "NS"
            },
            {
                "class": "IN",
                "data": "ns-66.awsdns-08.com",
                "name": "elastic.co",
                "ttl": "21599",
                "type": "NS"
            },
            {
                "class": "IN",
                "data": "ns-835.awsdns-40.net",
                "name": "elastic.co",
                "ttl": "21599",
                "type": "NS"
            }
        ],
        "answers_count": 4,
        "authorities_count": 0,
        "flags": {
            "authentic_data": false,
            "authoritative": false,
            "checking_disabled": false,
            "recursion_available": true,
            "recursion_desired": true,
            "truncated_response": false
        },
        "header_flags": [
            "RD",
            "RA"
        ],
        "id": 26187,
        "op_code": "QUERY",
        "question": {
            "class": "IN",
            "etld_plus_one": "elastic.co",
            "name": "elastic.co",
            "registered_domain": "elastic.co",
            "top_level_domain": "co",
            "type": "NS"
        },
        "response_code": "NOERROR",
        "type": "answer"
    },
    "ecs": {
        "version": "8.11.0"
    },
    "elastic_agent": {
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "snapshot": false,
        "version": "8.6.2"
    },
    "event": {
        "agent_id_status": "verified",
        "category": [
            "network"
        ],
        "dataset": "network_traffic.dns",
        "duration": 68791650,
        "end": "2023-10-16T22:36:55.663Z",
        "ingested": "2023-10-16T22:36:56Z",
        "kind": "event",
        "start": "2023-10-16T22:36:55.594Z",
        "type": [
            "connection",
            "protocol"
        ]
    },
    "host": {
        "architecture": "x86_64",
        "containerized": false,
        "hostname": "docker-fleet-agent",
        "id": "f91b175388d443fca5c155815dfc2279",
        "ip": [
            "172.19.0.7"
        ],
        "mac": [
            "02-42-AC-13-00-07"
        ],
        "name": "docker-fleet-agent",
        "os": {
            "codename": "focal",
            "family": "debian",
            "kernel": "5.15.49-linuxkit",
            "name": "Ubuntu",
            "platform": "ubuntu",
            "type": "linux",
            "version": "20.04.5 LTS (Focal Fossa)"
        }
    },
    "method": "QUERY",
    "network": {
        "bytes": 195,
        "community_id": "1:3P4ruI0bVlqxiTAs0WyBhnF74ek=",
        "direction": "unknown",
        "protocol": "dns",
        "transport": "udp",
        "type": "ipv4"
    },
    "query": "class IN, type NS, elastic.co",
    "related": {
        "ip": [
            "192.168.238.68",
            "8.8.8.8"
        ]
    },
    "resource": "elastic.co",
    "server": {
        "bytes": 167,
        "ip": "8.8.8.8",
        "port": 53
    },
    "source": {
        "bytes": 28,
        "ip": "192.168.238.68",
        "port": 53765
    },
    "status": "OK",
    "type": "dns"
}

HTTP

编辑

配置选项

另请参阅 通用协议选项

hide_keywords
编辑

网络数据包捕获将在其保存的事务中自动审查的查询参数列表。 与这些参数关联的值将替换为 'xxxxx'。 默认情况下,不会对 HTTP 消息进行任何更改。

网络数据包捕获具有此选项,因为与通常仅包含密码哈希的 SQL 流量不同,HTTP 流量可能包含敏感数据。 为了降低安全风险,您可以配置此选项以避免发送某些 HTTP POST 参数的内容。

此选项替换 GET 请求中的查询参数和 POST 请求中的顶级参数。 如果敏感数据编码在您此处未指定的参数内,则网络数据包捕获无法审查它。 此外,请注意,如果您配置网络数据包捕获以保存原始请求和响应字段(请参阅`send_request``send_response`选项),则这些字段中可能存在敏感数据。

redact_authorization
编辑

启用此选项后,网络数据包捕获会模糊 AuthorizationProxy-Authorization HTTP 标头的值,并审查响应中的那些字符串。

对于使用基本身份验证的事务,应将此选项设置为 true,因为它们可能包含 base64 未加密的用户名和密码。

send_headers
编辑

要捕获并发送到 Elasticsearch 的标头名称列表。 这些标头放置在生成的 JSON 中的 headers 字典下。

send_all_headers
编辑

您可以将此选项设置为 true 以发送所有标头,而不是将标头白名单发送到 Elasticsearch。 默认值为 false。

redact_headers
编辑

如果在 HTTP 请求中存在,则要编辑的标头列表。 这将保留标头字段的存在,但会编辑其值以显示标头的存在。

include_body_for
编辑

网络数据包捕获导出完整 HTTP 有效负载的内容类型列表。 对于这些内容类型,HTTP 主体在 http.request.body.contenthttp.response.body.content 下可用。

此外,如果启用 _`send_response`_ 选项,则 HTTP 主体将与 HTTP 标头一起导出到 response 下;如果启用 _`send_request`_,则 request 将包含整个 HTTP 消息,包括主体。

在以下示例中,HTTP 响应的 HTML 附件将导出到 response 字段下以及 http.request.body.contenthttp.response.body.content

Network Packet Capture.protocols:
- type: http
  ports: [80, 8080]
  send_response: true
  include_body_for: ["text/html"]
decode_body
编辑

控制 HTTP 有效负载解码的布尔标志。 它解释 Content-EncodingTransfer-Encoding 标头并解压缩实体主体。 支持的编码为 gzipdeflate。 此选项仅适用于导出 HTTP 有效负载的情况,即,当指定 include_*_body_for 选项之一或 POST 请求包含 URL 编码的参数时。

split_cookie
编辑

如果发送 CookieSet-Cookie 标头,则此选项控制是否将其拆分为单独的值。 例如,如果设置此选项,则 HTTP 响应可能会导致以下 JSON

"response": {
  "code": 200,
  "headers": {
    "connection": "close",
    "content-language": "en",
    "content-type": "text/html; charset=utf-8",
    "date": "Fri, 21 Nov 2014 17:07:34 GMT",
    "server": "gunicorn/19.1.1",
    "set-cookie": {
      "csrftoken": "S9ZuJF8mvIMT5CL4T1Xqn32wkA6ZSeyf",
      "expires": "Fri, 20-Nov-2015 17:07:34 GMT",
      "max-age": "31449600",
      "path": "/"
    },
    "vary": "Cookie, Accept-Language"
  },
  "status_phrase": "OK"
}
  • 请注意,set-cookie 是一个以 cookie 名称为键的映射。

默认值为 false。

real_ip_header
编辑

用于提取真实 IP 的标头字段。当您想要捕获反向代理后面的流量,但又想获取地理位置信息时,此设置很有用。如果此标头存在且包含有效的 IP 地址,则该信息将用于 network.forwarded_ip 字段。

max_message_size
编辑

如果单个 HTTP 消息大于此设置(以字节为单位),它将被截断为此大小。除非此值非常小(小于 1.5K),否则网络数据包捕获仍然能够正确地跟踪事务并为其创建一个事件。默认值为 10485760 (10 MB)。

为 HTTP 数据包发布的字段。

导出的字段
字段 描述 类型

@timestamp

事件时间戳。

date

client.bytes

从客户端发送到服务器的字节。

long

client.geo.city_name

城市名称。

keyword

client.geo.continent_name

大洲的名称。

keyword

client.geo.country_iso_code

国家/地区 ISO 代码。

keyword

client.geo.country_name

国家/地区名称。

keyword

client.geo.location

经度和纬度。

geo_point

client.geo.region_iso_code

区域 ISO 代码。

keyword

client.geo.region_name

区域名称。

keyword

client.ip

客户端的 IP 地址(IPv4 或 IPv6)。

ip

client.port

客户端的端口。

long

client.process.args

启动事务的进程的命令行。

keyword

client.process.executable

客户端进程可执行文件的绝对路径。

keyword

client.process.name

启动事务的进程的名称。

keyword

client.process.start

客户端进程启动的时间。

date

client.process.working_directory

客户端进程的工作目录。

keyword

cloud.account.id

用于标识多租户环境中不同实体的云帐户或组织 ID。示例:AWS 帐户 ID、Google Cloud ORG ID 或其他唯一标识符。

keyword

cloud.availability_zone

此主机运行所在的可用区。

keyword

cloud.image.id

云实例的映像 ID。

keyword

cloud.instance.id

主机计算机的实例 ID。

keyword

cloud.instance.name

主机计算机的实例名称。

keyword

cloud.machine.type

主机计算机的机器类型。

keyword

cloud.project.id

Google Cloud 中项目的名称。

keyword

cloud.provider

云提供商的名称。示例值包括 aws、azure、gcp 或 digitalocean。

keyword

cloud.region

此主机运行所在的区域。

keyword

container.id

唯一的容器 ID。

keyword

container.image.name

构建容器所基于的映像的名称。

keyword

container.labels

映像标签。

object

container.name

容器名称。

keyword

data_stream.dataset

数据流数据集。

constant_keyword

data_stream.namespace

数据流命名空间。

constant_keyword

data_stream.type

数据流类型。

constant_keyword

destination.bytes

从目标发送到源的字节。

long

destination.domain

目标系统的域名。此值可以是主机名、完全限定域名或其他主机命名格式。该值可能来自原始事件,也可能来自富化。

keyword

destination.geo.city_name

城市名称。

keyword

destination.geo.continent_name

大洲的名称。

keyword

destination.geo.country_iso_code

国家/地区 ISO 代码。

keyword

destination.geo.country_name

国家/地区名称。

keyword

destination.geo.location

经度和纬度。

geo_point

destination.geo.region_iso_code

区域 ISO 代码。

keyword

destination.geo.region_name

区域名称。

keyword

destination.ip

目标的 IP 地址(IPv4 或 IPv6)。

ip

destination.port

目标的端口。

long

ecs.version

此事件符合的 ECS 版本。ecs.version 是必填字段,并且必须存在于所有事件中。在查询可能符合略有不同的 ECS 版本的多个索引时,此字段允许集成调整到事件的架构版本。

keyword

event.category

这是四个 ECS 分类字段之一,表示 ECS 类别层次结构中的第二级。event.category 表示 ECS 类别的“大类”。例如,筛选 event.category:process 会生成与进程活动相关的所有事件。此字段与用作子类别的 event.type 密切相关。此字段是一个数组。这将允许正确分类属于多个类别的某些事件。

keyword

event.dataset

数据集的名称。如果某个事件源发布多种类型的日志或事件(例如,访问日志、错误日志),则数据集用于指定该事件的来源。建议但不是必须以模块名称开头命名数据集名称,后跟一个点,然后是数据集名称。

keyword

event.duration

事件的持续时间,以纳秒为单位。如果知道 event.startevent.end,则此值应为结束时间和开始时间之间的差值。

long

event.end

event.end 包含事件结束或上次观察到活动时的日期。

date

event.kind

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的最高级别。event.kind 提供关于事件包含的信息类型的高级信息,而无需具体到事件的内容。例如,此字段的值区分警报事件和指标事件。此字段的值可用于通知应如何处理这些类型的事件。它们可能需要不同的保留策略、不同的访问控制,它还有助于了解数据是否以固定间隔传入。

keyword

event.module

此数据来自的模块的名称。如果您的监控代理支持使用模块或插件来处理给定来源的事件(例如,Apache 日志),则 event.module 应包含此模块的名称。

constant_keyword

event.start

event.start 包含事件开始的时间或首次观察到活动的时间。

date

event.type

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的第三级。event.type 表示一个分类“子桶”,当与 event.category 字段值一起使用时,可以将事件过滤到适合单个可视化的级别。此字段是一个数组。这将允许对属于多个事件类型的某些事件进行适当的分类。

keyword

flow.final

指示事件是否是流中的最后一个事件。如果 final 为 false,则该事件仅报告中间流状态。

boolean

flow.id

基于连接元数据和地址的内部流 ID。

keyword

flow.vlan

来自 802.1q 帧的 VLAN 标识符。如果存在多标记帧,则此字段将是一个数组,其中外部标记的 VLAN 标识符首先列出。

long

host.architecture

操作系统架构。

keyword

host.containerized

主机是否为容器。

boolean

host.domain

主机所属的域名。例如,在 Windows 上,这可以是主机的 Active Directory 域或 NetBIOS 域名。对于 Linux,这可以是主机 LDAP 提供程序的域。

keyword

host.hostname

主机的 hostname。它通常包含主机上的 hostname 命令返回的内容。

keyword

host.id

唯一的主机 ID。由于 hostname 并不总是唯一的,请使用在您的环境中具有意义的值。例如:当前 beat.name 的用法。

keyword

host.ip

主机 IP 地址。

ip

host.mac

主机 MAC 地址。

keyword

host.name

主机的名称。它可以包含 Unix 系统上 hostname 返回的内容、完全限定域名或用户指定的名称。发送者决定使用哪个值。

keyword

host.os.build

操作系统构建信息。

keyword

host.os.codename

操作系统代码名(如果有)。

keyword

host.os.family

操作系统系列(如 redhat、debian、freebsd、windows)。

keyword

host.os.kernel

操作系统内核版本,以原始字符串形式表示。

keyword

host.os.name

操作系统名称,不带版本。

keyword

host.os.name.text

host.os.name 的多字段。

text

host.os.platform

操作系统平台(如 centos、ubuntu、windows)。

keyword

host.os.version

操作系统版本,以原始字符串形式表示。

keyword

host.type

主机类型。对于云提供商,这可以是诸如 t2.medium 之类的机器类型。如果为虚拟机,则可以是容器,或其他在您的环境中具有意义的信息。

keyword

http.request.body.bytes

请求正文的大小(以字节为单位)。

long

http.request.bytes

请求的总大小(以字节为单位,包括正文和标头)。

long

http.request.headers

包含从请求捕获的标头字段的映射。要捕获哪些标头是可配置的。如果消息中存在具有相同标头名称的标头,则它们将以逗号分隔。

扁平化

http.request.method

HTTP 请求方法。该值应保留原始事件中的大小写。例如,GETgetGeT 都被认为是此字段的有效值。

keyword

http.request.referrer

此 HTTP 请求的引用者。

keyword

http.response.body.bytes

响应正文的大小(以字节为单位)。

long

http.response.bytes

响应的总大小(以字节为单位,包括正文和标头)。

long

http.response.headers

包含从响应捕获的标头字段的映射。要捕获哪些标头是可配置的。如果消息中存在具有相同标头名称的标头,则它们将以逗号分隔。

扁平化

http.response.status_code

HTTP 响应状态代码。

long

http.response.status_phrase

HTTP 状态短语。

keyword

http.version

HTTP 版本。

keyword

method

事务的命令/动词/方法。对于 HTTP,这是方法名称(GET、POST、PUT 等);对于 SQL,这是动词(SELECT、UPDATE、DELETE 等)。

keyword

network.bytes

在两个方向上传输的总字节数。如果已知 source.bytesdestination.bytes,则 network.bytes 是它们的总和。

long

network.community_id

源 IP 和目标 IP、端口以及通信中使用的协议的哈希值。这是一个与工具无关的用于标识流的标准。在 https://github.com/corelight/community-id-spec 了解更多信息。

keyword

network.direction

网络流量的方向。当从基于主机的监控上下文中映射事件时,请从主机的角度使用值“ingress”或“egress”填充此字段。当从基于网络或基于边界的监控上下文中映射事件时,请从网络边界的角度使用值“inbound”、“outbound”、“internal”或“external”填充此字段。请注意,“internal”未跨越边界,旨在描述边界内两台主机之间的通信。另请注意,“external”旨在描述边界外部两台主机之间的流量。例如,这对于 ISP 或 VPN 服务提供商可能很有用。

keyword

network.forwarded_ip

当源 IP 地址为代理时的主机 IP 地址。

ip

network.protocol

在 OSI 模型中,这将是应用层协议。例如,httpdnsssh。为了进行查询,必须将字段值标准化为小写。

keyword

network.transport

与 network.iana_number 相同,但使用传输层的关键字名称(udp、tcp、ipv6-icmp 等)。为了进行查询,必须将字段值标准化为小写。

keyword

network.type

在 OSI 模型中,这将是网络层。ipv4、ipv6、ipsec、pim 等。为了进行查询,必须将字段值标准化为小写。

keyword

network_traffic.http.query

以人类可读的格式表示的查询,例如 GET /users/_search?name=test

keyword

network_traffic.http.request.headers

包含从请求捕获的标头字段的映射。要捕获哪些标头是可配置的。如果消息中存在具有相同标头名称的标头,则它们将以逗号分隔。

扁平化

network_traffic.http.response.headers

包含从响应捕获的标头字段的映射。要捕获哪些标头是可配置的。如果消息中存在具有相同标头名称的标头,则它们将以逗号分隔。

扁平化

network_traffic.http.response.status_phrase

HTTP 状态短语。

keyword

network_traffic.status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

observer.hostname

观察者的主机名。

keyword

observer.ip

观察者的 IP 地址。

ip

observer.mac

观察者的 MAC 地址。建议使用 RFC 7042 中的表示法格式:每个八位字节(即 8 位字节)由两个[大写]十六进制数字表示,给出该八位字节的值作为无符号整数。连续的八位字节用连字符分隔。

keyword

observer.name

观察者的自定义名称。这是可以赋予观察者的名称。例如,如果在组织中使用同一型号的多个防火墙,则这可能会有所帮助。如果不需要自定义名称,则该字段可以留空。

keyword

params

请求参数。对于 HTTP,这些是 POST 或 GET 参数。对于 Thrift-RPC,这些是请求中的参数。

text

path

事务引用的路径。对于 HTTP,这是 URL。对于 SQL 数据库,这是表名。对于键值存储,这是键。

keyword

process.args

进程参数的数组,从可执行文件的绝对路径开始。可能会经过过滤以保护敏感信息。

keyword

process.executable

进程可执行文件的绝对路径。

keyword

process.executable.text

process.executable 的多字段。

match_only_text

process.name

进程名称。有时称为程序名称或类似名称。

keyword

process.name.text

process.name 的多字段。

match_only_text

process.start

进程启动的时间。

date

process.working_directory

进程的工作目录。

keyword

process.working_directory.text

process.working_directory 的多字段。

match_only_text

query

人类可读格式的查询。对于 HTTP,它通常类似于 GET /users/_search?name=test。对于 MySQL,它类似于 SELECT id from users where name=test

keyword

related.hosts

在您的事件中看到的所有主机名或其他主机标识符。示例标识符包括 FQDN、域名、工作站名称或别名。

keyword

related.ip

在您的事件中看到的所有 IP。

ip

request

对于文本协议,这是在网络上看到的请求(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

resource

此事务引用的逻辑资源。对于 HTTP,这是 URL 路径,直到最后一个斜杠 (/)。例如,如果 URL 是 /users/1,则资源是 /users。对于数据库,资源通常是表名。并非所有事务类型都会填充该字段。

keyword

response

对于文本协议,这是在网络上看到的响应(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

server.bytes

从服务器发送到客户端的字节数。

long

server.domain

服务器系统的域名。此值可以是主机名、完全限定域名或其他主机命名格式。该值可能来自原始事件,也可能来自富化。

keyword

server.geo.city_name

城市名称。

keyword

server.geo.continent_name

大洲的名称。

keyword

server.geo.country_iso_code

国家/地区 ISO 代码。

keyword

server.geo.country_name

国家/地区名称。

keyword

server.geo.location

经度和纬度。

geo_point

server.geo.region_iso_code

区域 ISO 代码。

keyword

server.geo.region_name

区域名称。

keyword

server.ip

服务器的 IP 地址(IPv4 或 IPv6)。

ip

server.port

服务器的端口。

long

server.process.args

为事务提供服务的进程的命令行。

keyword

server.process.executable

服务器进程可执行文件的绝对路径。

keyword

server.process.name

为事务提供服务的进程的名称。

keyword

server.process.start

服务器进程启动的时间。

date

server.process.working_directory

服务器进程的工作目录。

keyword

source.bytes

从源发送到目标的字节数。

long

source.geo.city_name

城市名称。

keyword

source.geo.continent_name

大洲的名称。

keyword

source.geo.country_iso_code

国家/地区 ISO 代码。

keyword

source.geo.country_name

国家/地区名称。

keyword

source.geo.location

经度和纬度。

geo_point

source.geo.region_iso_code

区域 ISO 代码。

keyword

source.geo.region_name

区域名称。

keyword

source.ip

源的 IP 地址(IPv4 或 IPv6)。

ip

source.port

源的端口。

long

status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

tags

用于标记每个事件的关键字列表。

keyword

类型

事务的类型(例如,HTTP、MySQL、Redis 或 RUM),如果是流程则为 “flow”。

keyword

url.domain

URL 的域名,例如“https://elastic.ac.cn[www.elastic.co]”。在某些情况下,URL 可能直接引用 IP 和/或端口,而没有域名。在这种情况下,IP 地址将转到 domain 字段。如果 URL 包含由 [] (IETF RFC 2732) 包围的字面 IPv6 地址,则 [] 字符也应捕获在 domain 字段中。

keyword

url.extension

该字段包含原始请求 URL 中的文件扩展名,不包括前导点。仅当文件扩展名存在时才会设置它,因为并非每个 URL 都有文件扩展名。不应包含前导句点。例如,该值必须是 "png",而不是 ".png"。请注意,当文件名有多个扩展名(例如 example.tar.gz)时,只应捕获最后一个扩展名("gz",而不是 "tar.gz")。

keyword

url.full

如果完整的 URL 对您的用例很重要,它们应存储在 url.full 中,无论此字段是重建的还是存在于事件源中。

wildcard

url.full.text

url.full 的多字段。

match_only_text

url.path

请求的路径,例如 "/search"。

wildcard

url.port

请求的端口,例如 443。

long

url.query

query 字段描述请求的查询字符串,例如 "q=elasticsearch"。查询字符串中不包含 ?。如果 URL 不包含 ?,则没有 query 字段。如果存在 ? 但没有查询,则 query 字段存在且为空字符串。可以使用 exists 查询来区分这两种情况。

keyword

url.scheme

请求的方案,例如 "https"。注意:: 不是方案的一部分。

keyword

user_agent.original

未解析的 user_agent 字符串。

keyword

user_agent.original.text

user_agent.original 的多字段。

match_only_text

示例

一个 http 的事件示例如下所示

{
    "@timestamp": "2023-10-16T23:41:13.068Z",
    "agent": {
        "ephemeral_id": "e4d5d369-0170-43e1-9a37-89bddea96654",
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "name": "docker-fleet-agent",
        "type": "packetbeat",
        "version": "8.6.2"
    },
    "client": {
        "bytes": 211,
        "ip": "192.168.238.50",
        "port": 64770
    },
    "data_stream": {
        "dataset": "network_traffic.http",
        "namespace": "ep",
        "type": "logs"
    },
    "destination": {
        "bytes": 9108,
        "domain": "packetbeat.com",
        "ip": "107.170.1.22",
        "port": 80
    },
    "ecs": {
        "version": "8.11.0"
    },
    "elastic_agent": {
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "snapshot": false,
        "version": "8.6.2"
    },
    "event": {
        "agent_id_status": "verified",
        "category": [
            "network"
        ],
        "dataset": "network_traffic.http",
        "duration": 141073381,
        "end": "2023-10-16T23:41:13.209Z",
        "ingested": "2023-10-16T23:41:14Z",
        "kind": "event",
        "start": "2023-10-16T23:41:13.068Z",
        "type": [
            "connection",
            "protocol"
        ]
    },
    "host": {
        "architecture": "x86_64",
        "containerized": false,
        "hostname": "docker-fleet-agent",
        "id": "f91b175388d443fca5c155815dfc2279",
        "ip": [
            "172.19.0.7"
        ],
        "mac": [
            "02-42-AC-13-00-07"
        ],
        "name": "docker-fleet-agent",
        "os": {
            "codename": "focal",
            "family": "debian",
            "kernel": "5.15.49-linuxkit",
            "name": "Ubuntu",
            "platform": "ubuntu",
            "type": "linux",
            "version": "20.04.5 LTS (Focal Fossa)"
        }
    },
    "http": {
        "request": {
            "body": {
                "bytes": 55
            },
            "bytes": 211,
            "headers": {
                "content-length": 55,
                "content-type": "application/x-www-form-urlencoded"
            },
            "method": "POST"
        },
        "response": {
            "body": {
                "bytes": 8936
            },
            "bytes": 9108,
            "headers": {
                "content-length": 8936,
                "content-type": "text/html; charset=utf-8"
            },
            "mime_type": "text/html; charset=utf-8",
            "status_code": 404,
            "status_phrase": "not found"
        },
        "version": "1.1"
    },
    "method": "POST",
    "network": {
        "bytes": 9319,
        "community_id": "1:LREAuuDqOAxXEbzF064U0QX5FBs=",
        "direction": "unknown",
        "protocol": "http",
        "transport": "tcp",
        "type": "ipv4"
    },
    "query": "POST /register",
    "related": {
        "hosts": [
            "packetbeat.com"
        ],
        "ip": [
            "192.168.238.50",
            "107.170.1.22"
        ]
    },
    "server": {
        "bytes": 9108,
        "domain": "packetbeat.com",
        "ip": "107.170.1.22",
        "port": 80
    },
    "source": {
        "bytes": 211,
        "ip": "192.168.238.50",
        "port": 64770
    },
    "status": "Error",
    "type": "http",
    "url": {
        "domain": "packetbeat.com",
        "full": "http://packetbeat.com/register?address=anklamerstr.14b&telephon=8932784368&user=monica",
        "path": "/register",
        "query": "address=anklamerstr.14b&telephon=8932784368&user=monica",
        "scheme": "http"
    },
    "user_agent": {
        "original": "curl/7.37.1"
    }
}

ICMP

编辑

配置选项

另请参阅 通用协议选项

enabled

可以通过此选项启用/禁用 ICMP 协议。默认值为 true。

如果启用,网络数据包捕获将生成以下 BPF 过滤器:"icmp or icmp6"。为 ICMP 数据包发布的字段。

导出的字段
字段 描述 类型

@timestamp

事件时间戳。

date

client.bytes

从客户端发送到服务器的字节。

long

client.geo.city_name

城市名称。

keyword

client.geo.continent_name

大洲的名称。

keyword

client.geo.country_iso_code

国家/地区 ISO 代码。

keyword

client.geo.country_name

国家/地区名称。

keyword

client.geo.location

经度和纬度。

geo_point

client.geo.region_iso_code

区域 ISO 代码。

keyword

client.geo.region_name

区域名称。

keyword

client.ip

客户端的 IP 地址(IPv4 或 IPv6)。

ip

client.port

客户端的端口。

long

client.process.args

启动事务的进程的命令行。

keyword

client.process.executable

客户端进程可执行文件的绝对路径。

keyword

client.process.name

启动事务的进程的名称。

keyword

client.process.start

客户端进程启动的时间。

date

client.process.working_directory

客户端进程的工作目录。

keyword

cloud.account.id

用于标识多租户环境中不同实体的云帐户或组织 ID。示例:AWS 帐户 ID、Google Cloud ORG ID 或其他唯一标识符。

keyword

cloud.availability_zone

此主机运行所在的可用区。

keyword

cloud.image.id

云实例的映像 ID。

keyword

cloud.instance.id

主机计算机的实例 ID。

keyword

cloud.instance.name

主机计算机的实例名称。

keyword

cloud.machine.type

主机计算机的机器类型。

keyword

cloud.project.id

Google Cloud 中项目的名称。

keyword

cloud.provider

云提供商的名称。示例值包括 aws、azure、gcp 或 digitalocean。

keyword

cloud.region

此主机运行所在的区域。

keyword

container.id

唯一的容器 ID。

keyword

container.image.name

构建容器所基于的映像的名称。

keyword

container.labels

映像标签。

object

container.name

容器名称。

keyword

data_stream.dataset

数据流数据集。

constant_keyword

data_stream.namespace

数据流命名空间。

constant_keyword

data_stream.type

数据流类型。

constant_keyword

destination.bytes

从目标发送到源的字节。

long

destination.geo.city_name

城市名称。

keyword

destination.geo.continent_name

大洲的名称。

keyword

destination.geo.country_iso_code

国家/地区 ISO 代码。

keyword

destination.geo.country_name

国家/地区名称。

keyword

destination.geo.location

经度和纬度。

geo_point

destination.geo.region_iso_code

区域 ISO 代码。

keyword

destination.geo.region_name

区域名称。

keyword

destination.ip

目标的 IP 地址(IPv4 或 IPv6)。

ip

destination.port

目标的端口。

long

ecs.version

此事件符合的 ECS 版本。ecs.version 是必填字段,并且必须存在于所有事件中。在查询可能符合略有不同的 ECS 版本的多个索引时,此字段允许集成调整到事件的架构版本。

keyword

event.category

这是四个 ECS 分类字段之一,表示 ECS 类别层次结构中的第二级。event.category 表示 ECS 类别的“大类”。例如,筛选 event.category:process 会生成与进程活动相关的所有事件。此字段与用作子类别的 event.type 密切相关。此字段是一个数组。这将允许正确分类属于多个类别的某些事件。

keyword

event.dataset

数据集的名称。如果某个事件源发布多种类型的日志或事件(例如,访问日志、错误日志),则数据集用于指定该事件的来源。建议但不是必须以模块名称开头命名数据集名称,后跟一个点,然后是数据集名称。

keyword

event.duration

事件的持续时间,以纳秒为单位。如果知道 event.startevent.end,则此值应为结束时间和开始时间之间的差值。

long

event.end

event.end 包含事件结束或上次观察到活动时的日期。

date

event.kind

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的最高级别。event.kind 提供关于事件包含的信息类型的高级信息,而无需具体到事件的内容。例如,此字段的值区分警报事件和指标事件。此字段的值可用于通知应如何处理这些类型的事件。它们可能需要不同的保留策略、不同的访问控制,它还有助于了解数据是否以固定间隔传入。

keyword

event.module

此数据来自的模块的名称。如果您的监控代理支持使用模块或插件来处理给定来源的事件(例如,Apache 日志),则 event.module 应包含此模块的名称。

constant_keyword

event.start

event.start 包含事件开始的时间或首次观察到活动的时间。

date

event.type

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的第三级。event.type 表示一个分类“子桶”,当与 event.category 字段值一起使用时,可以将事件过滤到适合单个可视化的级别。此字段是一个数组。这将允许对属于多个事件类型的某些事件进行适当的分类。

keyword

flow.final

指示事件是否是流中的最后一个事件。如果 final 为 false,则该事件仅报告中间流状态。

boolean

flow.id

基于连接元数据和地址的内部流 ID。

keyword

flow.vlan

来自 802.1q 帧的 VLAN 标识符。如果存在多标记帧,则此字段将是一个数组,其中外部标记的 VLAN 标识符首先列出。

long

host.architecture

操作系统架构。

keyword

host.containerized

主机是否为容器。

boolean

host.domain

主机所属的域名。例如,在 Windows 上,这可以是主机的 Active Directory 域或 NetBIOS 域名。对于 Linux,这可以是主机 LDAP 提供程序的域。

keyword

host.hostname

主机的 hostname。它通常包含主机上的 hostname 命令返回的内容。

keyword

host.id

唯一的主机 ID。由于 hostname 并不总是唯一的,请使用在您的环境中具有意义的值。例如:当前 beat.name 的用法。

keyword

host.ip

主机 IP 地址。

ip

host.mac

主机 MAC 地址。

keyword

host.name

主机的名称。它可以包含 Unix 系统上 hostname 返回的内容、完全限定域名或用户指定的名称。发送者决定使用哪个值。

keyword

host.os.build

操作系统构建信息。

keyword

host.os.codename

操作系统代码名(如果有)。

keyword

host.os.family

操作系统系列(如 redhat、debian、freebsd、windows)。

keyword

host.os.kernel

操作系统内核版本,以原始字符串形式表示。

keyword

host.os.name

操作系统名称,不带版本。

keyword

host.os.name.text

host.os.name 的多字段。

text

host.os.platform

操作系统平台(如 centos、ubuntu、windows)。

keyword

host.os.version

操作系统版本,以原始字符串形式表示。

keyword

host.type

主机类型。对于云提供商,这可以是诸如 t2.medium 之类的机器类型。如果为虚拟机,则可以是容器,或其他在您的环境中具有意义的信息。

keyword

icmp.request.code

请求代码。

long

icmp.request.message

请求的人类可读形式。

keyword

icmp.request.type

请求类型。

long

icmp.response.code

响应代码。

long

icmp.response.message

响应的人类可读形式。

keyword

icmp.response.type

响应类型。

long

icmp.version

ICMP 协议的版本。

long

method

事务的命令/动词/方法。对于 HTTP,这是方法名称(GET、POST、PUT 等);对于 SQL,这是动词(SELECT、UPDATE、DELETE 等)。

keyword

network.bytes

在两个方向上传输的总字节数。如果已知 source.bytesdestination.bytes,则 network.bytes 是它们的总和。

long

network.community_id

源 IP 和目标 IP、端口以及通信中使用的协议的哈希值。这是一个与工具无关的用于标识流的标准。在 https://github.com/corelight/community-id-spec 了解更多信息。

keyword

network.direction

网络流量的方向。当从基于主机的监控上下文中映射事件时,请从主机的角度使用值“ingress”或“egress”填充此字段。当从基于网络或基于边界的监控上下文中映射事件时,请从网络边界的角度使用值“inbound”、“outbound”、“internal”或“external”填充此字段。请注意,“internal”未跨越边界,旨在描述边界内两台主机之间的通信。另请注意,“external”旨在描述边界外部两台主机之间的流量。例如,这对于 ISP 或 VPN 服务提供商可能很有用。

keyword

network.forwarded_ip

当源 IP 地址为代理时的主机 IP 地址。

ip

network.protocol

在 OSI 模型中,这将是应用层协议。例如,httpdnsssh。为了进行查询,必须将字段值标准化为小写。

keyword

network.transport

与 network.iana_number 相同,但使用传输层的关键字名称(udp、tcp、ipv6-icmp 等)。为了进行查询,必须将字段值标准化为小写。

keyword

network.type

在 OSI 模型中,这将是网络层。ipv4、ipv6、ipsec、pim 等。为了进行查询,必须将字段值标准化为小写。

keyword

network_traffic.icmp.path

事务引用的路径。

keyword

network_traffic.icmp.request.code

请求代码。

long

network_traffic.icmp.request.message

请求的人类可读形式。

keyword

network_traffic.icmp.request.type

请求类型。

long

network_traffic.icmp.response.code

响应代码。

long

network_traffic.icmp.response.message

响应的人类可读形式。

keyword

network_traffic.icmp.response.type

响应类型。

long

network_traffic.icmp.version

ICMP 协议的版本。

long

network_traffic.status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

observer.hostname

观察者的主机名。

keyword

observer.ip

观察者的 IP 地址。

ip

observer.mac

观察者的 MAC 地址。建议使用 RFC 7042 中的表示法格式:每个八位字节(即 8 位字节)由两个[大写]十六进制数字表示,给出该八位字节的值作为无符号整数。连续的八位字节用连字符分隔。

keyword

observer.name

观察者的自定义名称。这是可以赋予观察者的名称。例如,如果在组织中使用同一型号的多个防火墙,则这可能会有所帮助。如果不需要自定义名称,则该字段可以留空。

keyword

params

请求参数。对于 HTTP,这些是 POST 或 GET 参数。对于 Thrift-RPC,这些是请求中的参数。

text

path

事务引用的路径。对于 HTTP,这是 URL。对于 SQL 数据库,这是表名。对于键值存储,这是键。

keyword

process.args

进程参数的数组,从可执行文件的绝对路径开始。可能会经过过滤以保护敏感信息。

keyword

process.executable

进程可执行文件的绝对路径。

keyword

process.executable.text

process.executable 的多字段。

match_only_text

process.name

进程名称。有时称为程序名称或类似名称。

keyword

process.name.text

process.name 的多字段。

match_only_text

process.start

进程启动的时间。

date

process.working_directory

进程的工作目录。

keyword

process.working_directory.text

process.working_directory 的多字段。

match_only_text

query

人类可读格式的查询。对于 HTTP,它通常类似于 GET /users/_search?name=test。对于 MySQL,它类似于 SELECT id from users where name=test

keyword

related.hosts

在您的事件中看到的所有主机名或其他主机标识符。示例标识符包括 FQDN、域名、工作站名称或别名。

keyword

related.ip

在您的事件中看到的所有 IP。

ip

request

对于文本协议,这是在网络上看到的请求(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

resource

此事务引用的逻辑资源。对于 HTTP,这是 URL 路径,直到最后一个斜杠 (/)。例如,如果 URL 是 /users/1,则资源是 /users。对于数据库,资源通常是表名。并非所有事务类型都会填充该字段。

keyword

response

对于文本协议,这是在网络上看到的响应(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

server.bytes

从服务器发送到客户端的字节数。

long

server.geo.city_name

城市名称。

keyword

server.geo.continent_name

大洲的名称。

keyword

server.geo.country_iso_code

国家/地区 ISO 代码。

keyword

server.geo.country_name

国家/地区名称。

keyword

server.geo.location

经度和纬度。

geo_point

server.geo.region_iso_code

区域 ISO 代码。

keyword

server.geo.region_name

区域名称。

keyword

server.ip

服务器的 IP 地址(IPv4 或 IPv6)。

ip

server.port

服务器的端口。

long

server.process.args

为事务提供服务的进程的命令行。

keyword

server.process.executable

服务器进程可执行文件的绝对路径。

keyword

server.process.name

为事务提供服务的进程的名称。

keyword

server.process.start

服务器进程启动的时间。

date

server.process.working_directory

服务器进程的工作目录。

keyword

source.bytes

从源发送到目标的字节数。

long

source.geo.city_name

城市名称。

keyword

source.geo.continent_name

大洲的名称。

keyword

source.geo.country_iso_code

国家/地区 ISO 代码。

keyword

source.geo.country_name

国家/地区名称。

keyword

source.geo.location

经度和纬度。

geo_point

source.geo.region_iso_code

区域 ISO 代码。

keyword

source.geo.region_name

区域名称。

keyword

source.ip

源的 IP 地址(IPv4 或 IPv6)。

ip

source.port

源的端口。

long

status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

tags

用于标记每个事件的关键字列表。

keyword

类型

事务的类型(例如,HTTP、MySQL、Redis 或 RUM),如果是流程则为 “flow”。

keyword

示例

一个 icmp 的事件示例如下所示

{
    "@timestamp": "2023-10-16T23:44:40.347Z",
    "agent": {
        "ephemeral_id": "c420a35b-6aba-40f9-a69e-19e063419439",
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "name": "docker-fleet-agent",
        "type": "packetbeat",
        "version": "8.6.2"
    },
    "client": {
        "bytes": 4,
        "ip": "::1"
    },
    "data_stream": {
        "dataset": "network_traffic.icmp",
        "namespace": "ep",
        "type": "logs"
    },
    "destination": {
        "bytes": 4,
        "ip": "::2"
    },
    "ecs": {
        "version": "8.11.0"
    },
    "elastic_agent": {
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "snapshot": false,
        "version": "8.6.2"
    },
    "event": {
        "agent_id_status": "verified",
        "category": [
            "network"
        ],
        "dataset": "network_traffic.icmp",
        "duration": 13567591,
        "end": "2023-10-16T23:44:40.360Z",
        "ingested": "2023-10-16T23:44:44Z",
        "kind": "event",
        "start": "2023-10-16T23:44:40.347Z",
        "type": [
            "connection"
        ]
    },
    "host": {
        "architecture": "x86_64",
        "containerized": false,
        "hostname": "docker-fleet-agent",
        "id": "f91b175388d443fca5c155815dfc2279",
        "ip": [
            "172.19.0.7"
        ],
        "mac": [
            "02-42-AC-13-00-07"
        ],
        "name": "docker-fleet-agent",
        "os": {
            "codename": "focal",
            "family": "debian",
            "kernel": "5.15.49-linuxkit",
            "name": "Ubuntu",
            "platform": "ubuntu",
            "type": "linux",
            "version": "20.04.5 LTS (Focal Fossa)"
        }
    },
    "icmp": {
        "request": {
            "code": 0,
            "message": "EchoRequest",
            "type": 128
        },
        "response": {
            "code": 0,
            "message": "EchoReply",
            "type": 129
        },
        "version": 6
    },
    "network": {
        "bytes": 8,
        "community_id": "1:9UpHcZHFAOl8WqZVOs5YRQ5wDGE=",
        "direction": "egress",
        "protocol": "icmp",
        "transport": "ipv6-icmp",
        "type": "ipv6"
    },
    "path": "::2",
    "related": {
        "ip": [
            "::1",
            "::2"
        ]
    },
    "server": {
        "bytes": 4,
        "ip": "::2"
    },
    "source": {
        "bytes": 4,
        "ip": "::1"
    },
    "status": "OK",
    "type": "icmp"
}

Memcached

编辑

配置选项

另请参阅 通用协议选项

parseunknown
编辑

启用此选项后,它会强制 memcache 文本协议解析器接受未知命令。

未知命令不得包含数据部分。

maxvalues
编辑

要在消息中存储的最大值数量(多重获取)。所有值都将进行 base64 编码。

此选项的可能设置包括

  • maxvalue: -1,存储所有值(基于文本协议的多重获取)
  • maxvalue: 0,不存储任何值(默认)
  • maxvalue: N,最多存储 N 个值
maxbytespervalue
编辑

为每个值元素复制的最大字节数。

值将进行 base64 编码,因此 JSON 文档中的实际大小将是您为 maxbytespervalue 指定的值的 4 倍。

udptransactiontimeout
编辑

事务超时(以毫秒为单位)。默认值为 10000 毫秒。

仅当发生错误时,UDP 二进制协议中的静默消息才会获取响应。memcache 协议分析器将等待 udptransactiontimeout 指定的毫秒数,然后再发布静默消息。非静默消息或带有错误响应的静默请求将立即发布。

为 Memcached 数据包发布的字段。

导出的字段
字段 描述 类型

@timestamp

事件时间戳。

date

client.bytes

从客户端发送到服务器的字节。

long

client.geo.city_name

城市名称。

keyword

client.geo.continent_name

大洲的名称。

keyword

client.geo.country_iso_code

国家/地区 ISO 代码。

keyword

client.geo.country_name

国家/地区名称。

keyword

client.geo.location

经度和纬度。

geo_point

client.geo.region_iso_code

区域 ISO 代码。

keyword

client.geo.region_name

区域名称。

keyword

client.ip

客户端的 IP 地址(IPv4 或 IPv6)。

ip

client.port

客户端的端口。

long

client.process.args

启动事务的进程的命令行。

keyword

client.process.executable

客户端进程可执行文件的绝对路径。

keyword

client.process.name

启动事务的进程的名称。

keyword

client.process.start

客户端进程启动的时间。

date

client.process.working_directory

客户端进程的工作目录。

keyword

cloud.account.id

用于标识多租户环境中不同实体的云帐户或组织 ID。示例:AWS 帐户 ID、Google Cloud ORG ID 或其他唯一标识符。

keyword

cloud.availability_zone

此主机运行所在的可用区。

keyword

cloud.image.id

云实例的映像 ID。

keyword

cloud.instance.id

主机计算机的实例 ID。

keyword

cloud.instance.name

主机计算机的实例名称。

keyword

cloud.machine.type

主机计算机的机器类型。

keyword

cloud.project.id

Google Cloud 中项目的名称。

keyword

cloud.provider

云提供商的名称。示例值包括 aws、azure、gcp 或 digitalocean。

keyword

cloud.region

此主机运行所在的区域。

keyword

container.id

唯一的容器 ID。

keyword

container.image.name

构建容器所基于的映像的名称。

keyword

container.labels

映像标签。

object

container.name

容器名称。

keyword

data_stream.dataset

数据流数据集。

constant_keyword

data_stream.namespace

数据流命名空间。

constant_keyword

data_stream.type

数据流类型。

constant_keyword

destination.bytes

从目标发送到源的字节。

long

destination.geo.city_name

城市名称。

keyword

destination.geo.continent_name

大洲的名称。

keyword

destination.geo.country_iso_code

国家/地区 ISO 代码。

keyword

destination.geo.country_name

国家/地区名称。

keyword

destination.geo.location

经度和纬度。

geo_point

destination.geo.region_iso_code

区域 ISO 代码。

keyword

destination.geo.region_name

区域名称。

keyword

destination.ip

目标的 IP 地址(IPv4 或 IPv6)。

ip

destination.port

目标的端口。

long

ecs.version

此事件符合的 ECS 版本。ecs.version 是必填字段,并且必须存在于所有事件中。在查询可能符合略有不同的 ECS 版本的多个索引时,此字段允许集成调整到事件的架构版本。

keyword

event.action

事件捕获的操作。这描述了事件中的信息。它比 event.category 更具体。示例包括 group-addprocess-startedfile-created。该值通常由实施者定义。

keyword

event.category

这是四个 ECS 分类字段之一,表示 ECS 类别层次结构中的第二级。event.category 表示 ECS 类别的“大类”。例如,筛选 event.category:process 会生成与进程活动相关的所有事件。此字段与用作子类别的 event.type 密切相关。此字段是一个数组。这将允许正确分类属于多个类别的某些事件。

keyword

event.dataset

数据集的名称。如果某个事件源发布多种类型的日志或事件(例如,访问日志、错误日志),则数据集用于指定该事件的来源。建议但不是必须以模块名称开头命名数据集名称,后跟一个点,然后是数据集名称。

keyword

event.duration

事件的持续时间,以纳秒为单位。如果知道 event.startevent.end,则此值应为结束时间和开始时间之间的差值。

long

event.end

event.end 包含事件结束或上次观察到活动时的日期。

date

event.kind

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的最高级别。event.kind 提供关于事件包含的信息类型的高级信息,而无需具体到事件的内容。例如,此字段的值区分警报事件和指标事件。此字段的值可用于通知应如何处理这些类型的事件。它们可能需要不同的保留策略、不同的访问控制,它还有助于了解数据是否以固定间隔传入。

keyword

event.module

此数据来自的模块的名称。如果您的监控代理支持使用模块或插件来处理给定来源的事件(例如,Apache 日志),则 event.module 应包含此模块的名称。

constant_keyword

event.outcome

这是四个 ECS 分类字段之一,指示 ECS 类别层次结构中的最低级别。event.outcome 只是表示从产生事件的实体的角度来看,事件是成功还是失败。请注意,当单个事务在多个事件中描述时,根据其角度,每个事件可能会填充不同的 event.outcome 值。另请注意,在复合事件(包含多个逻辑事件的单个事件)的情况下,此字段应填充最能捕获事件生产者角度的整体成功或失败的值。此外请注意,并非所有事件都将具有关联的结果。例如,此字段通常不会为指标事件、具有 event.type:info 的事件或任何结果不符合逻辑的事件填充。

keyword

event.start

event.start 包含事件开始的时间或首次观察到活动的时间。

date

event.type

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的第三级。event.type 表示一个分类“子桶”,当与 event.category 字段值一起使用时,可以将事件过滤到适合单个可视化的级别。此字段是一个数组。这将允许对属于多个事件类型的某些事件进行适当的分类。

keyword

flow.final

指示事件是否是流中的最后一个事件。如果 final 为 false,则该事件仅报告中间流状态。

boolean

flow.id

基于连接元数据和地址的内部流 ID。

keyword

flow.vlan

来自 802.1q 帧的 VLAN 标识符。如果存在多标记帧,则此字段将是一个数组,其中外部标记的 VLAN 标识符首先列出。

long

host.architecture

操作系统架构。

keyword

host.containerized

主机是否为容器。

boolean

host.domain

主机所属的域名。例如,在 Windows 上,这可以是主机的 Active Directory 域或 NetBIOS 域名。对于 Linux,这可以是主机 LDAP 提供程序的域。

keyword

host.hostname

主机的 hostname。它通常包含主机上的 hostname 命令返回的内容。

keyword

host.id

唯一的主机 ID。由于 hostname 并不总是唯一的,请使用在您的环境中具有意义的值。例如:当前 beat.name 的用法。

keyword

host.ip

主机 IP 地址。

ip

host.mac

主机 MAC 地址。

keyword

host.name

主机的名称。它可以包含 Unix 系统上 hostname 返回的内容、完全限定域名或用户指定的名称。发送者决定使用哪个值。

keyword

host.os.build

操作系统构建信息。

keyword

host.os.codename

操作系统代码名(如果有)。

keyword

host.os.family

操作系统系列(如 redhat、debian、freebsd、windows)。

keyword

host.os.kernel

操作系统内核版本,以原始字符串形式表示。

keyword

host.os.name

操作系统名称,不带版本。

keyword

host.os.name.text

host.os.name 的多字段。

text

host.os.platform

操作系统平台(如 centos、ubuntu、windows)。

keyword

host.os.version

操作系统版本,以原始字符串形式表示。

keyword

host.type

主机类型。对于云提供商,这可以是诸如 t2.medium 之类的机器类型。如果为虚拟机,则可以是容器,或其他在您的环境中具有意义的信息。

keyword

memcache.protocol_type

memcache 协议实现。该值可以是“binary”(基于二进制)、“text”(基于文本)或“unknown”(未知 memcache 协议类型)。

keyword

memcache.request.automove

以字符串表示的slab automove命令中的 automove 模式。此值可以是“standby”(=0)、“slow”(=1)、“aggressive”(=2) 或如果该值为未知,则为原始值。

keyword

memcache.request.bytes

正在传输的值的字节数。

long

memcache.request.cas_unique

如果存在,则为 CAS(比较和交换)标识符。

long

memcache.request.command

在 memcache 文本协议中请求的 memcache 命令。例如 “set” 或 “get”。二进制协议操作码被转换为 memcache 文本协议命令。

keyword

memcache.request.count_values

在 memcache 请求消息中找到的值的数量。如果该命令不发送任何数据,则缺少此字段。

long

memcache.request.delta

计数器增量/减量值。

long

memcache.request.dest_class

slab reassign命令中的目标类 ID。

long

memcache.request.exptime

与 memcache 命令一起发送的数据过期时间(以秒为单位)(如果存在)。如果该值小于 30 天,则过期时间是相对于“现在”的,否则它是以秒为单位的绝对 Unix 时间(32 位)。

long

memcache.request.flags

请求中发送的 memcache 命令标志(如果存在)。

long

memcache.request.initial

计数器增量/减量初始值参数(仅限二进制协议)。

long

memcache.request.keys

在存储或加载命令中发送的键列表。

keyword

memcache.request.line

仅用于未知命令的原始命令行。

keyword

memcache.request.noreply

如果请求中设置了 noreply,则设置为 true。memcache.response 字段将丢失。

boolean

memcache.request.opaque

用于将请求与响应消息相关联的二进制协议不透明标头值。

long

memcache.request.opcode

二进制协议消息操作码名称。

keyword

memcache.request.opcode_value

二进制协议消息操作码值。

long

memcache.request.quiet

如果二进制协议消息被视为静默消息,则设置为 true。

boolean

memcache.request.raw_args

用于 "stats …​" 和 "lru crawl …​" 命令的文本协议原始参数。

keyword

memcache.request.sleep_us

lru_crawler sleep 命令的休眠设置,单位为微秒。

long

memcache.request.source_class

slab reassign 命令中的源类 ID。

long

memcache.request.type

memcache 命令分类。该值可以是 "UNKNOWN"、"Load"、"Store"、"Delete"、"Counter"、"Info"、"SlabCtrl"、"LRUCrawler"、"Stats"、"Success"、"Fail" 或 "Auth"。

keyword

memcache.request.values

请求中发送的 base64 编码值列表(如果存在)。

keyword

memcache.request.vbucket

二进制消息中发送的 vbucket 索引。

long

memcache.request.verbosity

memcache "verbosity" 命令的值。

long

memcache.response.bytes

正在传输的值的字节数。

long

memcache.response.cas_unique

用于基于 CAS 的更新的 CAS(比较并交换)标识符(如果存在)。

long

memcache.response.command

如果是基于文本的协议,则为响应消息类型;如果是二进制协议,则为原始请求的名称。

keyword

memcache.response.count_values

在 memcache 响应消息中找到的值的数量。如果命令不发送任何数据,则此字段缺失。

long

memcache.response.error_msg

memcache 响应中的可选错误消息(仅限基于文本的协议)。

keyword

memcache.response.flags

响应中发送的 memcache 消息标志(如果存在)。

long

memcache.response.keys

为 load 命令返回的键列表(如果存在)。

keyword

memcache.response.opaque

用于将请求与响应消息相关联的二进制协议不透明标头值。

long

memcache.response.opcode

二进制协议消息操作码名称。

keyword

memcache.response.opcode_value

二进制协议消息操作码值。

long

memcache.response.stats

返回的统计值。

扁平化

memcache.response.status

响应错误代码的文本表示形式(仅限二进制协议)。

keyword

memcache.response.status_code

响应中返回的状态代码值(仅限二进制协议)。

long

memcache.response.type

memcache 命令分类。该值可以是 "UNKNOWN"、"Load"、"Store"、"Delete"、"Counter"、"Info"、"SlabCtrl"、"LRUCrawler"、"Stats"、"Success"、"Fail" 或 "Auth"。基于文本的协议将使用这些值中的任何一个,而基于二进制的协议将仅镜像请求命令(请参阅二进制协议的 memcache.response.status)。

keyword

memcache.response.value

计数器操作返回的计数器值。

long

memcache.response.values

响应中发送的 base64 编码值列表(如果存在)。

keyword

memcache.response.version

返回的 memcache 版本字符串。

keyword

method

事务的命令/动词/方法。对于 HTTP,这是方法名称(GET、POST、PUT 等);对于 SQL,这是动词(SELECT、UPDATE、DELETE 等)。

keyword

network.bytes

在两个方向上传输的总字节数。如果已知 source.bytesdestination.bytes,则 network.bytes 是它们的总和。

long

network.community_id

源 IP 和目标 IP、端口以及通信中使用的协议的哈希值。这是一个与工具无关的用于标识流的标准。在 https://github.com/corelight/community-id-spec 了解更多信息。

keyword

network.direction

网络流量的方向。当从基于主机的监控上下文中映射事件时,请从主机的角度使用值“ingress”或“egress”填充此字段。当从基于网络或基于边界的监控上下文中映射事件时,请从网络边界的角度使用值“inbound”、“outbound”、“internal”或“external”填充此字段。请注意,“internal”未跨越边界,旨在描述边界内两台主机之间的通信。另请注意,“external”旨在描述边界外部两台主机之间的流量。例如,这对于 ISP 或 VPN 服务提供商可能很有用。

keyword

network.forwarded_ip

当源 IP 地址为代理时的主机 IP 地址。

ip

network.protocol

在 OSI 模型中,这将是应用层协议。例如,httpdnsssh。为了进行查询,必须将字段值标准化为小写。

keyword

network.transport

与 network.iana_number 相同,但使用传输层的关键字名称(udp、tcp、ipv6-icmp 等)。为了进行查询,必须将字段值标准化为小写。

keyword

network.type

在 OSI 模型中,这将是网络层。ipv4、ipv6、ipsec、pim 等。为了进行查询,必须将字段值标准化为小写。

keyword

network_traffic.memcached.protocol_type

memcache 协议实现。该值可以是“binary”(基于二进制)、“text”(基于文本)或“unknown”(未知 memcache 协议类型)。

keyword

network_traffic.memcached.request.automove

以字符串表示的slab automove命令中的 automove 模式。此值可以是“standby”(=0)、“slow”(=1)、“aggressive”(=2) 或如果该值为未知,则为原始值。

keyword

network_traffic.memcached.request.bytes

正在传输的值的字节数。

long

network_traffic.memcached.request.cas_unique

如果存在,则为 CAS(比较和交换)标识符。

long

network_traffic.memcached.request.command

在 memcache 文本协议中请求的 memcache 命令。例如 “set” 或 “get”。二进制协议操作码被转换为 memcache 文本协议命令。

keyword

network_traffic.memcached.request.count_values

在 memcache 请求消息中找到的值的数量。如果该命令不发送任何数据,则缺少此字段。

long

network_traffic.memcached.request.delta

计数器增量/减量值。

long

network_traffic.memcached.request.dest_class

slab reassign命令中的目标类 ID。

long

network_traffic.memcached.request.exptime

与 memcache 命令一起发送的数据过期时间(以秒为单位)(如果存在)。如果该值小于 30 天,则过期时间是相对于“现在”的,否则它是以秒为单位的绝对 Unix 时间(32 位)。

long

network_traffic.memcached.request.flags

请求中发送的 memcache 命令标志(如果存在)。

long

network_traffic.memcached.request.initial

计数器增量/减量初始值参数(仅限二进制协议)。

long

network_traffic.memcached.request.keys

在存储或加载命令中发送的键列表。

keyword

network_traffic.memcached.request.line

仅用于未知命令的原始命令行。

keyword

network_traffic.memcached.request.noreply

如果请求中设置了 noreply,则设置为 true。memcache.response 字段将丢失。

boolean

network_traffic.memcached.request.opaque

用于将请求与响应消息相关联的二进制协议不透明标头值。

long

network_traffic.memcached.request.opcode

二进制协议消息操作码名称。

keyword

network_traffic.memcached.request.opcode_value

二进制协议消息操作码值。

long

network_traffic.memcached.request.quiet

如果二进制协议消息被视为静默消息,则设置为 true。

boolean

network_traffic.memcached.request.raw_args

用于 "stats …​" 和 "lru crawl …​" 命令的文本协议原始参数。

keyword

network_traffic.memcached.request.sleep_us

lru_crawler sleep 命令的休眠设置,单位为微秒。

long

network_traffic.memcached.request.source_class

slab reassign 命令中的源类 ID。

long

network_traffic.memcached.request.type

memcache 命令分类。该值可以是 "UNKNOWN"、"Load"、"Store"、"Delete"、"Counter"、"Info"、"SlabCtrl"、"LRUCrawler"、"Stats"、"Success"、"Fail" 或 "Auth"。

keyword

network_traffic.memcached.request.values

请求中发送的 base64 编码值列表(如果存在)。

keyword

network_traffic.memcached.request.vbucket

二进制消息中发送的 vbucket 索引。

long

network_traffic.memcached.request.verbosity

memcache "verbosity" 命令的值。

long

network_traffic.memcached.response.bytes

正在传输的值的字节数。

long

network_traffic.memcached.response.cas_unique

用于基于 CAS 的更新的 CAS(比较并交换)标识符(如果存在)。

long

network_traffic.memcached.response.command

如果是基于文本的协议,则为响应消息类型;如果是二进制协议,则为原始请求的名称。

keyword

network_traffic.memcached.response.count_values

在 memcache 响应消息中找到的值的数量。如果命令不发送任何数据,则此字段缺失。

long

network_traffic.memcached.response.error_msg

memcache 响应中的可选错误消息(仅限基于文本的协议)。

keyword

network_traffic.memcached.response.flags

响应中发送的 memcache 消息标志(如果存在)。

long

network_traffic.memcached.response.keys

为 load 命令返回的键列表(如果存在)。

keyword

network_traffic.memcached.response.opaque

用于将请求与响应消息相关联的二进制协议不透明标头值。

long

network_traffic.memcached.response.opcode

二进制协议消息操作码名称。

keyword

network_traffic.memcached.response.opcode_value

二进制协议消息操作码值。

long

network_traffic.memcached.response.stats

返回的统计值。

扁平化

network_traffic.memcached.response.status

响应错误代码的文本表示形式(仅限二进制协议)。

keyword

network_traffic.memcached.response.status_code

响应中返回的状态代码值(仅限二进制协议)。

long

network_traffic.memcached.response.type

memcache 命令分类。该值可以是 "UNKNOWN"、"Load"、"Store"、"Delete"、"Counter"、"Info"、"SlabCtrl"、"LRUCrawler"、"Stats"、"Success"、"Fail" 或 "Auth"。基于文本的协议将使用这些值中的任何一个,而基于二进制的协议将仅镜像请求命令(请参阅二进制协议的 memcache.response.status)。

keyword

network_traffic.memcached.response.value

计数器操作返回的计数器值。

long

network_traffic.memcached.response.values

响应中发送的 base64 编码值列表(如果存在)。

keyword

network_traffic.memcached.response.version

返回的 memcache 版本字符串。

keyword

network_traffic.status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

observer.hostname

观察者的主机名。

keyword

observer.ip

观察者的 IP 地址。

ip

observer.mac

观察者的 MAC 地址。建议使用 RFC 7042 中的表示法格式:每个八位字节(即 8 位字节)由两个[大写]十六进制数字表示,给出该八位字节的值作为无符号整数。连续的八位字节用连字符分隔。

keyword

observer.name

观察者的自定义名称。这是可以赋予观察者的名称。例如,如果在组织中使用同一型号的多个防火墙,则这可能会有所帮助。如果不需要自定义名称,则该字段可以留空。

keyword

params

请求参数。对于 HTTP,这些是 POST 或 GET 参数。对于 Thrift-RPC,这些是请求中的参数。

text

path

事务引用的路径。对于 HTTP,这是 URL。对于 SQL 数据库,这是表名。对于键值存储,这是键。

keyword

process.args

进程参数的数组,从可执行文件的绝对路径开始。可能会经过过滤以保护敏感信息。

keyword

process.executable

进程可执行文件的绝对路径。

keyword

process.executable.text

process.executable 的多字段。

match_only_text

process.name

进程名称。有时称为程序名称或类似名称。

keyword

process.name.text

process.name 的多字段。

match_only_text

process.start

进程启动的时间。

date

process.working_directory

进程的工作目录。

keyword

process.working_directory.text

process.working_directory 的多字段。

match_only_text

query

人类可读格式的查询。对于 HTTP,它通常类似于 GET /users/_search?name=test。对于 MySQL,它类似于 SELECT id from users where name=test

keyword

related.hosts

在您的事件中看到的所有主机名或其他主机标识符。示例标识符包括 FQDN、域名、工作站名称或别名。

keyword

related.ip

在您的事件中看到的所有 IP。

ip

request

对于文本协议,这是在网络上看到的请求(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

resource

此事务引用的逻辑资源。对于 HTTP,这是 URL 路径,直到最后一个斜杠 (/)。例如,如果 URL 是 /users/1,则资源是 /users。对于数据库,资源通常是表名。并非所有事务类型都会填充该字段。

keyword

response

对于文本协议,这是在网络上看到的响应(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

server.bytes

从服务器发送到客户端的字节数。

long

server.geo.city_name

城市名称。

keyword

server.geo.continent_name

大洲的名称。

keyword

server.geo.country_iso_code

国家/地区 ISO 代码。

keyword

server.geo.country_name

国家/地区名称。

keyword

server.geo.location

经度和纬度。

geo_point

server.geo.region_iso_code

区域 ISO 代码。

keyword

server.geo.region_name

区域名称。

keyword

server.ip

服务器的 IP 地址(IPv4 或 IPv6)。

ip

server.port

服务器的端口。

long

server.process.args

为事务提供服务的进程的命令行。

keyword

server.process.executable

服务器进程可执行文件的绝对路径。

keyword

server.process.name

为事务提供服务的进程的名称。

keyword

server.process.start

服务器进程启动的时间。

date

server.process.working_directory

服务器进程的工作目录。

keyword

source.bytes

从源发送到目标的字节数。

long

source.geo.city_name

城市名称。

keyword

source.geo.continent_name

大洲的名称。

keyword

source.geo.country_iso_code

国家/地区 ISO 代码。

keyword

source.geo.country_name

国家/地区名称。

keyword

source.geo.location

经度和纬度。

geo_point

source.geo.region_iso_code

区域 ISO 代码。

keyword

source.geo.region_name

区域名称。

keyword

source.ip

源的 IP 地址(IPv4 或 IPv6)。

ip

source.port

源的端口。

long

status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

tags

用于标记每个事件的关键字列表。

keyword

类型

事务的类型(例如,HTTP、MySQL、Redis 或 RUM),如果是流程则为 “flow”。

keyword

示例

关于 memcached 的事件示例如下

{
    "@timestamp": "2023-10-16T23:03:48.222Z",
    "agent": {
        "ephemeral_id": "7b5b07cc-deb1-4c1d-87f5-ea6f49b216fc",
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "name": "docker-fleet-agent",
        "type": "packetbeat",
        "version": "8.6.2"
    },
    "client": {
        "ip": "192.168.188.37",
        "port": 65195
    },
    "data_stream": {
        "dataset": "network_traffic.memcached",
        "namespace": "ep",
        "type": "logs"
    },
    "destination": {
        "bytes": 1064,
        "ip": "192.168.188.38",
        "port": 11211
    },
    "ecs": {
        "version": "8.11.0"
    },
    "elastic_agent": {
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "snapshot": false,
        "version": "8.6.2"
    },
    "event": {
        "agent_id_status": "verified",
        "category": [
            "network"
        ],
        "dataset": "network_traffic.memcached",
        "ingested": "2023-10-16T23:03:59Z",
        "kind": "event",
        "start": "2023-10-16T23:03:48.222Z",
        "type": [
            "connection",
            "protocol"
        ]
    },
    "event.action": "memcache.store",
    "host": {
        "architecture": "x86_64",
        "containerized": false,
        "hostname": "docker-fleet-agent",
        "id": "f91b175388d443fca5c155815dfc2279",
        "ip": [
            "172.19.0.7"
        ],
        "mac": [
            "02-42-AC-13-00-07"
        ],
        "name": "docker-fleet-agent",
        "os": {
            "codename": "focal",
            "family": "debian",
            "kernel": "5.15.49-linuxkit",
            "name": "Ubuntu",
            "platform": "ubuntu",
            "type": "linux",
            "version": "20.04.5 LTS (Focal Fossa)"
        }
    },
    "memcache": {
        "protocol_type": "binary",
        "request": {
            "bytes": 1024,
            "command": "set",
            "count_values": 1,
            "exptime": 0,
            "flags": 0,
            "keys": [
                "test_key"
            ],
            "opaque": 65536,
            "opcode": "SetQ",
            "opcode_value": 17,
            "quiet": true,
            "type": "Store",
            "vbucket": 0
        }
    },
    "network": {
        "bytes": 1064,
        "community_id": "1:QMbWqXK5vGDDbp48SEFuFe8Z1lQ=",
        "direction": "unknown",
        "protocol": "memcache",
        "transport": "udp",
        "type": "ipv4"
    },
    "related": {
        "ip": [
            "192.168.188.37",
            "192.168.188.38"
        ]
    },
    "server": {
        "bytes": 1064,
        "ip": "192.168.188.38",
        "port": 11211
    },
    "source": {
        "ip": "192.168.188.37",
        "port": 65195
    },
    "status": "OK",
    "type": "memcache"
}

MongoDB

编辑

配置选项

max_docsmax_doc_length 设置用于限制网络数据包捕获在 response 字段中索引的数据量。

另请参阅 通用协议选项

max_docs
编辑

要在 response 字段中索引的响应中的最大文档数。默认值为 10。您可以将其设置为 0 以索引无限数量的文档。

网络数据包捕获在末尾添加 [...] 行,以表示由于此设置而未保存其他文档。

max_doc_length
编辑

response 字段中索引的单个文档的最大字符数。默认值为 5000。您可以将其设置为 0 以索引每个文档的无限数量的字符。

如果由于此设置而修剪了文档,则网络数据包捕获会在文档末尾添加字符串 ...

请注意,以这种方式限制文档意味着它们不再是正确格式化的 JSON 对象。

为 MongoDB 数据包发布的字段。

导出的字段
字段 描述 类型

@timestamp

事件时间戳。

date

client.bytes

从客户端发送到服务器的字节。

long

client.geo.city_name

城市名称。

keyword

client.geo.continent_name

大洲的名称。

keyword

client.geo.country_iso_code

国家/地区 ISO 代码。

keyword

client.geo.country_name

国家/地区名称。

keyword

client.geo.location

经度和纬度。

geo_point

client.geo.region_iso_code

区域 ISO 代码。

keyword

client.geo.region_name

区域名称。

keyword

client.ip

客户端的 IP 地址(IPv4 或 IPv6)。

ip

client.port

客户端的端口。

long

client.process.args

启动事务的进程的命令行。

keyword

client.process.executable

客户端进程可执行文件的绝对路径。

keyword

client.process.name

启动事务的进程的名称。

keyword

client.process.start

客户端进程启动的时间。

date

client.process.working_directory

客户端进程的工作目录。

keyword

cloud.account.id

用于标识多租户环境中不同实体的云帐户或组织 ID。示例:AWS 帐户 ID、Google Cloud ORG ID 或其他唯一标识符。

keyword

cloud.availability_zone

此主机运行所在的可用区。

keyword

cloud.image.id

云实例的映像 ID。

keyword

cloud.instance.id

主机计算机的实例 ID。

keyword

cloud.instance.name

主机计算机的实例名称。

keyword

cloud.machine.type

主机计算机的机器类型。

keyword

cloud.project.id

Google Cloud 中项目的名称。

keyword

cloud.provider

云提供商的名称。示例值包括 aws、azure、gcp 或 digitalocean。

keyword

cloud.region

此主机运行所在的区域。

keyword

container.id

唯一的容器 ID。

keyword

container.image.name

构建容器所基于的映像的名称。

keyword

container.labels

映像标签。

object

container.name

容器名称。

keyword

data_stream.dataset

数据流数据集。

constant_keyword

data_stream.namespace

数据流命名空间。

constant_keyword

data_stream.type

数据流类型。

constant_keyword

destination.bytes

从目标发送到源的字节。

long

destination.geo.city_name

城市名称。

keyword

destination.geo.continent_name

大洲的名称。

keyword

destination.geo.country_iso_code

国家/地区 ISO 代码。

keyword

destination.geo.country_name

国家/地区名称。

keyword

destination.geo.location

经度和纬度。

geo_point

destination.geo.region_iso_code

区域 ISO 代码。

keyword

destination.geo.region_name

区域名称。

keyword

destination.ip

目标的 IP 地址(IPv4 或 IPv6)。

ip

destination.port

目标的端口。

long

ecs.version

此事件符合的 ECS 版本。ecs.version 是必填字段,并且必须存在于所有事件中。在查询可能符合略有不同的 ECS 版本的多个索引时,此字段允许集成调整到事件的架构版本。

keyword

event.category

这是四个 ECS 分类字段之一,表示 ECS 类别层次结构中的第二级。event.category 表示 ECS 类别的“大类”。例如,筛选 event.category:process 会生成与进程活动相关的所有事件。此字段与用作子类别的 event.type 密切相关。此字段是一个数组。这将允许正确分类属于多个类别的某些事件。

keyword

event.dataset

数据集的名称。如果某个事件源发布多种类型的日志或事件(例如,访问日志、错误日志),则数据集用于指定该事件的来源。建议但不是必须以模块名称开头命名数据集名称,后跟一个点,然后是数据集名称。

keyword

event.duration

事件的持续时间,以纳秒为单位。如果知道 event.startevent.end,则此值应为结束时间和开始时间之间的差值。

long

event.end

event.end 包含事件结束或上次观察到活动时的日期。

date

event.kind

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的最高级别。event.kind 提供关于事件包含的信息类型的高级信息,而无需具体到事件的内容。例如,此字段的值区分警报事件和指标事件。此字段的值可用于通知应如何处理这些类型的事件。它们可能需要不同的保留策略、不同的访问控制,它还有助于了解数据是否以固定间隔传入。

keyword

event.module

此数据来自的模块的名称。如果您的监控代理支持使用模块或插件来处理给定来源的事件(例如,Apache 日志),则 event.module 应包含此模块的名称。

constant_keyword

event.start

event.start 包含事件开始的时间或首次观察到活动的时间。

date

event.type

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的第三级。event.type 表示一个分类“子桶”,当与 event.category 字段值一起使用时,可以将事件过滤到适合单个可视化的级别。此字段是一个数组。这将允许对属于多个事件类型的某些事件进行适当的分类。

keyword

flow.final

指示事件是否是流中的最后一个事件。如果 final 为 false,则该事件仅报告中间流状态。

boolean

flow.id

基于连接元数据和地址的内部流 ID。

keyword

flow.vlan

来自 802.1q 帧的 VLAN 标识符。如果存在多标记帧,则此字段将是一个数组,其中外部标记的 VLAN 标识符首先列出。

long

host.architecture

操作系统架构。

keyword

host.containerized

主机是否为容器。

boolean

host.domain

主机所属的域名。例如,在 Windows 上,这可以是主机的 Active Directory 域或 NetBIOS 域名。对于 Linux,这可以是主机 LDAP 提供程序的域。

keyword

host.hostname

主机的 hostname。它通常包含主机上的 hostname 命令返回的内容。

keyword

host.id

唯一的主机 ID。由于 hostname 并不总是唯一的,请使用在您的环境中具有意义的值。例如:当前 beat.name 的用法。

keyword

host.ip

主机 IP 地址。

ip

host.mac

主机 MAC 地址。

keyword

host.name

主机的名称。它可以包含 Unix 系统上 hostname 返回的内容、完全限定域名或用户指定的名称。发送者决定使用哪个值。

keyword

host.os.build

操作系统构建信息。

keyword

host.os.codename

操作系统代码名(如果有)。

keyword

host.os.family

操作系统系列(如 redhat、debian、freebsd、windows)。

keyword

host.os.kernel

操作系统内核版本,以原始字符串形式表示。

keyword

host.os.name

操作系统名称,不带版本。

keyword

host.os.name.text

host.os.name 的多字段。

text

host.os.platform

操作系统平台(如 centos、ubuntu、windows)。

keyword

host.os.version

操作系统版本,以原始字符串形式表示。

keyword

host.type

主机类型。对于云提供商,这可以是诸如 t2.medium 之类的机器类型。如果为虚拟机,则可以是容器,或其他在您的环境中具有意义的信息。

keyword

method

事务的命令/动词/方法。对于 HTTP,这是方法名称(GET、POST、PUT 等);对于 SQL,这是动词(SELECT、UPDATE、DELETE 等)。

keyword

mongodb.cursorId

在 OP_REPLY 中返回的游标标识符。这必须是数据库返回的值。

keyword

mongodb.error

如果 MongoDB 请求导致错误,则此字段包含服务器返回的错误消息。

keyword

mongodb.fullCollectionName

完整集合名称。完整集合名称是数据库名称和集合名称的串联,使用点 (.) 进行串联。例如,对于数据库 foo 和集合 bar,完整集合名称为 foo.bar。

keyword

mongodb.numberReturned

回复中的文档数。

long

mongodb.numberToReturn

请求返回的最大文档数。

long

mongodb.numberToSkip

设置在返回查询结果时要省略的文档数(从结果数据集中的第一个文档开始)。

long

mongodb.query

表示查询的 JSON 文档。查询将包含一个或多个元素,所有这些元素都必须匹配,才能将文档包含在结果集中。可能的元素包括 $query、$orderby、$hint、$explain 和 $snapshot。

keyword

mongodb.returnFieldsSelector

一个 JSON 文档,限制返回文档中的字段。returnFieldsSelector 包含一个或多个元素,每个元素是要返回的字段的名称和整数值 1。

keyword

mongodb.selector

一个 BSON 文档,指定用于选择要更新或删除的文档的查询。

keyword

mongodb.startingFrom

此回复在游标中的起始位置。

keyword

mongodb.update

一个 BSON 文档,指定要执行的更新。有关指定更新的信息,请参阅 MongoDB 手册中的更新操作文档。

keyword

network.bytes

在两个方向上传输的总字节数。如果已知 source.bytesdestination.bytes,则 network.bytes 是它们的总和。

long

network.community_id

源 IP 和目标 IP、端口以及通信中使用的协议的哈希值。这是一个与工具无关的用于标识流的标准。在 https://github.com/corelight/community-id-spec 了解更多信息。

keyword

network.direction

网络流量的方向。当从基于主机的监控上下文中映射事件时,请从主机的角度使用值“ingress”或“egress”填充此字段。当从基于网络或基于边界的监控上下文中映射事件时,请从网络边界的角度使用值“inbound”、“outbound”、“internal”或“external”填充此字段。请注意,“internal”未跨越边界,旨在描述边界内两台主机之间的通信。另请注意,“external”旨在描述边界外部两台主机之间的流量。例如,这对于 ISP 或 VPN 服务提供商可能很有用。

keyword

network.forwarded_ip

当源 IP 地址为代理时的主机 IP 地址。

ip

network.protocol

在 OSI 模型中,这将是应用层协议。例如,httpdnsssh。为了进行查询,必须将字段值标准化为小写。

keyword

network.transport

与 network.iana_number 相同,但使用传输层的关键字名称(udp、tcp、ipv6-icmp 等)。为了进行查询,必须将字段值标准化为小写。

keyword

network.type

在 OSI 模型中,这将是网络层。ipv4、ipv6、ipsec、pim 等。为了进行查询,必须将字段值标准化为小写。

keyword

network_traffic.mongodb.cursorId

在 OP_REPLY 中返回的游标标识符。这必须是数据库返回的值。

keyword

network_traffic.mongodb.error

如果 MongoDB 请求导致错误,则此字段包含服务器返回的错误消息。

keyword

network_traffic.mongodb.fullCollectionName

完整集合名称。完整集合名称是数据库名称和集合名称的串联,使用点 (.) 进行串联。例如,对于数据库 foo 和集合 bar,完整集合名称为 foo.bar。

keyword

network_traffic.mongodb.method

事务的命令/动词/方法。

keyword

network_traffic.mongodb.numberReturned

回复中的文档数。

long

network_traffic.mongodb.numberToReturn

请求返回的最大文档数。

long

network_traffic.mongodb.numberToSkip

设置在返回查询结果时要省略的文档数(从结果数据集中的第一个文档开始)。

long

network_traffic.mongodb.query

表示查询的 JSON 文档。查询将包含一个或多个元素,所有这些元素都必须匹配,才能将文档包含在结果集中。可能的元素包括 $query、$orderby、$hint、$explain 和 $snapshot。

keyword

network_traffic.mongodb.resource

此事务引用的逻辑资源。

keyword

network_traffic.mongodb.returnFieldsSelector

一个 JSON 文档,限制返回文档中的字段。returnFieldsSelector 包含一个或多个元素,每个元素是要返回的字段的名称和整数值 1。

keyword

network_traffic.mongodb.selector

一个 BSON 文档,指定用于选择要更新或删除的文档的查询。

keyword

network_traffic.mongodb.startingFrom

此回复在游标中的起始位置。

keyword

network_traffic.mongodb.update

一个 BSON 文档,指定要执行的更新。有关指定更新的信息,请参阅 MongoDB 手册中的更新操作文档。

keyword

network_traffic.status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

observer.hostname

观察者的主机名。

keyword

observer.ip

观察者的 IP 地址。

ip

observer.mac

观察者的 MAC 地址。建议使用 RFC 7042 中的表示法格式:每个八位字节(即 8 位字节)由两个[大写]十六进制数字表示,给出该八位字节的值作为无符号整数。连续的八位字节用连字符分隔。

keyword

observer.name

观察者的自定义名称。这是可以赋予观察者的名称。例如,如果在组织中使用同一型号的多个防火墙,则这可能会有所帮助。如果不需要自定义名称,则该字段可以留空。

keyword

params

请求参数。对于 HTTP,这些是 POST 或 GET 参数。对于 Thrift-RPC,这些是请求中的参数。

text

path

事务引用的路径。对于 HTTP,这是 URL。对于 SQL 数据库,这是表名。对于键值存储,这是键。

keyword

process.args

进程参数的数组,从可执行文件的绝对路径开始。可能会经过过滤以保护敏感信息。

keyword

process.executable

进程可执行文件的绝对路径。

keyword

process.executable.text

process.executable 的多字段。

match_only_text

process.name

进程名称。有时称为程序名称或类似名称。

keyword

process.name.text

process.name 的多字段。

match_only_text

process.start

进程启动的时间。

date

process.working_directory

进程的工作目录。

keyword

process.working_directory.text

process.working_directory 的多字段。

match_only_text

query

人类可读格式的查询。对于 HTTP,它通常类似于 GET /users/_search?name=test。对于 MySQL,它类似于 SELECT id from users where name=test

keyword

related.hosts

在您的事件中看到的所有主机名或其他主机标识符。示例标识符包括 FQDN、域名、工作站名称或别名。

keyword

related.ip

在您的事件中看到的所有 IP。

ip

request

对于文本协议,这是在网络上看到的请求(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

resource

此事务引用的逻辑资源。对于 HTTP,这是 URL 路径,直到最后一个斜杠 (/)。例如,如果 URL 是 /users/1,则资源是 /users。对于数据库,资源通常是表名。并非所有事务类型都会填充该字段。

keyword

response

对于文本协议,这是在网络上看到的响应(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

server.bytes

从服务器发送到客户端的字节数。

long

server.geo.city_name

城市名称。

keyword

server.geo.continent_name

大洲的名称。

keyword

server.geo.country_iso_code

国家/地区 ISO 代码。

keyword

server.geo.country_name

国家/地区名称。

keyword

server.geo.location

经度和纬度。

geo_point

server.geo.region_iso_code

区域 ISO 代码。

keyword

server.geo.region_name

区域名称。

keyword

server.ip

服务器的 IP 地址(IPv4 或 IPv6)。

ip

server.port

服务器的端口。

long

server.process.args

为事务提供服务的进程的命令行。

keyword

server.process.executable

服务器进程可执行文件的绝对路径。

keyword

server.process.name

为事务提供服务的进程的名称。

keyword

server.process.start

服务器进程启动的时间。

date

server.process.working_directory

服务器进程的工作目录。

keyword

source.bytes

从源发送到目标的字节数。

long

source.geo.city_name

城市名称。

keyword

source.geo.continent_name

大洲的名称。

keyword

source.geo.country_iso_code

国家/地区 ISO 代码。

keyword

source.geo.country_name

国家/地区名称。

keyword

source.geo.location

经度和纬度。

geo_point

source.geo.region_iso_code

区域 ISO 代码。

keyword

source.geo.region_name

区域名称。

keyword

source.ip

源的 IP 地址(IPv4 或 IPv6)。

ip

source.port

源的端口。

long

status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

tags

用于标记每个事件的关键字列表。

keyword

类型

事务的类型(例如,HTTP、MySQL、Redis 或 RUM),如果是流程则为 “flow”。

keyword

示例

关于 mongodb 的事件示例如下

{
    "@timestamp": "2023-10-16T23:10:00.771Z",
    "agent": {
        "ephemeral_id": "ba8a356f-2bd0-4dd5-927d-a149f0e78281",
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "name": "docker-fleet-agent",
        "type": "packetbeat",
        "version": "8.6.2"
    },
    "client": {
        "bytes": 50,
        "ip": "127.0.0.1",
        "port": 57203
    },
    "data_stream": {
        "dataset": "network_traffic.mongodb",
        "namespace": "ep",
        "type": "logs"
    },
    "destination": {
        "bytes": 514,
        "ip": "127.0.0.1",
        "port": 27017
    },
    "ecs": {
        "version": "8.11.0"
    },
    "elastic_agent": {
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "snapshot": false,
        "version": "8.6.2"
    },
    "event": {
        "agent_id_status": "verified",
        "category": [
            "network"
        ],
        "dataset": "network_traffic.mongodb",
        "duration": 1130257,
        "end": "2023-10-16T23:10:00.772Z",
        "ingested": "2023-10-16T23:10:01Z",
        "kind": "event",
        "start": "2023-10-16T23:10:00.771Z",
        "type": [
            "connection",
            "protocol"
        ]
    },
    "host": {
        "architecture": "x86_64",
        "containerized": false,
        "hostname": "docker-fleet-agent",
        "id": "f91b175388d443fca5c155815dfc2279",
        "ip": [
            "172.19.0.7"
        ],
        "mac": [
            "02-42-AC-13-00-07"
        ],
        "name": "docker-fleet-agent",
        "os": {
            "codename": "focal",
            "family": "debian",
            "kernel": "5.15.49-linuxkit",
            "name": "Ubuntu",
            "platform": "ubuntu",
            "type": "linux",
            "version": "20.04.5 LTS (Focal Fossa)"
        }
    },
    "method": "find",
    "mongodb": {
        "cursorId": 0,
        "fullCollectionName": "test.restaurants",
        "numberReturned": 1,
        "numberToReturn": 1,
        "numberToSkip": 0,
        "startingFrom": 0
    },
    "network": {
        "bytes": 564,
        "community_id": "1:mYSTZ4QZBfvJO05Em9TnPwrae6g=",
        "direction": "ingress",
        "protocol": "mongodb",
        "transport": "tcp",
        "type": "ipv4"
    },
    "query": "test.restaurants.find().limit(1)",
    "related": {
        "ip": [
            "127.0.0.1"
        ]
    },
    "resource": "test.restaurants",
    "server": {
        "bytes": 514,
        "ip": "127.0.0.1",
        "port": 27017
    },
    "source": {
        "bytes": 50,
        "ip": "127.0.0.1",
        "port": 57203
    },
    "status": "OK",
    "type": "mongodb"
}

MySQL

编辑

配置选项

另请参阅 通用协议选项

max_rows
编辑

要发布到 Elasticsearch 的 SQL 消息中的最大行数。默认值为 10 行。

max_row_length
编辑

要发布到 Elasticsearch 的 SQL 消息中的行的最大长度(以字节为单位)。默认值为 1024 字节。

statement_timeout

编辑

预处理语句在其上次使用后缓存的时间。有效的时间单位为 "ns"、"us" (或 "µs")、"ms"、"s"、"m"、"h"。默认值为 1h

为 MySQL 数据包发布的字段。

导出的字段
字段 描述 类型

@timestamp

事件时间戳。

date

client.bytes

从客户端发送到服务器的字节。

long

client.geo.city_name

城市名称。

keyword

client.geo.continent_name

大洲的名称。

keyword

client.geo.country_iso_code

国家/地区 ISO 代码。

keyword

client.geo.country_name

国家/地区名称。

keyword

client.geo.location

经度和纬度。

geo_point

client.geo.region_iso_code

区域 ISO 代码。

keyword

client.geo.region_name

区域名称。

keyword

client.ip

客户端的 IP 地址(IPv4 或 IPv6)。

ip

client.port

客户端的端口。

long

client.process.args

启动事务的进程的命令行。

keyword

client.process.executable

客户端进程可执行文件的绝对路径。

keyword

client.process.name

启动事务的进程的名称。

keyword

client.process.start

客户端进程启动的时间。

date

client.process.working_directory

客户端进程的工作目录。

keyword

cloud.account.id

用于标识多租户环境中不同实体的云帐户或组织 ID。示例:AWS 帐户 ID、Google Cloud ORG ID 或其他唯一标识符。

keyword

cloud.availability_zone

此主机运行所在的可用区。

keyword

cloud.image.id

云实例的映像 ID。

keyword

cloud.instance.id

主机计算机的实例 ID。

keyword

cloud.instance.name

主机计算机的实例名称。

keyword

cloud.machine.type

主机计算机的机器类型。

keyword

cloud.project.id

Google Cloud 中项目的名称。

keyword

cloud.provider

云提供商的名称。示例值包括 aws、azure、gcp 或 digitalocean。

keyword

cloud.region

此主机运行所在的区域。

keyword

container.id

唯一的容器 ID。

keyword

container.image.name

构建容器所基于的映像的名称。

keyword

container.labels

映像标签。

object

container.name

容器名称。

keyword

data_stream.dataset

数据流数据集。

constant_keyword

data_stream.namespace

数据流命名空间。

constant_keyword

data_stream.type

数据流类型。

constant_keyword

destination.bytes

从目标发送到源的字节。

long

destination.geo.city_name

城市名称。

keyword

destination.geo.continent_name

大洲的名称。

keyword

destination.geo.country_iso_code

国家/地区 ISO 代码。

keyword

destination.geo.country_name

国家/地区名称。

keyword

destination.geo.location

经度和纬度。

geo_point

destination.geo.region_iso_code

区域 ISO 代码。

keyword

destination.geo.region_name

区域名称。

keyword

destination.ip

目标的 IP 地址(IPv4 或 IPv6)。

ip

destination.port

目标的端口。

long

ecs.version

此事件符合的 ECS 版本。ecs.version 是必填字段,并且必须存在于所有事件中。在查询可能符合略有不同的 ECS 版本的多个索引时,此字段允许集成调整到事件的架构版本。

keyword

event.category

这是四个 ECS 分类字段之一,表示 ECS 类别层次结构中的第二级。event.category 表示 ECS 类别的“大类”。例如,筛选 event.category:process 会生成与进程活动相关的所有事件。此字段与用作子类别的 event.type 密切相关。此字段是一个数组。这将允许正确分类属于多个类别的某些事件。

keyword

event.dataset

数据集的名称。如果某个事件源发布多种类型的日志或事件(例如,访问日志、错误日志),则数据集用于指定该事件的来源。建议但不是必须以模块名称开头命名数据集名称,后跟一个点,然后是数据集名称。

keyword

event.duration

事件的持续时间,以纳秒为单位。如果知道 event.startevent.end,则此值应为结束时间和开始时间之间的差值。

long

event.end

event.end 包含事件结束或上次观察到活动时的日期。

date

event.kind

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的最高级别。event.kind 提供关于事件包含的信息类型的高级信息,而无需具体到事件的内容。例如,此字段的值区分警报事件和指标事件。此字段的值可用于通知应如何处理这些类型的事件。它们可能需要不同的保留策略、不同的访问控制,它还有助于了解数据是否以固定间隔传入。

keyword

event.module

此数据来自的模块的名称。如果您的监控代理支持使用模块或插件来处理给定来源的事件(例如,Apache 日志),则 event.module 应包含此模块的名称。

constant_keyword

event.start

event.start 包含事件开始的时间或首次观察到活动的时间。

date

event.type

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的第三级。event.type 表示一个分类“子桶”,当与 event.category 字段值一起使用时,可以将事件过滤到适合单个可视化的级别。此字段是一个数组。这将允许对属于多个事件类型的某些事件进行适当的分类。

keyword

flow.final

指示事件是否是流中的最后一个事件。如果 final 为 false,则该事件仅报告中间流状态。

boolean

flow.id

基于连接元数据和地址的内部流 ID。

keyword

flow.vlan

来自 802.1q 帧的 VLAN 标识符。如果存在多标记帧,则此字段将是一个数组,其中外部标记的 VLAN 标识符首先列出。

long

host.architecture

操作系统架构。

keyword

host.containerized

主机是否为容器。

boolean

host.domain

主机所属的域名。例如,在 Windows 上,这可以是主机的 Active Directory 域或 NetBIOS 域名。对于 Linux,这可以是主机 LDAP 提供程序的域。

keyword

host.hostname

主机的 hostname。它通常包含主机上的 hostname 命令返回的内容。

keyword

host.id

唯一的主机 ID。由于 hostname 并不总是唯一的,请使用在您的环境中具有意义的值。例如:当前 beat.name 的用法。

keyword

host.ip

主机 IP 地址。

ip

host.mac

主机 MAC 地址。

keyword

host.name

主机的名称。它可以包含 Unix 系统上 hostname 返回的内容、完全限定域名或用户指定的名称。发送者决定使用哪个值。

keyword

host.os.build

操作系统构建信息。

keyword

host.os.codename

操作系统代码名(如果有)。

keyword

host.os.family

操作系统系列(如 redhat、debian、freebsd、windows)。

keyword

host.os.kernel

操作系统内核版本,以原始字符串形式表示。

keyword

host.os.name

操作系统名称,不带版本。

keyword

host.os.name.text

host.os.name 的多字段。

text

host.os.platform

操作系统平台(如 centos、ubuntu、windows)。

keyword

host.os.version

操作系统版本,以原始字符串形式表示。

keyword

host.type

主机类型。对于云提供商,这可以是诸如 t2.medium 之类的机器类型。如果为虚拟机,则可以是容器,或其他在您的环境中具有意义的信息。

keyword

method

事务的命令/动词/方法。对于 HTTP,这是方法名称(GET、POST、PUT 等);对于 SQL,这是动词(SELECT、UPDATE、DELETE 等)。

keyword

mysql.affected_rows

如果 MySQL 命令成功,则此字段包含最后一个语句的受影响的行数。

long

mysql.error_code

MySQL 返回的错误代码。

long

mysql.error_message

MySQL 返回的错误信息消息。

keyword

mysql.insert_id

如果 INSERT 查询成功,则此字段包含新插入行的 ID。

keyword

mysql.num_fields

如果 SELECT 查询成功,则此字段设置为返回的字段数。

long

mysql.num_rows

如果 SELECT 查询成功,则此字段设置为返回的行数。

long

mysql.query

从事务的请求中读取的原始 mysql 查询。

keyword

network.bytes

在两个方向上传输的总字节数。如果已知 source.bytesdestination.bytes,则 network.bytes 是它们的总和。

long

network.community_id

源 IP 和目标 IP、端口以及通信中使用的协议的哈希值。这是一个与工具无关的用于标识流的标准。在 https://github.com/corelight/community-id-spec 了解更多信息。

keyword

network.direction

网络流量的方向。当从基于主机的监控上下文中映射事件时,请从主机的角度使用值“ingress”或“egress”填充此字段。当从基于网络或基于边界的监控上下文中映射事件时,请从网络边界的角度使用值“inbound”、“outbound”、“internal”或“external”填充此字段。请注意,“internal”未跨越边界,旨在描述边界内两台主机之间的通信。另请注意,“external”旨在描述边界外部两台主机之间的流量。例如,这对于 ISP 或 VPN 服务提供商可能很有用。

keyword

network.forwarded_ip

当源 IP 地址为代理时的主机 IP 地址。

ip

network.protocol

在 OSI 模型中,这将是应用层协议。例如,httpdnsssh。为了进行查询,必须将字段值标准化为小写。

keyword

network.transport

与 network.iana_number 相同,但使用传输层的关键字名称(udp、tcp、ipv6-icmp 等)。为了进行查询,必须将字段值标准化为小写。

keyword

network.type

在 OSI 模型中,这将是网络层。ipv4、ipv6、ipsec、pim 等。为了进行查询,必须将字段值标准化为小写。

keyword

network_traffic.mysql.affected_rows

如果 MySQL 命令成功,则此字段包含最后一个语句的受影响的行数。

long

network_traffic.mysql.error_code

MySQL 返回的错误代码。

long

network_traffic.mysql.error_message

MySQL 返回的错误信息消息。

keyword

network_traffic.mysql.insert_id

如果 INSERT 查询成功,则此字段包含新插入行的 ID。

keyword

network_traffic.mysql.method

事务的命令/动词/方法。

keyword

network_traffic.mysql.num_fields

如果 SELECT 查询成功,则此字段设置为返回的字段数。

long

network_traffic.mysql.num_rows

如果 SELECT 查询成功,则此字段设置为返回的行数。

long

network_traffic.mysql.path

事务引用的表名称。

keyword

network_traffic.mysql.query

从事务的请求中读取的原始 mysql 查询。

keyword

network_traffic.status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

observer.hostname

观察者的主机名。

keyword

observer.ip

观察者的 IP 地址。

ip

observer.mac

观察者的 MAC 地址。建议使用 RFC 7042 中的表示法格式:每个八位字节(即 8 位字节)由两个[大写]十六进制数字表示,给出该八位字节的值作为无符号整数。连续的八位字节用连字符分隔。

keyword

observer.name

观察者的自定义名称。这是可以赋予观察者的名称。例如,如果在组织中使用同一型号的多个防火墙,则这可能会有所帮助。如果不需要自定义名称,则该字段可以留空。

keyword

params

请求参数。对于 HTTP,这些是 POST 或 GET 参数。对于 Thrift-RPC,这些是请求中的参数。

text

path

事务引用的路径。对于 HTTP,这是 URL。对于 SQL 数据库,这是表名。对于键值存储,这是键。

keyword

process.args

进程参数的数组,从可执行文件的绝对路径开始。可能会经过过滤以保护敏感信息。

keyword

process.executable

进程可执行文件的绝对路径。

keyword

process.executable.text

process.executable 的多字段。

match_only_text

process.name

进程名称。有时称为程序名称或类似名称。

keyword

process.name.text

process.name 的多字段。

match_only_text

process.start

进程启动的时间。

date

process.working_directory

进程的工作目录。

keyword

process.working_directory.text

process.working_directory 的多字段。

match_only_text

query

人类可读格式的查询。对于 HTTP,它通常类似于 GET /users/_search?name=test。对于 MySQL,它类似于 SELECT id from users where name=test

keyword

related.hosts

在您的事件中看到的所有主机名或其他主机标识符。示例标识符包括 FQDN、域名、工作站名称或别名。

keyword

related.ip

在您的事件中看到的所有 IP。

ip

request

对于文本协议,这是在网络上看到的请求(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

resource

此事务引用的逻辑资源。对于 HTTP,这是 URL 路径,直到最后一个斜杠 (/)。例如,如果 URL 是 /users/1,则资源是 /users。对于数据库,资源通常是表名。并非所有事务类型都会填充该字段。

keyword

response

对于文本协议,这是在网络上看到的响应(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

server.bytes

从服务器发送到客户端的字节数。

long

server.geo.city_name

城市名称。

keyword

server.geo.continent_name

大洲的名称。

keyword

server.geo.country_iso_code

国家/地区 ISO 代码。

keyword

server.geo.country_name

国家/地区名称。

keyword

server.geo.location

经度和纬度。

geo_point

server.geo.region_iso_code

区域 ISO 代码。

keyword

server.geo.region_name

区域名称。

keyword

server.ip

服务器的 IP 地址(IPv4 或 IPv6)。

ip

server.port

服务器的端口。

long

server.process.args

为事务提供服务的进程的命令行。

keyword

server.process.executable

服务器进程可执行文件的绝对路径。

keyword

server.process.name

为事务提供服务的进程的名称。

keyword

server.process.start

服务器进程启动的时间。

date

server.process.working_directory

服务器进程的工作目录。

keyword

source.bytes

从源发送到目标的字节数。

long

source.geo.city_name

城市名称。

keyword

source.geo.continent_name

大洲的名称。

keyword

source.geo.country_iso_code

国家/地区 ISO 代码。

keyword

source.geo.country_name

国家/地区名称。

keyword

source.geo.location

经度和纬度。

geo_point

source.geo.region_iso_code

区域 ISO 代码。

keyword

source.geo.region_name

区域名称。

keyword

source.ip

源的 IP 地址(IPv4 或 IPv6)。

ip

source.port

源的端口。

long

status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

tags

用于标记每个事件的关键字列表。

keyword

类型

事务的类型(例如,HTTP、MySQL、Redis 或 RUM),如果是流程则为 “flow”。

keyword

示例

关于 mysql 的事件示例如下

{
    "@timestamp": "2023-10-16T23:14:45.124Z",
    "agent": {
        "ephemeral_id": "bfa018bc-c1e8-45ea-b4ff-e8d2436764be",
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "name": "docker-fleet-agent",
        "type": "packetbeat",
        "version": "8.6.2"
    },
    "client": {
        "bytes": 23,
        "ip": "127.0.0.1",
        "port": 41517
    },
    "data_stream": {
        "dataset": "network_traffic.mysql",
        "namespace": "ep",
        "type": "logs"
    },
    "destination": {
        "bytes": 3629,
        "ip": "127.0.0.1",
        "port": 3306
    },
    "ecs": {
        "version": "8.11.0"
    },
    "elastic_agent": {
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "snapshot": false,
        "version": "8.6.2"
    },
    "event": {
        "agent_id_status": "verified",
        "category": [
            "network"
        ],
        "dataset": "network_traffic.mysql",
        "duration": 4771069,
        "end": "2023-10-16T23:14:45.129Z",
        "ingested": "2023-10-16T23:14:46Z",
        "kind": "event",
        "start": "2023-10-16T23:14:45.124Z",
        "type": [
            "connection",
            "protocol"
        ]
    },
    "host": {
        "architecture": "x86_64",
        "containerized": false,
        "hostname": "docker-fleet-agent",
        "id": "f91b175388d443fca5c155815dfc2279",
        "ip": [
            "172.19.0.7"
        ],
        "mac": [
            "02-42-AC-13-00-07"
        ],
        "name": "docker-fleet-agent",
        "os": {
            "codename": "focal",
            "family": "debian",
            "kernel": "5.15.49-linuxkit",
            "name": "Ubuntu",
            "platform": "ubuntu",
            "type": "linux",
            "version": "20.04.5 LTS (Focal Fossa)"
        }
    },
    "method": "SELECT",
    "mysql": {
        "affected_rows": 0,
        "insert_id": 0,
        "num_fields": 3,
        "num_rows": 15
    },
    "network": {
        "bytes": 3652,
        "community_id": "1:goIcZn7CMIJ6W7Yf8JRV618zzxA=",
        "direction": "ingress",
        "protocol": "mysql",
        "transport": "tcp",
        "type": "ipv4"
    },
    "path": "test.test",
    "query": "select * from test",
    "related": {
        "ip": [
            "127.0.0.1"
        ]
    },
    "server": {
        "bytes": 3629,
        "ip": "127.0.0.1",
        "port": 3306
    },
    "source": {
        "bytes": 23,
        "ip": "127.0.0.1",
        "port": 41517
    },
    "status": "OK",
    "type": "mysql"
}

配置选项

请参阅通用协议选项

为 NFS 数据包发布的字段。

导出的字段
字段 描述 类型

@timestamp

事件时间戳。

date

client.bytes

从客户端发送到服务器的字节。

long

client.domain

客户端系统的域名。此值可以是主机名、完全限定的域名或其他主机命名格式。该值可能来自原始事件或从扩充中添加。

keyword

client.geo.city_name

城市名称。

keyword

client.geo.continent_name

大洲的名称。

keyword

client.geo.country_iso_code

国家/地区 ISO 代码。

keyword

client.geo.country_name

国家/地区名称。

keyword

client.geo.location

经度和纬度。

geo_point

client.geo.region_iso_code

区域 ISO 代码。

keyword

client.geo.region_name

区域名称。

keyword

client.ip

客户端的 IP 地址(IPv4 或 IPv6)。

ip

client.port

客户端的端口。

long

client.process.args

启动事务的进程的命令行。

keyword

client.process.executable

客户端进程可执行文件的绝对路径。

keyword

client.process.name

启动事务的进程的名称。

keyword

client.process.start

客户端进程启动的时间。

date

client.process.working_directory

客户端进程的工作目录。

keyword

cloud.account.id

用于标识多租户环境中不同实体的云帐户或组织 ID。示例:AWS 帐户 ID、Google Cloud ORG ID 或其他唯一标识符。

keyword

cloud.availability_zone

此主机运行所在的可用区。

keyword

cloud.image.id

云实例的映像 ID。

keyword

cloud.instance.id

主机计算机的实例 ID。

keyword

cloud.instance.name

主机计算机的实例名称。

keyword

cloud.machine.type

主机计算机的机器类型。

keyword

cloud.project.id

Google Cloud 中项目的名称。

keyword

cloud.provider

云提供商的名称。示例值包括 aws、azure、gcp 或 digitalocean。

keyword

cloud.region

此主机运行所在的区域。

keyword

container.id

唯一的容器 ID。

keyword

container.image.name

构建容器所基于的映像的名称。

keyword

container.labels

映像标签。

object

container.name

容器名称。

keyword

data_stream.dataset

数据流数据集。

constant_keyword

data_stream.namespace

数据流命名空间。

constant_keyword

data_stream.type

数据流类型。

constant_keyword

destination.bytes

从目标发送到源的字节。

long

destination.geo.city_name

城市名称。

keyword

destination.geo.continent_name

大洲的名称。

keyword

destination.geo.country_iso_code

国家/地区 ISO 代码。

keyword

destination.geo.country_name

国家/地区名称。

keyword

destination.geo.location

经度和纬度。

geo_point

destination.geo.region_iso_code

区域 ISO 代码。

keyword

destination.geo.region_name

区域名称。

keyword

destination.ip

目标的 IP 地址(IPv4 或 IPv6)。

ip

destination.port

目标的端口。

long

ecs.version

此事件符合的 ECS 版本。ecs.version 是必填字段,并且必须存在于所有事件中。在查询可能符合略有不同的 ECS 版本的多个索引时,此字段允许集成调整到事件的架构版本。

keyword

event.action

事件捕获的操作。这描述了事件中的信息。它比 event.category 更具体。示例包括 group-addprocess-startedfile-created。该值通常由实施者定义。

keyword

event.category

这是四个 ECS 分类字段之一,表示 ECS 类别层次结构中的第二级。event.category 表示 ECS 类别的“大类”。例如,筛选 event.category:process 会生成与进程活动相关的所有事件。此字段与用作子类别的 event.type 密切相关。此字段是一个数组。这将允许正确分类属于多个类别的某些事件。

keyword

event.dataset

数据集的名称。如果某个事件源发布多种类型的日志或事件(例如,访问日志、错误日志),则数据集用于指定该事件的来源。建议但不是必须以模块名称开头命名数据集名称,后跟一个点,然后是数据集名称。

keyword

event.duration

事件的持续时间,以纳秒为单位。如果知道 event.startevent.end,则此值应为结束时间和开始时间之间的差值。

long

event.end

event.end 包含事件结束或上次观察到活动时的日期。

date

event.kind

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的最高级别。event.kind 提供关于事件包含的信息类型的高级信息,而无需具体到事件的内容。例如,此字段的值区分警报事件和指标事件。此字段的值可用于通知应如何处理这些类型的事件。它们可能需要不同的保留策略、不同的访问控制,它还有助于了解数据是否以固定间隔传入。

keyword

event.module

此数据来自的模块的名称。如果您的监控代理支持使用模块或插件来处理给定来源的事件(例如,Apache 日志),则 event.module 应包含此模块的名称。

constant_keyword

event.start

event.start 包含事件开始的时间或首次观察到活动的时间。

date

event.type

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的第三级。event.type 表示一个分类“子桶”,当与 event.category 字段值一起使用时,可以将事件过滤到适合单个可视化的级别。此字段是一个数组。这将允许对属于多个事件类型的某些事件进行适当的分类。

keyword

flow.final

指示事件是否是流中的最后一个事件。如果 final 为 false,则该事件仅报告中间流状态。

boolean

flow.id

基于连接元数据和地址的内部流 ID。

keyword

flow.vlan

来自 802.1q 帧的 VLAN 标识符。如果存在多标记帧,则此字段将是一个数组,其中外部标记的 VLAN 标识符首先列出。

long

group.id

系统/平台上的组的唯一标识符。

keyword

host.architecture

操作系统架构。

keyword

host.containerized

主机是否为容器。

boolean

host.domain

主机所属的域名。例如,在 Windows 上,这可以是主机的 Active Directory 域或 NetBIOS 域名。对于 Linux,这可以是主机 LDAP 提供程序的域。

keyword

host.hostname

主机的 hostname。它通常包含主机上的 hostname 命令返回的内容。

keyword

host.id

唯一的主机 ID。由于 hostname 并不总是唯一的,请使用在您的环境中具有意义的值。例如:当前 beat.name 的用法。

keyword

host.ip

主机 IP 地址。

ip

host.mac

主机 MAC 地址。

keyword

host.name

主机的名称。它可以包含 Unix 系统上 hostname 返回的内容、完全限定域名或用户指定的名称。发送者决定使用哪个值。

keyword

host.os.build

操作系统构建信息。

keyword

host.os.codename

操作系统代码名(如果有)。

keyword

host.os.family

操作系统系列(如 redhat、debian、freebsd、windows)。

keyword

host.os.kernel

操作系统内核版本,以原始字符串形式表示。

keyword

host.os.name

操作系统名称,不带版本。

keyword

host.os.name.text

host.os.name 的多字段。

text

host.os.platform

操作系统平台(如 centos、ubuntu、windows)。

keyword

host.os.version

操作系统版本,以原始字符串形式表示。

keyword

host.type

主机类型。对于云提供商,这可以是诸如 t2.medium 之类的机器类型。如果为虚拟机,则可以是容器,或其他在您的环境中具有意义的信息。

keyword

method

事务的命令/动词/方法。对于 HTTP,这是方法名称(GET、POST、PUT 等);对于 SQL,这是动词(SELECT、UPDATE、DELETE 等)。

keyword

network.bytes

在两个方向上传输的总字节数。如果已知 source.bytesdestination.bytes,则 network.bytes 是它们的总和。

long

network.community_id

源 IP 和目标 IP、端口以及通信中使用的协议的哈希值。这是一个与工具无关的用于标识流的标准。在 https://github.com/corelight/community-id-spec 了解更多信息。

keyword

network.direction

网络流量的方向。当从基于主机的监控上下文中映射事件时,请从主机的角度使用值“ingress”或“egress”填充此字段。当从基于网络或基于边界的监控上下文中映射事件时,请从网络边界的角度使用值“inbound”、“outbound”、“internal”或“external”填充此字段。请注意,“internal”未跨越边界,旨在描述边界内两台主机之间的通信。另请注意,“external”旨在描述边界外部两台主机之间的流量。例如,这对于 ISP 或 VPN 服务提供商可能很有用。

keyword

network.forwarded_ip

当源 IP 地址为代理时的主机 IP 地址。

ip

network.protocol

在 OSI 模型中,这将是应用层协议。例如,httpdnsssh。为了进行查询,必须将字段值标准化为小写。

keyword

network.transport

与 network.iana_number 相同,但使用传输层的关键字名称(udp、tcp、ipv6-icmp 等)。为了进行查询,必须将字段值标准化为小写。

keyword

network.type

在 OSI 模型中,这将是网络层。ipv4、ipv6、ipsec、pim 等。为了进行查询,必须将字段值标准化为小写。

keyword

network_traffic.nfs.host.hostname

NFS 主机的主机名。

keyword

network_traffic.nfs.minor_version

NFS 协议次版本号。

long

network_traffic.nfs.opcode

NFS 操作名称,或在 COMPOUND 调用中的主要操作名称。

keyword

network_traffic.nfs.rpc.auth_flavor

RPC 身份验证方式。

keyword

network_traffic.nfs.rpc.cred.gid

RPC 调用者的组 ID,在 auth-unix 的情况下。

long

network_traffic.nfs.rpc.cred.gids

RPC 调用者的辅助组 ID,在 auth-unix 的情况下。

long

network_traffic.nfs.rpc.cred.machinename

调用者机器的名称。

keyword

network_traffic.nfs.rpc.cred.stamp

调用方机器可能生成的任意 ID。

long

network_traffic.nfs.rpc.cred.uid

RPC 调用方的用户 ID,在 auth-unix 的情况下。

long

network_traffic.nfs.rpc.status

RPC 消息回复状态。

keyword

network_traffic.nfs.rpc.xid

RPC 消息事务标识符。

keyword

network_traffic.nfs.status

NFS 操作回复状态。

keyword

network_traffic.nfs.tag

NFS v4 COMPOUND 操作标签。

keyword

network_traffic.nfs.version

NFS 协议版本号。

long

network_traffic.status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

nfs.minor_version

NFS 协议次版本号。

long

nfs.opcode

NFS 操作名称,或在 COMPOUND 调用中的主要操作名称。

keyword

nfs.status

NFS 操作回复状态。

keyword

nfs.tag

NFS v4 COMPOUND 操作标签。

keyword

nfs.version

NFS 协议版本号。

long

observer.hostname

观察者的主机名。

keyword

observer.ip

观察者的 IP 地址。

ip

observer.mac

观察者的 MAC 地址。建议使用 RFC 7042 中的表示法格式:每个八位字节(即 8 位字节)由两个[大写]十六进制数字表示,给出该八位字节的值作为无符号整数。连续的八位字节用连字符分隔。

keyword

observer.name

观察者的自定义名称。这是可以赋予观察者的名称。例如,如果在组织中使用同一型号的多个防火墙,则这可能会有所帮助。如果不需要自定义名称,则该字段可以留空。

keyword

params

请求参数。对于 HTTP,这些是 POST 或 GET 参数。对于 Thrift-RPC,这些是请求中的参数。

text

path

事务引用的路径。对于 HTTP,这是 URL。对于 SQL 数据库,这是表名。对于键值存储,这是键。

keyword

process.args

进程参数的数组,从可执行文件的绝对路径开始。可能会经过过滤以保护敏感信息。

keyword

process.executable

进程可执行文件的绝对路径。

keyword

process.executable.text

process.executable 的多字段。

match_only_text

process.name

进程名称。有时称为程序名称或类似名称。

keyword

process.name.text

process.name 的多字段。

match_only_text

process.start

进程启动的时间。

date

process.working_directory

进程的工作目录。

keyword

process.working_directory.text

process.working_directory 的多字段。

match_only_text

query

人类可读格式的查询。对于 HTTP,它通常类似于 GET /users/_search?name=test。对于 MySQL,它类似于 SELECT id from users where name=test

keyword

related.hosts

在您的事件中看到的所有主机名或其他主机标识符。示例标识符包括 FQDN、域名、工作站名称或别名。

keyword

related.ip

在您的事件中看到的所有 IP。

ip

request

对于文本协议,这是在网络上看到的请求(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

resource

此事务引用的逻辑资源。对于 HTTP,这是 URL 路径,直到最后一个斜杠 (/)。例如,如果 URL 是 /users/1,则资源是 /users。对于数据库,资源通常是表名。并非所有事务类型都会填充该字段。

keyword

response

对于文本协议,这是在网络上看到的响应(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

rpc.auth_flavor

RPC 身份验证方式。

keyword

rpc.cred.gid

RPC 调用者的组 ID,在 auth-unix 的情况下。

long

rpc.cred.gids

RPC 调用者的辅助组 ID,在 auth-unix 的情况下。

long

rpc.cred.machinename

调用者机器的名称。

keyword

rpc.cred.stamp

调用方机器可能生成的任意 ID。

long

rpc.cred.uid

RPC 调用方的用户 ID,在 auth-unix 的情况下。

long

rpc.status

RPC 消息回复状态。

keyword

rpc.xid

RPC 消息事务标识符。

keyword

server.bytes

从服务器发送到客户端的字节数。

long

server.geo.city_name

城市名称。

keyword

server.geo.continent_name

大洲的名称。

keyword

server.geo.country_iso_code

国家/地区 ISO 代码。

keyword

server.geo.country_name

国家/地区名称。

keyword

server.geo.location

经度和纬度。

geo_point

server.geo.region_iso_code

区域 ISO 代码。

keyword

server.geo.region_name

区域名称。

keyword

server.ip

服务器的 IP 地址(IPv4 或 IPv6)。

ip

server.port

服务器的端口。

long

server.process.args

为事务提供服务的进程的命令行。

keyword

server.process.executable

服务器进程可执行文件的绝对路径。

keyword

server.process.name

为事务提供服务的进程的名称。

keyword

server.process.start

服务器进程启动的时间。

date

server.process.working_directory

服务器进程的工作目录。

keyword

source.bytes

从源发送到目标的字节数。

long

source.domain

源系统的域名。此值可以是主机名、完全限定域名或其他主机命名格式。该值可能源自原始事件,也可能通过丰富信息添加。

keyword

source.geo.city_name

城市名称。

keyword

source.geo.continent_name

大洲的名称。

keyword

source.geo.country_iso_code

国家/地区 ISO 代码。

keyword

source.geo.country_name

国家/地区名称。

keyword

source.geo.location

经度和纬度。

geo_point

source.geo.region_iso_code

区域 ISO 代码。

keyword

source.geo.region_name

区域名称。

keyword

source.ip

源的 IP 地址(IPv4 或 IPv6)。

ip

source.port

源的端口。

long

status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

tags

用于标记每个事件的关键字列表。

keyword

类型

事务的类型(例如,HTTP、MySQL、Redis 或 RUM),如果是流程则为 “flow”。

keyword

user.id

用户的唯一标识符。

keyword

示例

一个关于 nfs 的示例事件如下所示

{
    "@timestamp": "2023-10-16T23:18:26.753Z",
    "agent": {
        "ephemeral_id": "d177e674-4168-4b25-bceb-5113c0bb88b0",
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "name": "docker-fleet-agent",
        "type": "packetbeat",
        "version": "8.6.2"
    },
    "client": {
        "bytes": 208,
        "domain": "desycloud03.desy.de",
        "ip": "131.169.5.156",
        "port": 907
    },
    "data_stream": {
        "dataset": "network_traffic.nfs",
        "namespace": "ep",
        "type": "logs"
    },
    "destination": {
        "bytes": 176,
        "ip": "131.169.192.35",
        "port": 2049
    },
    "ecs": {
        "version": "8.11.0"
    },
    "elastic_agent": {
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "snapshot": false,
        "version": "8.6.2"
    },
    "event": {
        "action": "nfs.CLOSE",
        "agent_id_status": "verified",
        "category": [
            "network"
        ],
        "dataset": "network_traffic.nfs",
        "duration": 5463467,
        "end": "2023-10-16T23:18:26.758Z",
        "ingested": "2023-10-16T23:18:27Z",
        "kind": "event",
        "start": "2023-10-16T23:18:26.753Z",
        "type": [
            "connection",
            "protocol"
        ]
    },
    "group.id": 48,
    "host": {
        "architecture": "x86_64",
        "containerized": false,
        "hostname": "docker-fleet-agent",
        "id": "f91b175388d443fca5c155815dfc2279",
        "ip": [
            "172.19.0.7"
        ],
        "mac": [
            "02-42-AC-13-00-07"
        ],
        "name": "docker-fleet-agent",
        "os": {
            "codename": "focal",
            "family": "debian",
            "kernel": "5.15.49-linuxkit",
            "name": "Ubuntu",
            "platform": "ubuntu",
            "type": "linux",
            "version": "20.04.5 LTS (Focal Fossa)"
        }
    },
    "host.hostname": "desycloud03.desy.de",
    "network": {
        "bytes": 384,
        "community_id": "1:cd5eLXemAsSPMdXwCbdDUWWud4M=",
        "direction": "unknown",
        "protocol": "nfsv4",
        "transport": "tcp",
        "type": "ipv4"
    },
    "nfs": {
        "minor_version": 1,
        "opcode": "CLOSE",
        "status": "NFS_OK",
        "tag": "",
        "version": 4
    },
    "related": {
        "ip": [
            "131.169.5.156",
            "131.169.192.35"
        ]
    },
    "rpc": {
        "auth_flavor": "unix",
        "cred": {
            "gid": 48,
            "gids": [
                48
            ],
            "machinename": "desycloud03.desy.de",
            "stamp": 4308441,
            "uid": 48
        },
        "status": "success",
        "xid": "c3103fc1"
    },
    "server": {
        "bytes": 176,
        "ip": "131.169.192.35",
        "port": 2049
    },
    "source": {
        "bytes": 208,
        "domain": "desycloud03.desy.de",
        "ip": "131.169.5.156",
        "port": 907
    },
    "status": "OK",
    "type": "nfs",
    "user.id": 48
}

PostgreSQL

编辑

配置选项

另请参阅 通用协议选项

max_rows
编辑

要发布到 Elasticsearch 的 SQL 消息中的最大行数。默认值为 10 行。

max_row_length
编辑

要发布到 Elasticsearch 的 SQL 消息中的行的最大长度(以字节为单位)。默认值为 1024 字节。

为 PostgreSQL 数据包发布的字段。

导出的字段
字段 描述 类型

@timestamp

事件时间戳。

date

client.bytes

从客户端发送到服务器的字节。

long

client.geo.city_name

城市名称。

keyword

client.geo.continent_name

大洲的名称。

keyword

client.geo.country_iso_code

国家/地区 ISO 代码。

keyword

client.geo.country_name

国家/地区名称。

keyword

client.geo.location

经度和纬度。

geo_point

client.geo.region_iso_code

区域 ISO 代码。

keyword

client.geo.region_name

区域名称。

keyword

client.ip

客户端的 IP 地址(IPv4 或 IPv6)。

ip

client.port

客户端的端口。

long

client.process.args

启动事务的进程的命令行。

keyword

client.process.executable

客户端进程可执行文件的绝对路径。

keyword

client.process.name

启动事务的进程的名称。

keyword

client.process.start

客户端进程启动的时间。

date

client.process.working_directory

客户端进程的工作目录。

keyword

cloud.account.id

用于标识多租户环境中不同实体的云帐户或组织 ID。示例:AWS 帐户 ID、Google Cloud ORG ID 或其他唯一标识符。

keyword

cloud.availability_zone

此主机运行所在的可用区。

keyword

cloud.image.id

云实例的映像 ID。

keyword

cloud.instance.id

主机计算机的实例 ID。

keyword

cloud.instance.name

主机计算机的实例名称。

keyword

cloud.machine.type

主机计算机的机器类型。

keyword

cloud.project.id

Google Cloud 中项目的名称。

keyword

cloud.provider

云提供商的名称。示例值包括 aws、azure、gcp 或 digitalocean。

keyword

cloud.region

此主机运行所在的区域。

keyword

container.id

唯一的容器 ID。

keyword

container.image.name

构建容器所基于的映像的名称。

keyword

container.labels

映像标签。

object

container.name

容器名称。

keyword

data_stream.dataset

数据流数据集。

constant_keyword

data_stream.namespace

数据流命名空间。

constant_keyword

data_stream.type

数据流类型。

constant_keyword

destination.bytes

从目标发送到源的字节。

long

destination.geo.city_name

城市名称。

keyword

destination.geo.continent_name

大洲的名称。

keyword

destination.geo.country_iso_code

国家/地区 ISO 代码。

keyword

destination.geo.country_name

国家/地区名称。

keyword

destination.geo.location

经度和纬度。

geo_point

destination.geo.region_iso_code

区域 ISO 代码。

keyword

destination.geo.region_name

区域名称。

keyword

destination.ip

目标的 IP 地址(IPv4 或 IPv6)。

ip

destination.port

目标的端口。

long

ecs.version

此事件符合的 ECS 版本。ecs.version 是必填字段,并且必须存在于所有事件中。在查询可能符合略有不同的 ECS 版本的多个索引时,此字段允许集成调整到事件的架构版本。

keyword

event.category

这是四个 ECS 分类字段之一,表示 ECS 类别层次结构中的第二级。event.category 表示 ECS 类别的“大类”。例如,筛选 event.category:process 会生成与进程活动相关的所有事件。此字段与用作子类别的 event.type 密切相关。此字段是一个数组。这将允许正确分类属于多个类别的某些事件。

keyword

event.dataset

数据集的名称。如果某个事件源发布多种类型的日志或事件(例如,访问日志、错误日志),则数据集用于指定该事件的来源。建议但不是必须以模块名称开头命名数据集名称,后跟一个点,然后是数据集名称。

keyword

event.duration

事件的持续时间,以纳秒为单位。如果知道 event.startevent.end,则此值应为结束时间和开始时间之间的差值。

long

event.end

event.end 包含事件结束或上次观察到活动时的日期。

date

event.kind

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的最高级别。event.kind 提供关于事件包含的信息类型的高级信息,而无需具体到事件的内容。例如,此字段的值区分警报事件和指标事件。此字段的值可用于通知应如何处理这些类型的事件。它们可能需要不同的保留策略、不同的访问控制,它还有助于了解数据是否以固定间隔传入。

keyword

event.module

此数据来自的模块的名称。如果您的监控代理支持使用模块或插件来处理给定来源的事件(例如,Apache 日志),则 event.module 应包含此模块的名称。

constant_keyword

event.start

event.start 包含事件开始的时间或首次观察到活动的时间。

date

event.type

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的第三级。event.type 表示一个分类“子桶”,当与 event.category 字段值一起使用时,可以将事件过滤到适合单个可视化的级别。此字段是一个数组。这将允许对属于多个事件类型的某些事件进行适当的分类。

keyword

flow.final

指示事件是否是流中的最后一个事件。如果 final 为 false,则该事件仅报告中间流状态。

boolean

flow.id

基于连接元数据和地址的内部流 ID。

keyword

flow.vlan

来自 802.1q 帧的 VLAN 标识符。如果存在多标记帧,则此字段将是一个数组,其中外部标记的 VLAN 标识符首先列出。

long

host.architecture

操作系统架构。

keyword

host.containerized

主机是否为容器。

boolean

host.domain

主机所属的域名。例如,在 Windows 上,这可以是主机的 Active Directory 域或 NetBIOS 域名。对于 Linux,这可以是主机 LDAP 提供程序的域。

keyword

host.hostname

主机的 hostname。它通常包含主机上的 hostname 命令返回的内容。

keyword

host.id

唯一的主机 ID。由于 hostname 并不总是唯一的,请使用在您的环境中具有意义的值。例如:当前 beat.name 的用法。

keyword

host.ip

主机 IP 地址。

ip

host.mac

主机 MAC 地址。

keyword

host.name

主机的名称。它可以包含 Unix 系统上 hostname 返回的内容、完全限定域名或用户指定的名称。发送者决定使用哪个值。

keyword

host.os.build

操作系统构建信息。

keyword

host.os.codename

操作系统代码名(如果有)。

keyword

host.os.family

操作系统系列(如 redhat、debian、freebsd、windows)。

keyword

host.os.kernel

操作系统内核版本,以原始字符串形式表示。

keyword

host.os.name

操作系统名称,不带版本。

keyword

host.os.name.text

host.os.name 的多字段。

text

host.os.platform

操作系统平台(如 centos、ubuntu、windows)。

keyword

host.os.version

操作系统版本,以原始字符串形式表示。

keyword

host.type

主机类型。对于云提供商,这可以是诸如 t2.medium 之类的机器类型。如果为虚拟机,则可以是容器,或其他在您的环境中具有意义的信息。

keyword

method

事务的命令/动词/方法。对于 HTTP,这是方法名称(GET、POST、PUT 等);对于 SQL,这是动词(SELECT、UPDATE、DELETE 等)。

keyword

network.bytes

在两个方向上传输的总字节数。如果已知 source.bytesdestination.bytes,则 network.bytes 是它们的总和。

long

network.community_id

源 IP 和目标 IP、端口以及通信中使用的协议的哈希值。这是一个与工具无关的用于标识流的标准。在 https://github.com/corelight/community-id-spec 了解更多信息。

keyword

network.direction

网络流量的方向。当从基于主机的监控上下文中映射事件时,请从主机的角度使用值“ingress”或“egress”填充此字段。当从基于网络或基于边界的监控上下文中映射事件时,请从网络边界的角度使用值“inbound”、“outbound”、“internal”或“external”填充此字段。请注意,“internal”未跨越边界,旨在描述边界内两台主机之间的通信。另请注意,“external”旨在描述边界外部两台主机之间的流量。例如,这对于 ISP 或 VPN 服务提供商可能很有用。

keyword

network.forwarded_ip

当源 IP 地址为代理时的主机 IP 地址。

ip

network.protocol

在 OSI 模型中,这将是应用层协议。例如,httpdnsssh。为了进行查询,必须将字段值标准化为小写。

keyword

network.transport

与 network.iana_number 相同,但使用传输层的关键字名称(udp、tcp、ipv6-icmp 等)。为了进行查询,必须将字段值标准化为小写。

keyword

network.type

在 OSI 模型中,这将是网络层。ipv4、ipv6、ipsec、pim 等。为了进行查询,必须将字段值标准化为小写。

keyword

network_traffic.pgsql.error_code

PostgreSQL 错误代码。

keyword

network_traffic.pgsql.error_message

PostgreSQL 错误消息。

keyword

network_traffic.pgsql.error_severity

PostgreSQL 错误严重级别。

keyword

network_traffic.pgsql.method

事务的命令/动词/方法。

keyword

network_traffic.pgsql.num_fields

如果 SELECT 查询成功,则此字段设置为返回的字段数。

long

network_traffic.pgsql.num_rows

如果 SELECT 查询成功,则此字段设置为返回的行数。

long

network_traffic.pgsql.query

以人类可读格式显示的查询。

keyword

network_traffic.status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

observer.hostname

观察者的主机名。

keyword

observer.ip

观察者的 IP 地址。

ip

observer.mac

观察者的 MAC 地址。建议使用 RFC 7042 中的表示法格式:每个八位字节(即 8 位字节)由两个[大写]十六进制数字表示,给出该八位字节的值作为无符号整数。连续的八位字节用连字符分隔。

keyword

observer.name

观察者的自定义名称。这是可以赋予观察者的名称。例如,如果在组织中使用同一型号的多个防火墙,则这可能会有所帮助。如果不需要自定义名称,则该字段可以留空。

keyword

params

请求参数。对于 HTTP,这些是 POST 或 GET 参数。对于 Thrift-RPC,这些是请求中的参数。

text

path

事务引用的路径。对于 HTTP,这是 URL。对于 SQL 数据库,这是表名。对于键值存储,这是键。

keyword

pgsql.error_code

PostgreSQL 错误代码。

keyword

pgsql.error_message

PostgreSQL 错误消息。

keyword

pgsql.error_severity

PostgreSQL 错误严重级别。

keyword

pgsql.num_fields

如果 SELECT 查询成功,则此字段设置为返回的字段数。

long

pgsql.num_rows

如果 SELECT 查询成功,则此字段设置为返回的行数。

long

process.args

进程参数的数组,从可执行文件的绝对路径开始。可能会经过过滤以保护敏感信息。

keyword

process.executable

进程可执行文件的绝对路径。

keyword

process.executable.text

process.executable 的多字段。

match_only_text

process.name

进程名称。有时称为程序名称或类似名称。

keyword

process.name.text

process.name 的多字段。

match_only_text

process.start

进程启动的时间。

date

process.working_directory

进程的工作目录。

keyword

process.working_directory.text

process.working_directory 的多字段。

match_only_text

query

人类可读格式的查询。对于 HTTP,它通常类似于 GET /users/_search?name=test。对于 MySQL,它类似于 SELECT id from users where name=test

keyword

related.hosts

在您的事件中看到的所有主机名或其他主机标识符。示例标识符包括 FQDN、域名、工作站名称或别名。

keyword

related.ip

在您的事件中看到的所有 IP。

ip

request

对于文本协议,这是在网络上看到的请求(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

resource

此事务引用的逻辑资源。对于 HTTP,这是 URL 路径,直到最后一个斜杠 (/)。例如,如果 URL 是 /users/1,则资源是 /users。对于数据库,资源通常是表名。并非所有事务类型都会填充该字段。

keyword

response

对于文本协议,这是在网络上看到的响应(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

server.bytes

从服务器发送到客户端的字节数。

long

server.geo.city_name

城市名称。

keyword

server.geo.continent_name

大洲的名称。

keyword

server.geo.country_iso_code

国家/地区 ISO 代码。

keyword

server.geo.country_name

国家/地区名称。

keyword

server.geo.location

经度和纬度。

geo_point

server.geo.region_iso_code

区域 ISO 代码。

keyword

server.geo.region_name

区域名称。

keyword

server.ip

服务器的 IP 地址(IPv4 或 IPv6)。

ip

server.port

服务器的端口。

long

server.process.args

为事务提供服务的进程的命令行。

keyword

server.process.executable

服务器进程可执行文件的绝对路径。

keyword

server.process.name

为事务提供服务的进程的名称。

keyword

server.process.start

服务器进程启动的时间。

date

server.process.working_directory

服务器进程的工作目录。

keyword

source.bytes

从源发送到目标的字节数。

long

source.geo.city_name

城市名称。

keyword

source.geo.continent_name

大洲的名称。

keyword

source.geo.country_iso_code

国家/地区 ISO 代码。

keyword

source.geo.country_name

国家/地区名称。

keyword

source.geo.location

经度和纬度。

geo_point

source.geo.region_iso_code

区域 ISO 代码。

keyword

source.geo.region_name

区域名称。

keyword

source.ip

源的 IP 地址(IPv4 或 IPv6)。

ip

source.port

源的端口。

long

status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

tags

用于标记每个事件的关键字列表。

keyword

类型

事务的类型(例如,HTTP、MySQL、Redis 或 RUM),如果是流程则为 “flow”。

keyword

示例

一个关于 pgsql 的示例事件如下所示

{
    "@timestamp": "2023-10-16T23:22:18.142Z",
    "agent": {
        "ephemeral_id": "6125f32f-943d-4b83-81a2-ca5dd7152657",
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "name": "docker-fleet-agent",
        "type": "packetbeat",
        "version": "8.6.2"
    },
    "client": {
        "bytes": 34,
        "ip": "127.0.0.1",
        "port": 34936
    },
    "data_stream": {
        "dataset": "network_traffic.pgsql",
        "namespace": "ep",
        "type": "logs"
    },
    "destination": {
        "bytes": 3186,
        "ip": "127.0.0.1",
        "port": 5432
    },
    "ecs": {
        "version": "8.11.0"
    },
    "elastic_agent": {
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "snapshot": false,
        "version": "8.6.2"
    },
    "event": {
        "agent_id_status": "verified",
        "category": [
            "network"
        ],
        "dataset": "network_traffic.pgsql",
        "duration": 2454138,
        "end": "2023-10-16T23:22:18.145Z",
        "ingested": "2023-10-16T23:22:19Z",
        "kind": "event",
        "start": "2023-10-16T23:22:18.142Z",
        "type": [
            "connection",
            "protocol"
        ]
    },
    "host": {
        "architecture": "x86_64",
        "containerized": false,
        "hostname": "docker-fleet-agent",
        "id": "f91b175388d443fca5c155815dfc2279",
        "ip": [
            "172.19.0.7"
        ],
        "mac": [
            "02-42-AC-13-00-07"
        ],
        "name": "docker-fleet-agent",
        "os": {
            "codename": "focal",
            "family": "debian",
            "kernel": "5.15.49-linuxkit",
            "name": "Ubuntu",
            "platform": "ubuntu",
            "type": "linux",
            "version": "20.04.5 LTS (Focal Fossa)"
        }
    },
    "method": "SELECT",
    "network": {
        "bytes": 3220,
        "community_id": "1:WUuTzESSpZnUwZ2tuZKZtNOdHSU=",
        "direction": "ingress",
        "protocol": "pgsql",
        "transport": "tcp",
        "type": "ipv4"
    },
    "pgsql": {
        "num_fields": 3,
        "num_rows": 15
    },
    "query": "select * from long_response",
    "related": {
        "ip": [
            "127.0.0.1"
        ]
    },
    "server": {
        "bytes": 3186,
        "ip": "127.0.0.1",
        "port": 5432
    },
    "source": {
        "bytes": 34,
        "ip": "127.0.0.1",
        "port": 34936
    },
    "status": "OK",
    "type": "pgsql"
}

Redis

编辑

配置选项

另请参阅 通用协议选项

queue_max_bytesqueue_max_messages
编辑

在收到响应之前,将请求存储在内存中。这些设置限制了可以存储的字节数 (queue_max_bytes) 和请求数 (queue_max_messages)。这些限制是每个连接的。默认设置为每个连接最多排队 1MB 或 20,000 个请求,这允许使用请求流水线,同时限制复制会话消耗的内存量。

为 Redis 数据包发布的字段。

导出的字段
字段 描述 类型

@timestamp

事件时间戳。

date

client.bytes

从客户端发送到服务器的字节。

long

client.geo.city_name

城市名称。

keyword

client.geo.continent_name

大洲的名称。

keyword

client.geo.country_iso_code

国家/地区 ISO 代码。

keyword

client.geo.country_name

国家/地区名称。

keyword

client.geo.location

经度和纬度。

geo_point

client.geo.region_iso_code

区域 ISO 代码。

keyword

client.geo.region_name

区域名称。

keyword

client.ip

客户端的 IP 地址(IPv4 或 IPv6)。

ip

client.port

客户端的端口。

long

client.process.args

启动事务的进程的命令行。

keyword

client.process.executable

客户端进程可执行文件的绝对路径。

keyword

client.process.name

启动事务的进程的名称。

keyword

client.process.start

客户端进程启动的时间。

date

client.process.working_directory

客户端进程的工作目录。

keyword

cloud.account.id

用于标识多租户环境中不同实体的云帐户或组织 ID。示例:AWS 帐户 ID、Google Cloud ORG ID 或其他唯一标识符。

keyword

cloud.availability_zone

此主机运行所在的可用区。

keyword

cloud.image.id

云实例的映像 ID。

keyword

cloud.instance.id

主机计算机的实例 ID。

keyword

cloud.instance.name

主机计算机的实例名称。

keyword

cloud.machine.type

主机计算机的机器类型。

keyword

cloud.project.id

Google Cloud 中项目的名称。

keyword

cloud.provider

云提供商的名称。示例值包括 aws、azure、gcp 或 digitalocean。

keyword

cloud.region

此主机运行所在的区域。

keyword

container.id

唯一的容器 ID。

keyword

container.image.name

构建容器所基于的映像的名称。

keyword

container.labels

映像标签。

object

container.name

容器名称。

keyword

data_stream.dataset

数据流数据集。

constant_keyword

data_stream.namespace

数据流命名空间。

constant_keyword

data_stream.type

数据流类型。

constant_keyword

destination.bytes

从目标发送到源的字节。

long

destination.geo.city_name

城市名称。

keyword

destination.geo.continent_name

大洲的名称。

keyword

destination.geo.country_iso_code

国家/地区 ISO 代码。

keyword

destination.geo.country_name

国家/地区名称。

keyword

destination.geo.location

经度和纬度。

geo_point

destination.geo.region_iso_code

区域 ISO 代码。

keyword

destination.geo.region_name

区域名称。

keyword

destination.ip

目标的 IP 地址(IPv4 或 IPv6)。

ip

destination.port

目标的端口。

long

ecs.version

此事件符合的 ECS 版本。ecs.version 是必填字段,并且必须存在于所有事件中。在查询可能符合略有不同的 ECS 版本的多个索引时,此字段允许集成调整到事件的架构版本。

keyword

event.action

事件捕获的操作。这描述了事件中的信息。它比 event.category 更具体。示例包括 group-addprocess-startedfile-created。该值通常由实施者定义。

keyword

event.category

这是四个 ECS 分类字段之一,表示 ECS 类别层次结构中的第二级。event.category 表示 ECS 类别的“大类”。例如,筛选 event.category:process 会生成与进程活动相关的所有事件。此字段与用作子类别的 event.type 密切相关。此字段是一个数组。这将允许正确分类属于多个类别的某些事件。

keyword

event.dataset

数据集的名称。如果某个事件源发布多种类型的日志或事件(例如,访问日志、错误日志),则数据集用于指定该事件的来源。建议但不是必须以模块名称开头命名数据集名称,后跟一个点,然后是数据集名称。

keyword

event.duration

事件的持续时间,以纳秒为单位。如果知道 event.startevent.end,则此值应为结束时间和开始时间之间的差值。

long

event.end

event.end 包含事件结束或上次观察到活动时的日期。

date

event.kind

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的最高级别。event.kind 提供关于事件包含的信息类型的高级信息,而无需具体到事件的内容。例如,此字段的值区分警报事件和指标事件。此字段的值可用于通知应如何处理这些类型的事件。它们可能需要不同的保留策略、不同的访问控制,它还有助于了解数据是否以固定间隔传入。

keyword

event.module

此数据来自的模块的名称。如果您的监控代理支持使用模块或插件来处理给定来源的事件(例如,Apache 日志),则 event.module 应包含此模块的名称。

constant_keyword

event.outcome

这是四个 ECS 分类字段之一,指示 ECS 类别层次结构中的最低级别。event.outcome 只是表示从产生事件的实体的角度来看,事件是成功还是失败。请注意,当单个事务在多个事件中描述时,根据其角度,每个事件可能会填充不同的 event.outcome 值。另请注意,在复合事件(包含多个逻辑事件的单个事件)的情况下,此字段应填充最能捕获事件生产者角度的整体成功或失败的值。此外请注意,并非所有事件都将具有关联的结果。例如,此字段通常不会为指标事件、具有 event.type:info 的事件或任何结果不符合逻辑的事件填充。

keyword

event.start

event.start 包含事件开始的时间或首次观察到活动的时间。

date

event.type

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的第三级。event.type 表示一个分类“子桶”,当与 event.category 字段值一起使用时,可以将事件过滤到适合单个可视化的级别。此字段是一个数组。这将允许对属于多个事件类型的某些事件进行适当的分类。

keyword

flow.final

指示事件是否是流中的最后一个事件。如果 final 为 false,则该事件仅报告中间流状态。

boolean

flow.id

基于连接元数据和地址的内部流 ID。

keyword

flow.vlan

来自 802.1q 帧的 VLAN 标识符。如果存在多标记帧,则此字段将是一个数组,其中外部标记的 VLAN 标识符首先列出。

long

host.architecture

操作系统架构。

keyword

host.containerized

主机是否为容器。

boolean

host.domain

主机所属的域名。例如,在 Windows 上,这可以是主机的 Active Directory 域或 NetBIOS 域名。对于 Linux,这可以是主机 LDAP 提供程序的域。

keyword

host.hostname

主机的 hostname。它通常包含主机上的 hostname 命令返回的内容。

keyword

host.id

唯一的主机 ID。由于 hostname 并不总是唯一的,请使用在您的环境中具有意义的值。例如:当前 beat.name 的用法。

keyword

host.ip

主机 IP 地址。

ip

host.mac

主机 MAC 地址。

keyword

host.name

主机的名称。它可以包含 Unix 系统上 hostname 返回的内容、完全限定域名或用户指定的名称。发送者决定使用哪个值。

keyword

host.os.build

操作系统构建信息。

keyword

host.os.codename

操作系统代码名(如果有)。

keyword

host.os.family

操作系统系列(如 redhat、debian、freebsd、windows)。

keyword

host.os.kernel

操作系统内核版本,以原始字符串形式表示。

keyword

host.os.name

操作系统名称,不带版本。

keyword

host.os.name.text

host.os.name 的多字段。

text

host.os.platform

操作系统平台(如 centos、ubuntu、windows)。

keyword

host.os.version

操作系统版本,以原始字符串形式表示。

keyword

host.type

主机类型。对于云提供商,这可以是诸如 t2.medium 之类的机器类型。如果为虚拟机,则可以是容器,或其他在您的环境中具有意义的信息。

keyword

method

事务的命令/动词/方法。对于 HTTP,这是方法名称(GET、POST、PUT 等);对于 SQL,这是动词(SELECT、UPDATE、DELETE 等)。

keyword

network.bytes

在两个方向上传输的总字节数。如果已知 source.bytesdestination.bytes,则 network.bytes 是它们的总和。

long

network.community_id

源 IP 和目标 IP、端口以及通信中使用的协议的哈希值。这是一个与工具无关的用于标识流的标准。在 https://github.com/corelight/community-id-spec 了解更多信息。

keyword

network.direction

网络流量的方向。当从基于主机的监控上下文中映射事件时,请从主机的角度使用值“ingress”或“egress”填充此字段。当从基于网络或基于边界的监控上下文中映射事件时,请从网络边界的角度使用值“inbound”、“outbound”、“internal”或“external”填充此字段。请注意,“internal”未跨越边界,旨在描述边界内两台主机之间的通信。另请注意,“external”旨在描述边界外部两台主机之间的流量。例如,这对于 ISP 或 VPN 服务提供商可能很有用。

keyword

network.forwarded_ip

当源 IP 地址为代理时的主机 IP 地址。

ip

network.protocol

在 OSI 模型中,这将是应用层协议。例如,httpdnsssh。为了进行查询,必须将字段值标准化为小写。

keyword

network.transport

与 network.iana_number 相同,但使用传输层的关键字名称(udp、tcp、ipv6-icmp 等)。为了进行查询,必须将字段值标准化为小写。

keyword

network.type

在 OSI 模型中,这将是网络层。ipv4、ipv6、ipsec、pim 等。为了进行查询,必须将字段值标准化为小写。

keyword

network_traffic.redis.error

如果 Redis 命令导致错误,则此字段包含 Redis 服务器返回的错误消息。

keyword

network_traffic.redis.method

事务的命令/动词/方法。

keyword

network_traffic.redis.query

以人类可读格式显示的查询。

keyword

network_traffic.redis.return_value

Redis 命令的返回值,采用人类可读的格式。

keyword

network_traffic.status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

observer.hostname

观察者的主机名。

keyword

observer.ip

观察者的 IP 地址。

ip

observer.mac

观察者的 MAC 地址。建议使用 RFC 7042 中的表示法格式:每个八位字节(即 8 位字节)由两个[大写]十六进制数字表示,给出该八位字节的值作为无符号整数。连续的八位字节用连字符分隔。

keyword

observer.name

观察者的自定义名称。这是可以赋予观察者的名称。例如,如果在组织中使用同一型号的多个防火墙,则这可能会有所帮助。如果不需要自定义名称,则该字段可以留空。

keyword

params

请求参数。对于 HTTP,这些是 POST 或 GET 参数。对于 Thrift-RPC,这些是请求中的参数。

text

path

事务引用的路径。对于 HTTP,这是 URL。对于 SQL 数据库,这是表名。对于键值存储,这是键。

keyword

process.args

进程参数的数组,从可执行文件的绝对路径开始。可能会经过过滤以保护敏感信息。

keyword

process.executable

进程可执行文件的绝对路径。

keyword

process.executable.text

process.executable 的多字段。

match_only_text

process.name

进程名称。有时称为程序名称或类似名称。

keyword

process.name.text

process.name 的多字段。

match_only_text

process.start

进程启动的时间。

date

process.working_directory

进程的工作目录。

keyword

process.working_directory.text

process.working_directory 的多字段。

match_only_text

query

人类可读格式的查询。对于 HTTP,它通常类似于 GET /users/_search?name=test。对于 MySQL,它类似于 SELECT id from users where name=test

keyword

redis.error

如果 Redis 命令导致错误,则此字段包含 Redis 服务器返回的错误消息。

keyword

redis.return_value

Redis 命令的返回值,采用人类可读的格式。

keyword

related.hosts

在您的事件中看到的所有主机名或其他主机标识符。示例标识符包括 FQDN、域名、工作站名称或别名。

keyword

related.ip

在您的事件中看到的所有 IP。

ip

request

对于文本协议,这是在网络上看到的请求(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

resource

此事务引用的逻辑资源。对于 HTTP,这是 URL 路径,直到最后一个斜杠 (/)。例如,如果 URL 是 /users/1,则资源是 /users。对于数据库,资源通常是表名。并非所有事务类型都会填充该字段。

keyword

response

对于文本协议,这是在网络上看到的响应(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

server.bytes

从服务器发送到客户端的字节数。

long

server.geo.city_name

城市名称。

keyword

server.geo.continent_name

大洲的名称。

keyword

server.geo.country_iso_code

国家/地区 ISO 代码。

keyword

server.geo.country_name

国家/地区名称。

keyword

server.geo.location

经度和纬度。

geo_point

server.geo.region_iso_code

区域 ISO 代码。

keyword

server.geo.region_name

区域名称。

keyword

server.ip

服务器的 IP 地址(IPv4 或 IPv6)。

ip

server.port

服务器的端口。

long

server.process.args

为事务提供服务的进程的命令行。

keyword

server.process.executable

服务器进程可执行文件的绝对路径。

keyword

server.process.name

为事务提供服务的进程的名称。

keyword

server.process.start

服务器进程启动的时间。

date

server.process.working_directory

服务器进程的工作目录。

keyword

source.bytes

从源发送到目标的字节数。

long

source.geo.city_name

城市名称。

keyword

source.geo.continent_name

大洲的名称。

keyword

source.geo.country_iso_code

国家/地区 ISO 代码。

keyword

source.geo.country_name

国家/地区名称。

keyword

source.geo.location

经度和纬度。

geo_point

source.geo.region_iso_code

区域 ISO 代码。

keyword

source.geo.region_name

区域名称。

keyword

source.ip

源的 IP 地址(IPv4 或 IPv6)。

ip

source.port

源的端口。

long

status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

tags

用于标记每个事件的关键字列表。

keyword

类型

事务的类型(例如,HTTP、MySQL、Redis 或 RUM),如果是流程则为 “flow”。

keyword

示例

一个关于 redis 的示例事件如下所示

{
    "@timestamp": "2023-10-16T23:23:39.505Z",
    "agent": {
        "ephemeral_id": "187d82c4-b575-4dba-83bf-4950cb7435d9",
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "name": "docker-fleet-agent",
        "type": "packetbeat",
        "version": "8.6.2"
    },
    "client": {
        "bytes": 31,
        "ip": "127.0.0.1",
        "port": 32810
    },
    "data_stream": {
        "dataset": "network_traffic.redis",
        "namespace": "ep",
        "type": "logs"
    },
    "destination": {
        "bytes": 5,
        "ip": "127.0.0.1",
        "port": 6380
    },
    "ecs": {
        "version": "8.11.0"
    },
    "elastic_agent": {
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "snapshot": false,
        "version": "8.6.2"
    },
    "event": {
        "action": "redis.set",
        "agent_id_status": "verified",
        "category": [
            "network"
        ],
        "dataset": "network_traffic.redis",
        "duration": 1300522,
        "end": "2023-10-16T23:23:39.506Z",
        "ingested": "2023-10-16T23:23:43Z",
        "kind": "event",
        "start": "2023-10-16T23:23:39.505Z",
        "type": [
            "connection",
            "protocol"
        ]
    },
    "host": {
        "architecture": "x86_64",
        "containerized": false,
        "hostname": "docker-fleet-agent",
        "id": "f91b175388d443fca5c155815dfc2279",
        "ip": [
            "172.19.0.7"
        ],
        "mac": [
            "02-42-AC-13-00-07"
        ],
        "name": "docker-fleet-agent",
        "os": {
            "codename": "focal",
            "family": "debian",
            "kernel": "5.15.49-linuxkit",
            "name": "Ubuntu",
            "platform": "ubuntu",
            "type": "linux",
            "version": "20.04.5 LTS (Focal Fossa)"
        }
    },
    "method": "SET",
    "network": {
        "bytes": 36,
        "community_id": "1:GuHlyWpX6bKkMXy19YkvZSNPTS4=",
        "direction": "ingress",
        "protocol": "redis",
        "transport": "tcp",
        "type": "ipv4"
    },
    "query": "set key3 me",
    "redis": {
        "return_value": "OK"
    },
    "related": {
        "ip": [
            "127.0.0.1"
        ]
    },
    "resource": "key3",
    "server": {
        "bytes": 5,
        "ip": "127.0.0.1",
        "port": 6380
    },
    "source": {
        "bytes": 31,
        "ip": "127.0.0.1",
        "port": 32810
    },
    "status": "OK",
    "type": "redis"
}

配置选项

另请参阅 通用协议选项

parse_authorization
编辑

如果设置为 true,则网络数据包捕获将解析授权标头,并将其包含在事件中。默认值为 true。

parse_body
编辑

如果设置为 true,则当 SIP 主体包含会话描述协议数据时,网络数据包捕获会解析 SIP 主体。默认值为 true。

为 SIP 数据包发布的字段。

导出的字段
字段 描述 类型

@timestamp

事件时间戳。

date

client.bytes

从客户端发送到服务器的字节。

long

client.geo.city_name

城市名称。

keyword

client.geo.continent_name

大洲的名称。

keyword

client.geo.country_iso_code

国家/地区 ISO 代码。

keyword

client.geo.country_name

国家/地区名称。

keyword

client.geo.location

经度和纬度。

geo_point

client.geo.region_iso_code

区域 ISO 代码。

keyword

client.geo.region_name

区域名称。

keyword

client.ip

客户端的 IP 地址(IPv4 或 IPv6)。

ip

client.port

客户端的端口。

long

client.process.args

启动事务的进程的命令行。

keyword

client.process.executable

客户端进程可执行文件的绝对路径。

keyword

client.process.name

启动事务的进程的名称。

keyword

client.process.start

客户端进程启动的时间。

date

client.process.working_directory

客户端进程的工作目录。

keyword

cloud.account.id

用于标识多租户环境中不同实体的云帐户或组织 ID。示例:AWS 帐户 ID、Google Cloud ORG ID 或其他唯一标识符。

keyword

cloud.availability_zone

此主机运行所在的可用区。

keyword

cloud.image.id

云实例的映像 ID。

keyword

cloud.instance.id

主机计算机的实例 ID。

keyword

cloud.instance.name

主机计算机的实例名称。

keyword

cloud.machine.type

主机计算机的机器类型。

keyword

cloud.project.id

Google Cloud 中项目的名称。

keyword

cloud.provider

云提供商的名称。示例值包括 aws、azure、gcp 或 digitalocean。

keyword

cloud.region

此主机运行所在的区域。

keyword

container.id

唯一的容器 ID。

keyword

container.image.name

构建容器所基于的映像的名称。

keyword

container.labels

映像标签。

object

container.name

容器名称。

keyword

data_stream.dataset

数据流数据集。

constant_keyword

data_stream.namespace

数据流命名空间。

constant_keyword

data_stream.type

数据流类型。

constant_keyword

destination.bytes

从目标发送到源的字节。

long

destination.geo.city_name

城市名称。

keyword

destination.geo.continent_name

大洲的名称。

keyword

destination.geo.country_iso_code

国家/地区 ISO 代码。

keyword

destination.geo.country_name

国家/地区名称。

keyword

destination.geo.location

经度和纬度。

geo_point

destination.geo.region_iso_code

区域 ISO 代码。

keyword

destination.geo.region_name

区域名称。

keyword

destination.ip

目标的 IP 地址(IPv4 或 IPv6)。

ip

destination.port

目标的端口。

long

ecs.version

此事件符合的 ECS 版本。ecs.version 是必填字段,并且必须存在于所有事件中。在查询可能符合略有不同的 ECS 版本的多个索引时,此字段允许集成调整到事件的架构版本。

keyword

event.action

事件捕获的操作。这描述了事件中的信息。它比 event.category 更具体。示例包括 group-addprocess-startedfile-created。该值通常由实施者定义。

keyword

event.category

这是四个 ECS 分类字段之一,表示 ECS 类别层次结构中的第二级。event.category 表示 ECS 类别的“大类”。例如,筛选 event.category:process 会生成与进程活动相关的所有事件。此字段与用作子类别的 event.type 密切相关。此字段是一个数组。这将允许正确分类属于多个类别的某些事件。

keyword

event.dataset

数据集的名称。如果某个事件源发布多种类型的日志或事件(例如,访问日志、错误日志),则数据集用于指定该事件的来源。建议但不是必须以模块名称开头命名数据集名称,后跟一个点,然后是数据集名称。

keyword

event.duration

事件的持续时间,以纳秒为单位。如果知道 event.startevent.end,则此值应为结束时间和开始时间之间的差值。

long

event.end

event.end 包含事件结束或上次观察到活动时的日期。

date

event.kind

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的最高级别。event.kind 提供关于事件包含的信息类型的高级信息,而无需具体到事件的内容。例如,此字段的值区分警报事件和指标事件。此字段的值可用于通知应如何处理这些类型的事件。它们可能需要不同的保留策略、不同的访问控制,它还有助于了解数据是否以固定间隔传入。

keyword

event.module

此数据来自的模块的名称。如果您的监控代理支持使用模块或插件来处理给定来源的事件(例如,Apache 日志),则 event.module 应包含此模块的名称。

constant_keyword

event.original

整个事件的原始文本消息。用于演示日志完整性,或者在可能需要完整日志消息(在将其拆分为多个部分之前)时使用,例如,用于重新索引。此字段未编入索引,并且 doc_values 已禁用。它不能被搜索,但可以从 _source 中检索。如果用户希望覆盖此设置并索引此字段,请参阅 Elasticsearch 参考中的 字段数据类型

keyword

event.outcome

这是四个 ECS 分类字段之一,指示 ECS 类别层次结构中的最低级别。event.outcome 只是表示从产生事件的实体的角度来看,事件是成功还是失败。请注意,当单个事务在多个事件中描述时,根据其角度,每个事件可能会填充不同的 event.outcome 值。另请注意,在复合事件(包含多个逻辑事件的单个事件)的情况下,此字段应填充最能捕获事件生产者角度的整体成功或失败的值。此外请注意,并非所有事件都将具有关联的结果。例如,此字段通常不会为指标事件、具有 event.type:info 的事件或任何结果不符合逻辑的事件填充。

keyword

event.reason

根据来源,此事件发生的原因。这描述了事件中捕获的特定操作或结果的原因。其中 event.action 捕获了事件的操作,event.reason 描述了采取该操作的原因。例如,具有 event.action 拒绝请求的 Web 代理也可能会使用原因(例如 blocked site)填充 event.reason

keyword

event.sequence

事件的序列号。序列号是某些事件源发布的值,用于使事件的确切顺序明确,而与时间戳精度无关。

long

event.start

event.start 包含事件开始的时间或首次观察到活动的时间。

date

event.type

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的第三级。event.type 表示一个分类“子桶”,当与 event.category 字段值一起使用时,可以将事件过滤到适合单个可视化的级别。此字段是一个数组。这将允许对属于多个事件类型的某些事件进行适当的分类。

keyword

flow.final

指示事件是否是流中的最后一个事件。如果 final 为 false,则该事件仅报告中间流状态。

boolean

flow.id

基于连接元数据和地址的内部流 ID。

keyword

flow.vlan

来自 802.1q 帧的 VLAN 标识符。如果存在多标记帧,则此字段将是一个数组,其中外部标记的 VLAN 标识符首先列出。

long

host.architecture

操作系统架构。

keyword

host.containerized

主机是否为容器。

boolean

host.domain

主机所属的域名。例如,在 Windows 上,这可以是主机的 Active Directory 域或 NetBIOS 域名。对于 Linux,这可以是主机 LDAP 提供程序的域。

keyword

host.hostname

主机的 hostname。它通常包含主机上的 hostname 命令返回的内容。

keyword

host.id

唯一的主机 ID。由于 hostname 并不总是唯一的,请使用在您的环境中具有意义的值。例如:当前 beat.name 的用法。

keyword

host.ip

主机 IP 地址。

ip

host.mac

主机 MAC 地址。

keyword

host.name

主机的名称。它可以包含 Unix 系统上 hostname 返回的内容、完全限定域名或用户指定的名称。发送者决定使用哪个值。

keyword

host.os.build

操作系统构建信息。

keyword

host.os.codename

操作系统代码名(如果有)。

keyword

host.os.family

操作系统系列(如 redhat、debian、freebsd、windows)。

keyword

host.os.kernel

操作系统内核版本,以原始字符串形式表示。

keyword

host.os.name

操作系统名称,不带版本。

keyword

host.os.name.text

host.os.name 的多字段。

text

host.os.platform

操作系统平台(如 centos、ubuntu、windows)。

keyword

host.os.version

操作系统版本,以原始字符串形式表示。

keyword

host.type

主机类型。对于云提供商,这可以是诸如 t2.medium 之类的机器类型。如果为虚拟机,则可以是容器,或其他在您的环境中具有意义的信息。

keyword

method

事务的命令/动词/方法。对于 HTTP,这是方法名称(GET、POST、PUT 等);对于 SQL,这是动词(SELECT、UPDATE、DELETE 等)。

keyword

network.application

当从网络连接详细信息(源/目标 IP、端口、证书或线路格式)中识别出特定的应用程序或服务时,此字段捕获应用程序或服务的名称。例如,原始事件标识网络连接来自 https 网络连接中的特定 Web 服务,例如 facebooktwitter。字段值必须规范化为小写以进行查询。

keyword

network.bytes

在两个方向上传输的总字节数。如果已知 source.bytesdestination.bytes,则 network.bytes 是它们的总和。

long

network.community_id

源 IP 和目标 IP、端口以及通信中使用的协议的哈希值。这是一个与工具无关的用于标识流的标准。在 https://github.com/corelight/community-id-spec 了解更多信息。

keyword

network.direction

网络流量的方向。当从基于主机的监控上下文中映射事件时,请从主机的角度使用值“ingress”或“egress”填充此字段。当从基于网络或基于边界的监控上下文中映射事件时,请从网络边界的角度使用值“inbound”、“outbound”、“internal”或“external”填充此字段。请注意,“internal”未跨越边界,旨在描述边界内两台主机之间的通信。另请注意,“external”旨在描述边界外部两台主机之间的流量。例如,这对于 ISP 或 VPN 服务提供商可能很有用。

keyword

network.forwarded_ip

当源 IP 地址为代理时的主机 IP 地址。

ip

network.iana_number

IANA 协议号 (https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml)。协议的标准化列表。这与使用 IANA 协议号的 NetFlow 和 sFlow 相关日志非常一致。

keyword

network.protocol

在 OSI 模型中,这将是应用层协议。例如,httpdnsssh。为了进行查询,必须将字段值标准化为小写。

keyword

network.transport

与 network.iana_number 相同,但使用传输层的关键字名称(udp、tcp、ipv6-icmp 等)。为了进行查询,必须将字段值标准化为小写。

keyword

network.type

在 OSI 模型中,这将是网络层。ipv4、ipv6、ipsec、pim 等。为了进行查询,必须将字段值标准化为小写。

keyword

network_traffic.sip.accept

Accept 标头值。

keyword

network_traffic.sip.allow

允许的方法。

keyword

network_traffic.sip.auth.realm

身份验证领域

keyword

network_traffic.sip.auth.scheme

身份验证方案

keyword

network_traffic.sip.auth.uri.host

身份验证 URI 主机

keyword

network_traffic.sip.auth.uri.original

原始身份验证 URI

keyword

network_traffic.sip.auth.uri.original.text

network_traffic.sip.auth.uri.original 的多字段。

text

network_traffic.sip.auth.uri.port

身份验证 URI 端口

long

network_traffic.sip.auth.uri.scheme

身份验证 URI 方案

keyword

network_traffic.sip.call_id

呼叫 ID。

keyword

network_traffic.sip.code

响应状态代码。

long

network_traffic.sip.contact.display_info

联系人显示信息

keyword

network_traffic.sip.contact.expires

联系人过期时间

keyword

network_traffic.sip.contact.line

联系人行

keyword

network_traffic.sip.contact.q

联系人 Q

keyword

network_traffic.sip.contact.transport

联系人传输

keyword

network_traffic.sip.contact.uri.host

联系人 URI 主机

keyword

network_traffic.sip.contact.uri.original

原始联系人 URI

keyword

network_traffic.sip.contact.uri.original.text

network_traffic.sip.contact.uri.original 的多字段。

text

network_traffic.sip.contact.uri.port

联系人 URI 端口

long

network_traffic.sip.contact.uri.scheme

联系人 URI 方案

keyword

network_traffic.sip.contact.uri.username

联系人 URI 用户名

keyword

network_traffic.sip.content_length

long

network_traffic.sip.content_type

keyword

network_traffic.sip.cseq.code

序列代码。

long

network_traffic.sip.cseq.method

序列方法。

keyword

network_traffic.sip.from.display_info

发件人显示信息

keyword

network_traffic.sip.from.tag

发件人标签

keyword

network_traffic.sip.from.uri.host

发件人 URI 主机

keyword

network_traffic.sip.from.uri.original

原始发件人 URI

keyword

network_traffic.sip.from.uri.original.text

network_traffic.sip.from.uri.original 的多字段。

text

network_traffic.sip.from.uri.port

发件人 URI 端口

long

network_traffic.sip.from.uri.scheme

发件人 URI 方案

keyword

network_traffic.sip.from.uri.username

发件人 URI 用户名

keyword

network_traffic.sip.max_forwards

long

network_traffic.sip.method

请求方法。

keyword

network_traffic.sip.private.uri.host

私有 URI 主机。

keyword

network_traffic.sip.private.uri.original

原始私有 URI。

keyword

network_traffic.sip.private.uri.original.text

network_traffic.sip.private.uri.original 的多字段。

text

network_traffic.sip.private.uri.port

私有 URI 端口。

long

network_traffic.sip.private.uri.scheme

私有 URI 方案。

keyword

network_traffic.sip.private.uri.username

私有 URI 用户名。

keyword

network_traffic.sip.sdp.body.original

原始 SDP 主体

keyword

network_traffic.sip.sdp.body.original.text

network_traffic.sip.sdp.body.original 的多字段。

text

network_traffic.sip.sdp.connection.address

SDP 连接地址

keyword

network_traffic.sip.sdp.connection.info

SDP 连接信息

keyword

network_traffic.sip.sdp.owner.ip

SDP 所有者 IP

ip

network_traffic.sip.sdp.owner.session_id

SDP 所有者会话 ID

keyword

network_traffic.sip.sdp.owner.username

SDP 所有者用户名

keyword

network_traffic.sip.sdp.owner.version

SDP 所有者版本

keyword

network_traffic.sip.sdp.session.name

SDP 会话名称

keyword

network_traffic.sip.sdp.version

SDP 版本

keyword

network_traffic.sip.status

响应状态短语。

keyword

network_traffic.sip.supported

支持的方法。

keyword

network_traffic.sip.to.display_info

收件人显示信息

keyword

network_traffic.sip.to.tag

收件人标签

keyword

network_traffic.sip.to.uri.host

收件人 URI 主机

keyword

network_traffic.sip.to.uri.original

原始收件人 URI

keyword

network_traffic.sip.to.uri.original.text

network_traffic.sip.to.uri.original 的多字段。

text

network_traffic.sip.to.uri.port

收件人 URI 端口

long

network_traffic.sip.to.uri.scheme

收件人 URI 方案

keyword

network_traffic.sip.to.uri.username

收件人 URI 用户名

keyword

network_traffic.sip.type

请求或响应。

keyword

network_traffic.sip.uri.host

URI 主机。

keyword

network_traffic.sip.uri.original

原始 URI。

keyword

network_traffic.sip.uri.original.text

network_traffic.sip.uri.original 的多字段。

text

network_traffic.sip.uri.port

URI 端口。

long

network_traffic.sip.uri.scheme

URI 方案。

keyword

network_traffic.sip.uri.username

URI 用户名。

keyword

network_traffic.sip.user_agent.original

keyword

network_traffic.sip.user_agent.original.text

network_traffic.sip.user_agent.original 的多字段。

text

network_traffic.sip.version

SIP 协议版本。

keyword

network_traffic.sip.via.original

原始 Via 值。

keyword

network_traffic.sip.via.original.text

network_traffic.sip.via.original 的多字段。

text

network_traffic.status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

observer.hostname

观察者的主机名。

keyword

observer.ip

观察者的 IP 地址。

ip

observer.mac

观察者的 MAC 地址。建议使用 RFC 7042 中的表示法格式:每个八位字节(即 8 位字节)由两个[大写]十六进制数字表示,给出该八位字节的值作为无符号整数。连续的八位字节用连字符分隔。

keyword

observer.name

观察者的自定义名称。这是可以赋予观察者的名称。例如,如果在组织中使用同一型号的多个防火墙,则这可能会有所帮助。如果不需要自定义名称,则该字段可以留空。

keyword

params

请求参数。对于 HTTP,这些是 POST 或 GET 参数。对于 Thrift-RPC,这些是请求中的参数。

text

path

事务引用的路径。对于 HTTP,这是 URL。对于 SQL 数据库,这是表名。对于键值存储,这是键。

keyword

process.args

进程参数的数组,从可执行文件的绝对路径开始。可能会经过过滤以保护敏感信息。

keyword

process.executable

进程可执行文件的绝对路径。

keyword

process.executable.text

process.executable 的多字段。

match_only_text

process.name

进程名称。有时称为程序名称或类似名称。

keyword

process.name.text

process.name 的多字段。

match_only_text

process.start

进程启动的时间。

date

process.working_directory

进程的工作目录。

keyword

process.working_directory.text

process.working_directory 的多字段。

match_only_text

query

人类可读格式的查询。对于 HTTP,它通常类似于 GET /users/_search?name=test。对于 MySQL,它类似于 SELECT id from users where name=test

keyword

related.hosts

在您的事件中看到的所有主机名或其他主机标识符。示例标识符包括 FQDN、域名、工作站名称或别名。

keyword

related.ip

在您的事件中看到的所有 IP。

ip

related.user

事件中看到的所有用户名或其他用户标识符。

keyword

request

对于文本协议,这是在网络上看到的请求(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

resource

此事务引用的逻辑资源。对于 HTTP,这是 URL 路径,直到最后一个斜杠 (/)。例如,如果 URL 是 /users/1,则资源是 /users。对于数据库,资源通常是表名。并非所有事务类型都会填充该字段。

keyword

response

对于文本协议,这是在网络上看到的响应(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

server.bytes

从服务器发送到客户端的字节数。

long

server.geo.city_name

城市名称。

keyword

server.geo.continent_name

大洲的名称。

keyword

server.geo.country_iso_code

国家/地区 ISO 代码。

keyword

server.geo.country_name

国家/地区名称。

keyword

server.geo.location

经度和纬度。

geo_point

server.geo.region_iso_code

区域 ISO 代码。

keyword

server.geo.region_name

区域名称。

keyword

server.ip

服务器的 IP 地址(IPv4 或 IPv6)。

ip

server.port

服务器的端口。

long

server.process.args

为事务提供服务的进程的命令行。

keyword

server.process.executable

服务器进程可执行文件的绝对路径。

keyword

server.process.name

为事务提供服务的进程的名称。

keyword

server.process.start

服务器进程启动的时间。

date

server.process.working_directory

服务器进程的工作目录。

keyword

sip.accept

Accept 标头值。

keyword

sip.allow

允许的方法。

keyword

sip.auth.realm

身份验证领域

keyword

sip.auth.scheme

身份验证方案

keyword

sip.auth.uri.host

身份验证 URI 主机

keyword

sip.auth.uri.original

原始身份验证 URI

keyword

sip.auth.uri.original.text

sip.auth.uri.original 的多字段。

text

sip.auth.uri.port

身份验证 URI 端口

long

sip.auth.uri.scheme

身份验证 URI 方案

keyword

sip.call_id

呼叫 ID。

keyword

sip.code

响应状态代码。

long

sip.contact.display_info

联系人显示信息

keyword

sip.contact.expires

联系人过期时间

keyword

sip.contact.line

联系人行

keyword

sip.contact.q

联系人 Q

keyword

sip.contact.transport

联系人传输

keyword

sip.contact.uri.host

联系人 URI 主机

keyword

sip.contact.uri.original

原始联系人 URI

keyword

sip.contact.uri.original.text

sip.contact.uri.original 的多字段。

text

sip.contact.uri.port

联系人 URI 端口

long

sip.contact.uri.scheme

联系人 URI 方案

keyword

sip.contact.uri.username

联系人 URI 用户名

keyword

sip.content_length

long

sip.content_type

keyword

sip.cseq.code

序列代码。

long

sip.cseq.method

序列方法。

keyword

sip.from.display_info

发件人显示信息

keyword

sip.from.tag

发件人标签

keyword

sip.from.uri.host

发件人 URI 主机

keyword

sip.from.uri.original

原始发件人 URI

keyword

sip.from.uri.original.text

sip.from.uri.original 的多字段。

text

sip.from.uri.port

发件人 URI 端口

long

sip.from.uri.scheme

发件人 URI 方案

keyword

sip.from.uri.username

发件人 URI 用户名

keyword

sip.max_forwards

long

sip.method

请求方法。

keyword

sip.private.uri.host

私有 URI 主机。

keyword

sip.private.uri.original

原始私有 URI。

keyword

sip.private.uri.original.text

sip.private.uri.original 的多字段。

text

sip.private.uri.port

私有 URI 端口。

long

sip.private.uri.scheme

私有 URI 方案。

keyword

sip.private.uri.username

私有 URI 用户名。

keyword

sip.sdp.body.original

原始 SDP 主体

keyword

sip.sdp.body.original.text

sip.sdp.body.original 的多字段。

text

sip.sdp.connection.address

SDP 连接地址

keyword

sip.sdp.connection.info

SDP 连接信息

keyword

sip.sdp.owner.ip

SDP 所有者 IP

ip

sip.sdp.owner.session_id

SDP 所有者会话 ID

keyword

sip.sdp.owner.username

SDP 所有者用户名

keyword

sip.sdp.owner.version

SDP 所有者版本

keyword

sip.sdp.session.name

SDP 会话名称

keyword

sip.sdp.version

SDP 版本

keyword

sip.status

响应状态短语。

keyword

sip.supported

支持的方法。

keyword

sip.to.display_info

收件人显示信息

keyword

sip.to.tag

收件人标签

keyword

sip.to.uri.host

收件人 URI 主机

keyword

sip.to.uri.original

原始收件人 URI

keyword

sip.to.uri.original.text

sip.to.uri.original 的多字段。

text

sip.to.uri.port

收件人 URI 端口

long

sip.to.uri.scheme

收件人 URI 方案

keyword

sip.to.uri.username

收件人 URI 用户名

keyword

sip.type

请求或响应。

keyword

sip.uri.host

URI 主机。

keyword

sip.uri.original

原始 URI。

keyword

sip.uri.original.text

sip.uri.original 的多字段。

text

sip.uri.port

URI 端口。

long

sip.uri.scheme

URI 方案。

keyword

sip.uri.username

URI 用户名。

keyword

sip.user_agent.original

keyword

sip.user_agent.original.text

sip.user_agent.original 的多字段。

text

sip.version

SIP 协议版本。

keyword

sip.via.original

原始 Via 值。

keyword

sip.via.original.text

sip.via.original 的多字段。

text

source.bytes

从源发送到目标的字节数。

long

source.geo.city_name

城市名称。

keyword

source.geo.continent_name

大洲的名称。

keyword

source.geo.country_iso_code

国家/地区 ISO 代码。

keyword

source.geo.country_name

国家/地区名称。

keyword

source.geo.location

经度和纬度。

geo_point

source.geo.region_iso_code

区域 ISO 代码。

keyword

source.geo.region_name

区域名称。

keyword

source.ip

源的 IP 地址(IPv4 或 IPv6)。

ip

source.port

源的端口。

long

status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

tags

用于标记每个事件的关键字列表。

keyword

类型

事务的类型(例如,HTTP、MySQL、Redis 或 RUM),如果是流程则为 “flow”。

keyword

user.name

用户的简称或登录名。

keyword

user.name.text

user.name 的多字段。

match_only_text

示例

一个 sip 的示例事件如下所示

{
    "@timestamp": "2023-11-13T21:54:31.038Z",
    "agent": {
        "ephemeral_id": "7f204077-dee0-4442-b500-1b2f6d84d15a",
        "id": "4f93724a-6328-4803-8108-b682e5d62ad4",
        "name": "docker-fleet-agent",
        "type": "packetbeat",
        "version": "8.6.2"
    },
    "client": {
        "ip": "10.0.2.20",
        "port": 5060
    },
    "data_stream": {
        "dataset": "network_traffic.sip",
        "namespace": "ep",
        "type": "logs"
    },
    "destination": {
        "ip": "10.0.2.15",
        "port": 5060
    },
    "ecs": {
        "version": "8.11.0"
    },
    "elastic_agent": {
        "id": "4f93724a-6328-4803-8108-b682e5d62ad4",
        "snapshot": false,
        "version": "8.6.2"
    },
    "event": {
        "action": "sip-invite",
        "agent_id_status": "verified",
        "category": [
            "network"
        ],
        "dataset": "network_traffic.sip",
        "duration": 0,
        "end": "2023-11-13T21:54:31.038Z",
        "ingested": "2023-11-13T21:54:32Z",
        "kind": "event",
        "original": "INVITE sip:[email protected]:5060 SIP/2.0\r\nVia: SIP/2.0/UDP 10.0.2.20:5060;branch=z9hG4bK-2187-1-0\r\nFrom: \"DVI4/8000\" <sip:[email protected]:5060>;tag=1\r\nTo: test <sip:[email protected]:5060>\r\nCall-ID: [email protected]\r\nCSeq: 1 INVITE\r\nContact: sip:[email protected]:5060\r\nMax-Forwards: 70\r\nContent-Type: application/sdp\r\nContent-Length:   123\r\n\r\nv=0\r\no=- 42 42 IN IP4 10.0.2.20\r\ns=-\r\nc=IN IP4 10.0.2.20\r\nt=0 0\r\nm=audio 6000 RTP/AVP 5\r\na=rtpmap:5 DVI4/8000\r\na=recvonly\r\n",
        "sequence": 1,
        "start": "2023-11-13T21:54:31.038Z",
        "type": [
            "info",
            "protocol"
        ]
    },
    "host": {
        "architecture": "x86_64",
        "containerized": false,
        "hostname": "docker-fleet-agent",
        "id": "f91b175388d443fca5c155815dfc2279",
        "ip": [
            "172.22.0.7"
        ],
        "mac": [
            "02-42-AC-16-00-07"
        ],
        "name": "docker-fleet-agent",
        "os": {
            "codename": "focal",
            "family": "debian",
            "kernel": "5.15.49-linuxkit",
            "name": "Ubuntu",
            "platform": "ubuntu",
            "type": "linux",
            "version": "20.04.5 LTS (Focal Fossa)"
        }
    },
    "network": {
        "application": "sip",
        "community_id": "1:xDRQZvk3ErEhBDslXv1c6EKI804=",
        "direction": "unknown",
        "iana_number": "17",
        "protocol": "sip",
        "transport": "udp",
        "type": "ipv4"
    },
    "related": {
        "hosts": [
            "10.0.2.15",
            "10.0.2.20"
        ],
        "ip": [
            "10.0.2.20",
            "10.0.2.15"
        ],
        "user": [
            "test",
            "sipp"
        ]
    },
    "server": {
        "ip": "10.0.2.15",
        "port": 5060
    },
    "sip": {
        "call_id": "[email protected]",
        "contact": {
            "display_info": "test",
            "uri": {
                "host": "10.0.2.15",
                "original": "sip:[email protected]:5060",
                "port": 5060,
                "scheme": "sip",
                "username": "test"
            }
        },
        "content_length": 123,
        "content_type": "application/sdp",
        "cseq": {
            "code": 1,
            "method": "INVITE"
        },
        "from": {
            "display_info": "DVI4/8000",
            "tag": "1",
            "uri": {
                "host": "10.0.2.20",
                "original": "sip:[email protected]:5060",
                "port": 5060,
                "scheme": "sip",
                "username": "sipp"
            }
        },
        "max_forwards": 70,
        "method": "INVITE",
        "sdp": {
            "body": {
                "original": "v=0\r\no=- 42 42 IN IP4 10.0.2.20\r\ns=-\r\nc=IN IP4 10.0.2.20\r\nt=0 0\r\nm=audio 6000 RTP/AVP 5\r\na=rtpmap:5 DVI4/8000\r\na=recvonly\r\n"
            },
            "connection": {
                "address": "10.0.2.20",
                "info": "IN IP4 10.0.2.20"
            },
            "owner": {
                "ip": "10.0.2.20",
                "session_id": "42",
                "version": "42"
            },
            "version": "0"
        },
        "to": {
            "display_info": "test",
            "uri": {
                "host": "10.0.2.15",
                "original": "sip:[email protected]:5060",
                "port": 5060,
                "scheme": "sip",
                "username": "test"
            }
        },
        "type": "request",
        "uri": {
            "host": "10.0.2.15",
            "original": "sip:[email protected]:5060",
            "port": 5060,
            "scheme": "sip",
            "username": "test"
        },
        "version": "2.0",
        "via": {
            "original": [
                "SIP/2.0/UDP 10.0.2.20:5060;branch=z9hG4bK-2187-1-0"
            ]
        }
    },
    "source": {
        "ip": "10.0.2.20",
        "port": 5060
    },
    "status": "OK",
    "type": "sip"
}

Thrift

编辑

Apache Thrift 是一个通信协议和 RPC 框架,最初在 Facebook 创建。它有时用于微服务架构中,因为与更明显的 HTTP/RESTful API 选择相比,它提供了更好的性能,同时仍然支持广泛的编程语言和框架。

网络数据包捕获基于流量副本工作,这意味着您可以在无需以任何方式修改服务且没有任何延迟开销的情况下获得性能管理功能。网络数据包捕获从网络捕获事务并在 Elasticsearch 中对其进行索引,以便可以对其进行分析和搜索。

网络数据包捕获索引每个 Thrift-RPC 调用的方法、参数、返回值和异常。您可以根据任何这些字段进行搜索和创建统计信息。网络数据包捕获会自动在 status 列中填充 OKError,因此很容易找到有问题的 RPC 调用。如果事务返回异常,则将其置于 Error 状态。

网络数据包捕获还会索引 event.duration 字段,因此您可以获得性能分析并找到缓慢的 RPC 调用。

Thrift 支持多种传输和协议类型。当前,网络数据包捕获支持默认的 TSocket 传输以及 TFramed 传输。从协议角度来看,网络数据包捕获当前仅支持默认的 TBinary 协议。

网络数据包捕获还具有多个配置选项,使您可以在可见性、磁盘使用率和数据保护之间获得适当的平衡。例如,您可以选择混淆所有字符串或存储请求而不存储响应,同时仍然捕获每个 RPC 调用的响应时间。您还可以选择将字符串和列表的大小限制为给定数量的元素,因此您可以微调要存储在 Elasticsearch 中的数据量。

Thrift 协议有几个特定的配置选项。

向网络数据包捕获提供 Thrift IDL 文件是可选的。二进制 Thrift 消息包括调用的方法名称和足够的结构信息,无需 IDL 文件即可解码消息。但是,如果您提供 IDL 文件,网络数据包捕获还可以解析服务名称、参数和异常名称。

配置选项

另请参阅 通用协议选项

transport_type
编辑

Thrift 传输类型。当前,此选项接受 socket 值表示 TSocket,这是默认的 Thrift 传输,framed 表示 TFramed Thrift 传输。默认值为 socket

protocol_type
编辑

Thrift 协议类型。当前,唯一接受的值是 binary,表示 TBinary 协议,这是默认的 Thrift 协议。

idl_files
编辑

网络数据包捕获正在监视的服务的 Thrift 接口描述语言 (IDL) 文件。提供 IDL 文件是可选的,因为 Thrift 消息包含足够的信息来解码它们,而无需 IDL 文件。但是,提供 IDL 使网络数据包捕获能够包含参数和异常名称。

string_max_size
编辑

参数或返回值中字符串的最大长度。如果字符串的长度超过此值,则会自动将字符串截断为此长度。网络数据包捕获在字符串末尾添加点以标记该字符串已被截断。默认值为 200。

collection_max_size
编辑

Thrift 列表、集合、映射或结构中的最大元素数。如果集合的元素多于此值,则网络数据包捕获仅捕获指定数量的元素。网络数据包捕获在集合末尾添加一个虚拟的最后一个元素 ...,以标记该集合已被截断。默认值为 15。

capture_reply
编辑

如果此选项设置为 false,则网络数据包捕获将从回复中解码方法名称,并简单地跳过其余的响应消息。此设置对于性能、磁盘使用率或数据保留原因很有用。默认值为 true。

obfuscate_strings
编辑

如果此选项设置为 true,则网络数据包捕获会将方法参数、返回代码或异常结构中找到的所有字符串替换为 "*" 字符串。

drop_after_n_struct_fields
编辑

结构在网络数据包捕获忽略整个事务之前可以拥有的最大字段数。这是一种内存保护机制(以便网络数据包捕获的内存不会无限增长),因此您通常将其设置为相对较高的值。默认值为 500。

为 Thrift 数据包发布的字段。

导出的字段
字段 描述 类型

@timestamp

事件时间戳。

date

client.bytes

从客户端发送到服务器的字节。

long

client.geo.city_name

城市名称。

keyword

client.geo.continent_name

大洲的名称。

keyword

client.geo.country_iso_code

国家/地区 ISO 代码。

keyword

client.geo.country_name

国家/地区名称。

keyword

client.geo.location

经度和纬度。

geo_point

client.geo.region_iso_code

区域 ISO 代码。

keyword

client.geo.region_name

区域名称。

keyword

client.ip

客户端的 IP 地址(IPv4 或 IPv6)。

ip

client.port

客户端的端口。

long

client.process.args

启动事务的进程的命令行。

keyword

client.process.executable

客户端进程可执行文件的绝对路径。

keyword

client.process.name

启动事务的进程的名称。

keyword

client.process.start

客户端进程启动的时间。

date

client.process.working_directory

客户端进程的工作目录。

keyword

cloud.account.id

用于标识多租户环境中不同实体的云帐户或组织 ID。示例:AWS 帐户 ID、Google Cloud ORG ID 或其他唯一标识符。

keyword

cloud.availability_zone

此主机运行所在的可用区。

keyword

cloud.image.id

云实例的映像 ID。

keyword

cloud.instance.id

主机计算机的实例 ID。

keyword

cloud.instance.name

主机计算机的实例名称。

keyword

cloud.machine.type

主机计算机的机器类型。

keyword

cloud.project.id

Google Cloud 中项目的名称。

keyword

cloud.provider

云提供商的名称。示例值包括 aws、azure、gcp 或 digitalocean。

keyword

cloud.region

此主机运行所在的区域。

keyword

container.id

唯一的容器 ID。

keyword

container.image.name

构建容器所基于的映像的名称。

keyword

container.labels

映像标签。

object

container.name

容器名称。

keyword

data_stream.dataset

数据流数据集。

constant_keyword

data_stream.namespace

数据流命名空间。

constant_keyword

data_stream.type

数据流类型。

constant_keyword

destination.bytes

从目标发送到源的字节。

long

destination.geo.city_name

城市名称。

keyword

destination.geo.continent_name

大洲的名称。

keyword

destination.geo.country_iso_code

国家/地区 ISO 代码。

keyword

destination.geo.country_name

国家/地区名称。

keyword

destination.geo.location

经度和纬度。

geo_point

destination.geo.region_iso_code

区域 ISO 代码。

keyword

destination.geo.region_name

区域名称。

keyword

destination.ip

目标的 IP 地址(IPv4 或 IPv6)。

ip

destination.port

目标的端口。

long

ecs.version

此事件符合的 ECS 版本。ecs.version 是必填字段,并且必须存在于所有事件中。在查询可能符合略有不同的 ECS 版本的多个索引时,此字段允许集成调整到事件的架构版本。

keyword

event.category

这是四个 ECS 分类字段之一,表示 ECS 类别层次结构中的第二级。event.category 表示 ECS 类别的“大类”。例如,筛选 event.category:process 会生成与进程活动相关的所有事件。此字段与用作子类别的 event.type 密切相关。此字段是一个数组。这将允许正确分类属于多个类别的某些事件。

keyword

event.dataset

数据集的名称。如果某个事件源发布多种类型的日志或事件(例如,访问日志、错误日志),则数据集用于指定该事件的来源。建议但不是必须以模块名称开头命名数据集名称,后跟一个点,然后是数据集名称。

keyword

event.duration

事件的持续时间,以纳秒为单位。如果知道 event.startevent.end,则此值应为结束时间和开始时间之间的差值。

long

event.end

event.end 包含事件结束或上次观察到活动时的日期。

date

event.kind

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的最高级别。event.kind 提供关于事件包含的信息类型的高级信息,而无需具体到事件的内容。例如,此字段的值区分警报事件和指标事件。此字段的值可用于通知应如何处理这些类型的事件。它们可能需要不同的保留策略、不同的访问控制,它还有助于了解数据是否以固定间隔传入。

keyword

event.module

此数据来自的模块的名称。如果您的监控代理支持使用模块或插件来处理给定来源的事件(例如,Apache 日志),则 event.module 应包含此模块的名称。

constant_keyword

event.start

event.start 包含事件开始的时间或首次观察到活动的时间。

date

event.type

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的第三级。event.type 表示一个分类“子桶”,当与 event.category 字段值一起使用时,可以将事件过滤到适合单个可视化的级别。此字段是一个数组。这将允许对属于多个事件类型的某些事件进行适当的分类。

keyword

flow.final

指示事件是否是流中的最后一个事件。如果 final 为 false,则该事件仅报告中间流状态。

boolean

flow.id

基于连接元数据和地址的内部流 ID。

keyword

flow.vlan

来自 802.1q 帧的 VLAN 标识符。如果存在多标记帧,则此字段将是一个数组,其中外部标记的 VLAN 标识符首先列出。

long

host.architecture

操作系统架构。

keyword

host.containerized

主机是否为容器。

boolean

host.domain

主机所属的域名。例如,在 Windows 上,这可以是主机的 Active Directory 域或 NetBIOS 域名。对于 Linux,这可以是主机 LDAP 提供程序的域。

keyword

host.hostname

主机的 hostname。它通常包含主机上的 hostname 命令返回的内容。

keyword

host.id

唯一的主机 ID。由于 hostname 并不总是唯一的,请使用在您的环境中具有意义的值。例如:当前 beat.name 的用法。

keyword

host.ip

主机 IP 地址。

ip

host.mac

主机 MAC 地址。

keyword

host.name

主机的名称。它可以包含 Unix 系统上 hostname 返回的内容、完全限定域名或用户指定的名称。发送者决定使用哪个值。

keyword

host.os.build

操作系统构建信息。

keyword

host.os.codename

操作系统代码名(如果有)。

keyword

host.os.family

操作系统系列(如 redhat、debian、freebsd、windows)。

keyword

host.os.kernel

操作系统内核版本,以原始字符串形式表示。

keyword

host.os.name

操作系统名称,不带版本。

keyword

host.os.name.text

host.os.name 的多字段。

text

host.os.platform

操作系统平台(如 centos、ubuntu、windows)。

keyword

host.os.version

操作系统版本,以原始字符串形式表示。

keyword

host.type

主机类型。对于云提供商,这可以是诸如 t2.medium 之类的机器类型。如果为虚拟机,则可以是容器,或其他在您的环境中具有意义的信息。

keyword

method

事务的命令/动词/方法。对于 HTTP,这是方法名称(GET、POST、PUT 等);对于 SQL,这是动词(SELECT、UPDATE、DELETE 等)。

keyword

network.bytes

在两个方向上传输的总字节数。如果已知 source.bytesdestination.bytes,则 network.bytes 是它们的总和。

long

network.community_id

源 IP 和目标 IP、端口以及通信中使用的协议的哈希值。这是一个与工具无关的用于标识流的标准。在 https://github.com/corelight/community-id-spec 了解更多信息。

keyword

network.direction

网络流量的方向。当从基于主机的监控上下文中映射事件时,请从主机的角度使用值“ingress”或“egress”填充此字段。当从基于网络或基于边界的监控上下文中映射事件时,请从网络边界的角度使用值“inbound”、“outbound”、“internal”或“external”填充此字段。请注意,“internal”未跨越边界,旨在描述边界内两台主机之间的通信。另请注意,“external”旨在描述边界外部两台主机之间的流量。例如,这对于 ISP 或 VPN 服务提供商可能很有用。

keyword

network.forwarded_ip

当源 IP 地址为代理时的主机 IP 地址。

ip

network.protocol

在 OSI 模型中,这将是应用层协议。例如,httpdnsssh。为了进行查询,必须将字段值标准化为小写。

keyword

network.transport

与 network.iana_number 相同,但使用传输层的关键字名称(udp、tcp、ipv6-icmp 等)。为了进行查询,必须将字段值标准化为小写。

keyword

network.type

在 OSI 模型中,这将是网络层。ipv4、ipv6、ipsec、pim 等。为了进行查询,必须将字段值标准化为小写。

keyword

network_traffic.status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

network_traffic.thrift.exceptions

如果调用导致异常,则此字段包含采用人类可读格式的异常。

keyword

network_traffic.thrift.method

事务的命令/动词/方法。

keyword

network_traffic.thrift.params

采用人类可读格式的 RPC 方法调用参数。如果 IDL 文件可用,则参数尽可能使用名称。否则,将使用消息中的 ID。

keyword

network_traffic.thrift.path

事务引用的路径。

keyword

network_traffic.thrift.query

以人类可读格式显示的查询。

keyword

network_traffic.thrift.return_value

Thrift-RPC 调用返回的值。这以人类可读的格式编码。

keyword

network_traffic.thrift.service

IDL 文件中定义的 Thrift-RPC 服务名称。

keyword

observer.hostname

观察者的主机名。

keyword

observer.ip

观察者的 IP 地址。

ip

observer.mac

观察者的 MAC 地址。建议使用 RFC 7042 中的表示法格式:每个八位字节(即 8 位字节)由两个[大写]十六进制数字表示,给出该八位字节的值作为无符号整数。连续的八位字节用连字符分隔。

keyword

observer.name

观察者的自定义名称。这是可以赋予观察者的名称。例如,如果在组织中使用同一型号的多个防火墙,则这可能会有所帮助。如果不需要自定义名称,则该字段可以留空。

keyword

params

请求参数。对于 HTTP,这些是 POST 或 GET 参数。对于 Thrift-RPC,这些是请求中的参数。

text

path

事务引用的路径。对于 HTTP,这是 URL。对于 SQL 数据库,这是表名。对于键值存储,这是键。

keyword

process.args

进程参数的数组,从可执行文件的绝对路径开始。可能会经过过滤以保护敏感信息。

keyword

process.executable

进程可执行文件的绝对路径。

keyword

process.executable.text

process.executable 的多字段。

match_only_text

process.name

进程名称。有时称为程序名称或类似名称。

keyword

process.name.text

process.name 的多字段。

match_only_text

process.start

进程启动的时间。

date

process.working_directory

进程的工作目录。

keyword

process.working_directory.text

process.working_directory 的多字段。

match_only_text

query

人类可读格式的查询。对于 HTTP,它通常类似于 GET /users/_search?name=test。对于 MySQL,它类似于 SELECT id from users where name=test

keyword

related.hosts

在您的事件中看到的所有主机名或其他主机标识符。示例标识符包括 FQDN、域名、工作站名称或别名。

keyword

related.ip

在您的事件中看到的所有 IP。

ip

request

对于文本协议,这是在网络上看到的请求(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

resource

此事务引用的逻辑资源。对于 HTTP,这是 URL 路径,直到最后一个斜杠 (/)。例如,如果 URL 是 /users/1,则资源是 /users。对于数据库,资源通常是表名。并非所有事务类型都会填充该字段。

keyword

response

对于文本协议,这是在网络上看到的响应(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

server.bytes

从服务器发送到客户端的字节数。

long

server.geo.city_name

城市名称。

keyword

server.geo.continent_name

大洲的名称。

keyword

server.geo.country_iso_code

国家/地区 ISO 代码。

keyword

server.geo.country_name

国家/地区名称。

keyword

server.geo.location

经度和纬度。

geo_point

server.geo.region_iso_code

区域 ISO 代码。

keyword

server.geo.region_name

区域名称。

keyword

server.ip

服务器的 IP 地址(IPv4 或 IPv6)。

ip

server.port

服务器的端口。

long

server.process.args

为事务提供服务的进程的命令行。

keyword

server.process.executable

服务器进程可执行文件的绝对路径。

keyword

server.process.name

为事务提供服务的进程的名称。

keyword

server.process.start

服务器进程启动的时间。

date

server.process.working_directory

服务器进程的工作目录。

keyword

source.bytes

从源发送到目标的字节数。

long

source.geo.city_name

城市名称。

keyword

source.geo.continent_name

大洲的名称。

keyword

source.geo.country_iso_code

国家/地区 ISO 代码。

keyword

source.geo.country_name

国家/地区名称。

keyword

source.geo.location

经度和纬度。

geo_point

source.geo.region_iso_code

区域 ISO 代码。

keyword

source.geo.region_name

区域名称。

keyword

source.ip

源的 IP 地址(IPv4 或 IPv6)。

ip

source.port

源的端口。

long

status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

tags

用于标记每个事件的关键字列表。

keyword

thrift.exceptions

如果调用导致异常,则此字段包含采用人类可读格式的异常。

keyword

thrift.params

采用人类可读格式的 RPC 方法调用参数。如果 IDL 文件可用,则参数尽可能使用名称。否则,将使用消息中的 ID。

keyword

thrift.return_value

Thrift-RPC 调用返回的值。这以人类可读的格式编码。

keyword

thrift.service

IDL 文件中定义的 Thrift-RPC 服务名称。

keyword

类型

事务的类型(例如,HTTP、MySQL、Redis 或 RUM),如果是流程则为 “flow”。

keyword

示例

一个 thrift 的示例事件如下所示

{
    "@timestamp": "2023-10-16T23:26:46.507Z",
    "agent": {
        "ephemeral_id": "69d13820-6026-4f1f-8829-05ce967ab5b7",
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "name": "docker-fleet-agent",
        "type": "packetbeat",
        "version": "8.6.2"
    },
    "client": {
        "bytes": 25,
        "ip": "127.0.0.1",
        "port": 50919
    },
    "data_stream": {
        "dataset": "network_traffic.thrift",
        "namespace": "ep",
        "type": "logs"
    },
    "destination": {
        "bytes": 25,
        "ip": "127.0.0.1",
        "port": 9090
    },
    "ecs": {
        "version": "8.11.0"
    },
    "elastic_agent": {
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "snapshot": false,
        "version": "8.6.2"
    },
    "event": {
        "agent_id_status": "verified",
        "category": [
            "network"
        ],
        "dataset": "network_traffic.thrift",
        "duration": 1354815,
        "end": "2023-10-16T23:26:46.508Z",
        "ingested": "2023-10-16T23:26:50Z",
        "kind": "event",
        "start": "2023-10-16T23:26:46.507Z",
        "type": [
            "connection",
            "protocol"
        ]
    },
    "host": {
        "architecture": "x86_64",
        "containerized": false,
        "hostname": "docker-fleet-agent",
        "id": "f91b175388d443fca5c155815dfc2279",
        "ip": [
            "172.19.0.7"
        ],
        "mac": [
            "02-42-AC-13-00-07"
        ],
        "name": "docker-fleet-agent",
        "os": {
            "codename": "focal",
            "family": "debian",
            "kernel": "5.15.49-linuxkit",
            "name": "Ubuntu",
            "platform": "ubuntu",
            "type": "linux",
            "version": "20.04.5 LTS (Focal Fossa)"
        }
    },
    "method": "testByte",
    "network": {
        "bytes": 50,
        "community_id": "1:fs+HuhTN3hqKiWHtoK/DsQ0ni5Y=",
        "direction": "ingress",
        "protocol": "thrift",
        "transport": "tcp",
        "type": "ipv4"
    },
    "path": "",
    "query": "testByte(1: 63)",
    "related": {
        "ip": [
            "127.0.0.1"
        ]
    },
    "server": {
        "bytes": 25,
        "ip": "127.0.0.1",
        "port": 9090
    },
    "source": {
        "bytes": 25,
        "ip": "127.0.0.1",
        "port": 50919
    },
    "status": "OK",
    "thrift": {
        "params": "(1: 63)",
        "return_value": "63"
    },
    "type": "thrift"
}

TLS 是一种加密协议,可在现有应用程序协议(如 HTTP 或 MySQL)之上提供安全通信。

网络数据包捕获拦截 TLS 连接中的初始握手,并提取有用的信息,以帮助操作员诊断问题并加强其网络和系统的安全性。它不会解密封装协议中的任何信息,也不会泄露任何敏感信息(如加密密钥)。支持 TLS 1.0 到 1.3 版本。

它的工作原理是拦截客户端和服务器的 "hello" 消息,其中包含连接的协商参数,如加密密码和协议版本。它还可以拦截 TLS 警报,这些警报由一方发送,以指示协商存在问题,如证书过期或加密错误。

未在 ECS 中定义的详细信息将添加到 tls.detailed 键下。include_detailed_fields 配置标志用于控制是否导出此信息。

tls.detailed.client_hello 下的字段包含客户端支持的算法和扩展,以及它支持的最大 TLS 版本。

tls.detailed.server_hello 下的字段包含 TLS 会话的最终设置:所选的密码、压缩方法、要使用的 TLS 版本以及其他扩展(如应用程序层协议协商 (ALPN))。

配置选项

send_certificatesinclude_detailed_fields 设置对于限制网络数据包捕获索引的数据量很有用,因为通常在单个事务中交换多个证书,而这些证书会占用大量的存储空间。

另请参阅 通用协议选项

send_certificates
编辑

此设置会导致客户端和服务器提供的证书的信息包含在详细字段中。服务器的证书在 tls.detailed.server_certificate 下进行索引,其证书链在 tls.detailed.server_certificate_chain 下进行索引。对于客户端,使用 client_certificateclient_certificate_chain 字段。默认值为 true。

include_raw_certificates
编辑

您可以设置 include_raw_certificates 以包含采用 PEM 格式编码的原始证书链,该证书链在 tls.server.certificate_chaintls.client.certificate_chain 字段下。默认值为 false。

include_detailed_fields
编辑

控制是否将TLS 字段添加到导出的文档中。设置为 false 时,仅包括ECS TLS字段。导出时包括。默认值为 true

fingerprints
编辑

定义用于计算证书指纹的哈希算法列表。有效值为 sha1sha256md5

默认情况下输出 SHA-1 指纹。

为 TLS 数据包发布的字段。

导出的字段
字段 描述 类型

@timestamp

事件时间戳。

date

client.bytes

从客户端发送到服务器的字节。

long

client.geo.city_name

城市名称。

keyword

client.geo.continent_name

大洲的名称。

keyword

client.geo.country_iso_code

国家/地区 ISO 代码。

keyword

client.geo.country_name

国家/地区名称。

keyword

client.geo.location

经度和纬度。

geo_point

client.geo.region_iso_code

区域 ISO 代码。

keyword

client.geo.region_name

区域名称。

keyword

client.ip

客户端的 IP 地址(IPv4 或 IPv6)。

ip

client.port

客户端的端口。

long

client.process.args

启动事务的进程的命令行。

keyword

client.process.executable

客户端进程可执行文件的绝对路径。

keyword

client.process.name

启动事务的进程的名称。

keyword

client.process.start

客户端进程启动的时间。

date

client.process.working_directory

客户端进程的工作目录。

keyword

cloud.account.id

用于标识多租户环境中不同实体的云帐户或组织 ID。示例:AWS 帐户 ID、Google Cloud ORG ID 或其他唯一标识符。

keyword

cloud.availability_zone

此主机运行所在的可用区。

keyword

cloud.image.id

云实例的映像 ID。

keyword

cloud.instance.id

主机计算机的实例 ID。

keyword

cloud.instance.name

主机计算机的实例名称。

keyword

cloud.machine.type

主机计算机的机器类型。

keyword

cloud.project.id

Google Cloud 中项目的名称。

keyword

cloud.provider

云提供商的名称。示例值包括 aws、azure、gcp 或 digitalocean。

keyword

cloud.region

此主机运行所在的区域。

keyword

container.id

唯一的容器 ID。

keyword

container.image.name

构建容器所基于的映像的名称。

keyword

container.labels

映像标签。

object

container.name

容器名称。

keyword

data_stream.dataset

数据流数据集。

constant_keyword

data_stream.namespace

数据流命名空间。

constant_keyword

data_stream.type

数据流类型。

constant_keyword

destination.bytes

从目标发送到源的字节。

long

destination.domain

目标系统的域名。此值可以是主机名、完全限定域名或其他主机命名格式。该值可能来自原始事件,也可能来自富化。

keyword

destination.geo.city_name

城市名称。

keyword

destination.geo.continent_name

大洲的名称。

keyword

destination.geo.country_iso_code

国家/地区 ISO 代码。

keyword

destination.geo.country_name

国家/地区名称。

keyword

destination.geo.location

经度和纬度。

geo_point

destination.geo.region_iso_code

区域 ISO 代码。

keyword

destination.geo.region_name

区域名称。

keyword

destination.ip

目标的 IP 地址(IPv4 或 IPv6)。

ip

destination.port

目标的端口。

long

ecs.version

此事件符合的 ECS 版本。ecs.version 是必填字段,并且必须存在于所有事件中。在查询可能符合略有不同的 ECS 版本的多个索引时,此字段允许集成调整到事件的架构版本。

keyword

event.category

这是四个 ECS 分类字段之一,表示 ECS 类别层次结构中的第二级。event.category 表示 ECS 类别的“大类”。例如,筛选 event.category:process 会生成与进程活动相关的所有事件。此字段与用作子类别的 event.type 密切相关。此字段是一个数组。这将允许正确分类属于多个类别的某些事件。

keyword

event.dataset

数据集的名称。如果某个事件源发布多种类型的日志或事件(例如,访问日志、错误日志),则数据集用于指定该事件的来源。建议但不是必须以模块名称开头命名数据集名称,后跟一个点,然后是数据集名称。

keyword

event.duration

事件的持续时间,以纳秒为单位。如果知道 event.startevent.end,则此值应为结束时间和开始时间之间的差值。

long

event.end

event.end 包含事件结束或上次观察到活动时的日期。

date

event.kind

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的最高级别。event.kind 提供关于事件包含的信息类型的高级信息,而无需具体到事件的内容。例如,此字段的值区分警报事件和指标事件。此字段的值可用于通知应如何处理这些类型的事件。它们可能需要不同的保留策略、不同的访问控制,它还有助于了解数据是否以固定间隔传入。

keyword

event.module

此数据来自的模块的名称。如果您的监控代理支持使用模块或插件来处理给定来源的事件(例如,Apache 日志),则 event.module 应包含此模块的名称。

constant_keyword

event.start

event.start 包含事件开始的时间或首次观察到活动的时间。

date

event.type

这是 ECS 分类字段中的四个字段之一,表示 ECS 类别层次结构的第三级。event.type 表示一个分类“子桶”,当与 event.category 字段值一起使用时,可以将事件过滤到适合单个可视化的级别。此字段是一个数组。这将允许对属于多个事件类型的某些事件进行适当的分类。

keyword

flow.final

指示事件是否是流中的最后一个事件。如果 final 为 false,则该事件仅报告中间流状态。

boolean

flow.id

基于连接元数据和地址的内部流 ID。

keyword

flow.vlan

来自 802.1q 帧的 VLAN 标识符。如果存在多标记帧,则此字段将是一个数组,其中外部标记的 VLAN 标识符首先列出。

long

host.architecture

操作系统架构。

keyword

host.containerized

主机是否为容器。

boolean

host.domain

主机所属的域名。例如,在 Windows 上,这可以是主机的 Active Directory 域或 NetBIOS 域名。对于 Linux,这可以是主机 LDAP 提供程序的域。

keyword

host.hostname

主机的 hostname。它通常包含主机上的 hostname 命令返回的内容。

keyword

host.id

唯一的主机 ID。由于 hostname 并不总是唯一的,请使用在您的环境中具有意义的值。例如:当前 beat.name 的用法。

keyword

host.ip

主机 IP 地址。

ip

host.mac

主机 MAC 地址。

keyword

host.name

主机的名称。它可以包含 Unix 系统上 hostname 返回的内容、完全限定域名或用户指定的名称。发送者决定使用哪个值。

keyword

host.os.build

操作系统构建信息。

keyword

host.os.codename

操作系统代码名(如果有)。

keyword

host.os.family

操作系统系列(如 redhat、debian、freebsd、windows)。

keyword

host.os.kernel

操作系统内核版本,以原始字符串形式表示。

keyword

host.os.name

操作系统名称,不带版本。

keyword

host.os.name.text

host.os.name 的多字段。

text

host.os.platform

操作系统平台(如 centos、ubuntu、windows)。

keyword

host.os.version

操作系统版本,以原始字符串形式表示。

keyword

host.type

主机类型。对于云提供商,这可以是诸如 t2.medium 之类的机器类型。如果为虚拟机,则可以是容器,或其他在您的环境中具有意义的信息。

keyword

method

事务的命令/动词/方法。对于 HTTP,这是方法名称(GET、POST、PUT 等);对于 SQL,这是动词(SELECT、UPDATE、DELETE 等)。

keyword

network.bytes

在两个方向上传输的总字节数。如果已知 source.bytesdestination.bytes,则 network.bytes 是它们的总和。

long

network.community_id

源 IP 和目标 IP、端口以及通信中使用的协议的哈希值。这是一个与工具无关的用于标识流的标准。在 https://github.com/corelight/community-id-spec 了解更多信息。

keyword

network.direction

网络流量的方向。当从基于主机的监控上下文中映射事件时,请从主机的角度使用值“ingress”或“egress”填充此字段。当从基于网络或基于边界的监控上下文中映射事件时,请从网络边界的角度使用值“inbound”、“outbound”、“internal”或“external”填充此字段。请注意,“internal”未跨越边界,旨在描述边界内两台主机之间的通信。另请注意,“external”旨在描述边界外部两台主机之间的流量。例如,这对于 ISP 或 VPN 服务提供商可能很有用。

keyword

network.forwarded_ip

当源 IP 地址为代理时的主机 IP 地址。

ip

network.protocol

在 OSI 模型中,这将是应用层协议。例如,httpdnsssh。为了进行查询,必须将字段值标准化为小写。

keyword

network.transport

与 network.iana_number 相同,但使用传输层的关键字名称(udp、tcp、ipv6-icmp 等)。为了进行查询,必须将字段值标准化为小写。

keyword

network.type

在 OSI 模型中,这将是网络层。ipv4、ipv6、ipsec、pim 等。为了进行查询,必须将字段值标准化为小写。

keyword

network_traffic.status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

observer.hostname

观察者的主机名。

keyword

observer.ip

观察者的 IP 地址。

ip

observer.mac

观察者的 MAC 地址。建议使用 RFC 7042 中的表示法格式:每个八位字节(即 8 位字节)由两个[大写]十六进制数字表示,给出该八位字节的值作为无符号整数。连续的八位字节用连字符分隔。

keyword

observer.name

观察者的自定义名称。这是可以赋予观察者的名称。例如,如果在组织中使用同一型号的多个防火墙,则这可能会有所帮助。如果不需要自定义名称,则该字段可以留空。

keyword

params

请求参数。对于 HTTP,这些是 POST 或 GET 参数。对于 Thrift-RPC,这些是请求中的参数。

text

path

事务引用的路径。对于 HTTP,这是 URL。对于 SQL 数据库,这是表名。对于键值存储,这是键。

keyword

process.args

进程参数的数组,从可执行文件的绝对路径开始。可能会经过过滤以保护敏感信息。

keyword

process.executable

进程可执行文件的绝对路径。

keyword

process.executable.text

process.executable 的多字段。

match_only_text

process.name

进程名称。有时称为程序名称或类似名称。

keyword

process.name.text

process.name 的多字段。

match_only_text

process.start

进程启动的时间。

date

process.working_directory

进程的工作目录。

keyword

process.working_directory.text

process.working_directory 的多字段。

match_only_text

query

人类可读格式的查询。对于 HTTP,它通常类似于 GET /users/_search?name=test。对于 MySQL,它类似于 SELECT id from users where name=test

keyword

related.hash

您的事件中看到的所有哈希。填充此字段,然后使用它搜索哈希可以帮助您了解哈希算法是什么(因此要搜索哪个键名称)。

keyword

related.hosts

在您的事件中看到的所有主机名或其他主机标识符。示例标识符包括 FQDN、域名、工作站名称或别名。

keyword

related.ip

在您的事件中看到的所有 IP。

ip

request

对于文本协议,这是在网络上看到的请求(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

resource

此事务引用的逻辑资源。对于 HTTP,这是 URL 路径,直到最后一个斜杠 (/)。例如,如果 URL 是 /users/1,则资源是 /users。对于数据库,资源通常是表名。并非所有事务类型都会填充该字段。

keyword

response

对于文本协议,这是在网络上看到的响应(仅限应用层)。对于二进制协议,这是我们对请求的表示。

text

server.bytes

从服务器发送到客户端的字节数。

long

server.domain

服务器系统的域名。此值可以是主机名、完全限定域名或其他主机命名格式。该值可能来自原始事件,也可能来自富化。

keyword

server.geo.city_name

城市名称。

keyword

server.geo.continent_name

大洲的名称。

keyword

server.geo.country_iso_code

国家/地区 ISO 代码。

keyword

server.geo.country_name

国家/地区名称。

keyword

server.geo.location

经度和纬度。

geo_point

server.geo.region_iso_code

区域 ISO 代码。

keyword

server.geo.region_name

区域名称。

keyword

server.ip

服务器的 IP 地址(IPv4 或 IPv6)。

ip

server.port

服务器的端口。

long

server.process.args

为事务提供服务的进程的命令行。

keyword

server.process.executable

服务器进程可执行文件的绝对路径。

keyword

server.process.name

为事务提供服务的进程的名称。

keyword

server.process.start

服务器进程启动的时间。

date

server.process.working_directory

服务器进程的工作目录。

keyword

source.bytes

从源发送到目标的字节数。

long

source.geo.city_name

城市名称。

keyword

source.geo.continent_name

大洲的名称。

keyword

source.geo.country_iso_code

国家/地区 ISO 代码。

keyword

source.geo.country_name

国家/地区名称。

keyword

source.geo.location

经度和纬度。

geo_point

source.geo.region_iso_code

区域 ISO 代码。

keyword

source.geo.region_name

区域名称。

keyword

source.ip

源的 IP 地址(IPv4 或 IPv6)。

ip

source.port

源的端口。

long

status

事务的高级状态。计算此值的方式取决于协议,但结果具有独立于协议的含义。

keyword

tags

用于标记每个事件的关键字列表。

keyword

tls.cipher

指示当前连接期间使用的密码的字符串。

keyword

tls.client.certificate

客户端提供的 PEM 编码的独立证书。由于此值也存在于该列表中,因此通常与 client.certificate_chain 互斥。

keyword

tls.client.certificate_chain

构成客户端提供的证书链的 PEM 编码证书的数组。由于该值应该是链中的第一个证书,因此通常与 client.certificate 互斥。

keyword

tls.client.hash.md5

使用客户端提供的证书的 DER 编码版本的 MD5 摘要的证书指纹。为了与其他哈希值保持一致,此值应格式化为大写哈希。

keyword

tls.client.hash.sha1

使用客户端提供的证书的 DER 编码版本的 SHA1 摘要的证书指纹。为了与其他哈希值保持一致,此值应格式化为大写哈希。

keyword

tls.client.hash.sha256

使用客户端提供的证书的 DER 编码版本的 SHA256 摘要的证书指纹。为了与其他哈希值保持一致,此值应格式化为大写哈希。

keyword

tls.client.issuer

客户端提供的 x.509 证书的颁发者主题的专有名称。

keyword

tls.client.ja3

基于客户端执行 SSL/TLS 握手的方式来标识客户端的哈希值。

keyword

tls.client.not_after

指示客户端证书不再被视为有效的时间/日期。

date

tls.client.not_before

指示客户端证书首次被视为有效的时间/日期。

date

tls.client.server_name

也称为 SNI,它告诉服务器客户端尝试连接到哪个主机名。当此值可用时,应将其复制到 destination.domain

keyword

tls.client.subject

客户端提供的 x.509 证书的主题的专有名称。

keyword

tls.client.supported_ciphers

客户端在客户端 hello 期间提供的密码数组。

keyword

tls.client.x509.alternative_names

主题备用名称 (SAN) 列表。名称类型因证书颁发机构和证书类型而异,但通常包含 IP 地址、DNS 名称(和通配符)以及电子邮件地址。

keyword

tls.client.x509.issuer.common_name

颁发证书机构的通用名称 (CN) 列表。

keyword

tls.client.x509.issuer.country

国家/地区代码 © 列表

keyword

tls.client.x509.issuer.distinguished_name

颁发证书机构的专有名称 (DN)。

keyword

tls.client.x509.issuer.locality

地区名称 (L) 列表

keyword

tls.client.x509.issuer.organization

颁发证书机构的组织 (O) 列表。

keyword

tls.client.x509.issuer.organizational_unit

颁发证书机构的组织单位 (OU) 列表。

keyword

tls.client.x509.issuer.state_or_province

州或省名称(ST、S 或 P)列表

keyword

tls.client.x509.not_after

证书不再被视为有效的时间。

date

tls.client.x509.not_before

证书首次被视为有效的时间。

date

tls.client.x509.public_key_algorithm

用于生成公钥的算法。

keyword

tls.client.x509.public_key_curve

椭圆曲线公钥算法使用的曲线。这特定于算法。

keyword

tls.client.x509.public_key_exponent

用于导出公钥的指数。这特定于算法。

long

tls.client.x509.public_key_size

公钥空间的大小(以位为单位)。

long

tls.client.x509.serial_number

证书颁发机构颁发的唯一序列号。为了保持一致性,如果此值为字母数字,则应在不使用冒号和全大写字符的情况下进行格式化。

keyword

tls.client.x509.signature_algorithm

证书签名算法的标识符。我们建议使用 Go Lang Crypto 库中找到的名称。请参阅 https://github.com/golang/go/blob/go1.14/src/crypto/x509/x509.go#L337-L353

keyword

tls.client.x509.subject.common_name

主题的通用名称 (CN) 列表。

keyword

tls.client.x509.subject.country

国家/地区代码 © 列表

keyword

tls.client.x509.subject.distinguished_name

证书主题实体的专有名称 (DN)。

keyword

tls.client.x509.subject.locality

地区名称 (L) 列表

keyword

tls.client.x509.subject.organization

主题的组织 (O) 列表。

keyword

tls.client.x509.subject.organizational_unit

主题的组织单位 (OU) 列表。

keyword

tls.client.x509.subject.state_or_province

州或省名称(ST、S 或 P)列表

keyword

tls.client.x509.version_number

x509 格式的版本。

keyword

tls.curve

字符串,指示在适用时用于给定密码的曲线。

keyword

tls.detailed.alert_types

包含每个接收到的警报的 TLS 警报类型的数组。

keyword

tls.detailed.client_certificate_chain.alternative_names

证书中的主题备用名称 (SAN)。

keyword

tls.detailed.client_certificate_chain.issuer.common_name

keyword

tls.detailed.client_certificate_chain.issuer.country

keyword

tls.detailed.client_certificate_chain.issuer.distinguished_name

keyword

tls.detailed.client_certificate_chain.issuer.locality

keyword

tls.detailed.client_certificate_chain.issuer.organization

keyword

tls.detailed.client_certificate_chain.issuer.organizational_unit

keyword

tls.detailed.client_certificate_chain.issuer.postal_code

keyword

tls.detailed.client_certificate_chain.issuer.serial_number

keyword

tls.detailed.client_certificate_chain.issuer.state_or_province

keyword

tls.detailed.client_certificate_chain.issuer.street_address

keyword

tls.detailed.client_certificate_chain.not_after

有效期结束(含)。

date

tls.detailed.client_certificate_chain.not_before

有效期开始(含)。

date

tls.detailed.client_certificate_chain.public_key_algorithm

公钥算法(例如,RSA、DSA、ECDSA、Ed25519)。

keyword

tls.detailed.client_certificate_chain.public_key_size

公钥中的位数。

long

tls.detailed.client_certificate_chain.serial_number

证书序列号的十进制表示形式。

keyword

tls.detailed.client_certificate_chain.signature_algorithm

签名算法(例如,SHA256-RSA)。

keyword

tls.detailed.client_certificate_chain.subject.common_name

keyword

tls.detailed.client_certificate_chain.subject.country

keyword

tls.detailed.client_certificate_chain.subject.distinguished_name

keyword

tls.detailed.client_certificate_chain.subject.locality

keyword

tls.detailed.client_certificate_chain.subject.organization

keyword

tls.detailed.client_certificate_chain.subject.organizational_unit

keyword

tls.detailed.client_certificate_chain.subject.postal_code

keyword

tls.detailed.client_certificate_chain.subject.serial_number

keyword

tls.detailed.client_certificate_chain.subject.state_or_province

keyword

tls.detailed.client_certificate_chain.subject.street_address

keyword

tls.detailed.client_certificate_chain.version_number

x509 证书版本。版本 3 是最新和最常见的。

keyword

tls.detailed.client_certificate_requested

服务器是否已请求客户端使用客户端证书进行身份验证。

boolean

tls.detailed.client_hello.extensions.unparsed

Packetbeat 未解析的扩展列表。

keyword

tls.detailed.client_hello.extensions.application_layer_protocol_negotiation

客户端愿意使用的应用层协议列表。

keyword

tls.detailed.client_hello.extensions.ec_points_formats

椭圆曲线 (EC) 点格式列表。指示客户端可以解析的点格式集。

keyword

tls.detailed.client_hello.extensions.server_name_indication

主机名列表

keyword

tls.detailed.client_hello.extensions.session_ticket

会话票证的长度(如果提供),或者用于通告对票证支持的空字符串。

keyword

tls.detailed.client_hello.extensions.signature_algorithms

可以在数字签名中使用的签名算法列表。

keyword

tls.detailed.client_hello.extensions.status_request.request_extensions

请求的证书扩展的数量。

简短

tls.detailed.client_hello.extensions.status_request.responder_id_list_length

受信任的响应程序的列表的长度。

简短

tls.detailed.client_hello.extensions.status_request.type

状态请求的类型。如果存在,则始终为 "ocsp"。

keyword

tls.detailed.client_hello.extensions.supported_groups

客户端支持的椭圆曲线密码术 (ECC) 曲线组列表。

keyword

tls.detailed.client_hello.extensions.supported_versions

客户端愿意使用的 TLS 版本列表。

keyword

tls.detailed.client_hello.random

TLS 协议用于生成加密密钥的随机数据。

keyword

tls.detailed.client_hello.session_id

用于标识客户端相应连接会话的唯一编号。

keyword

tls.detailed.client_hello.supported_compression_methods

客户端支持的压缩方法列表。请参阅 https://www.iana.org/assignments/comp-meth-ids/comp-meth-ids.xhtml

keyword

tls.detailed.client_hello.version

客户端希望在此会话期间进行通信的 TLS 协议版本。

keyword

tls.detailed.ocsp_response

OCSP 请求的结果。

keyword

tls.detailed.resumption_method

如果会话已恢复,则使用的基础方法。TLS 会话 ID 使用 "id" 或 TLS 票证扩展使用 "ticket"。

keyword

tls.detailed.server_certificate_chain.alternative_names

证书中的主题备用名称 (SAN)。

keyword

tls.detailed.server_certificate_chain.issuer.common_name

keyword

tls.detailed.server_certificate_chain.issuer.country

keyword

tls.detailed.server_certificate_chain.issuer.distinguished_name

keyword

tls.detailed.server_certificate_chain.issuer.locality

keyword

tls.detailed.server_certificate_chain.issuer.organization

keyword

tls.detailed.server_certificate_chain.issuer.organizational_unit

keyword

tls.detailed.server_certificate_chain.issuer.postal_code

keyword

tls.detailed.server_certificate_chain.issuer.serial_number

keyword

tls.detailed.server_certificate_chain.issuer.state_or_province

keyword

tls.detailed.server_certificate_chain.issuer.street_address

keyword

tls.detailed.server_certificate_chain.not_after

有效期结束(含)。

date

tls.detailed.server_certificate_chain.not_before

有效期开始(含)。

date

tls.detailed.server_certificate_chain.public_key_algorithm

公钥算法(例如,RSA、DSA、ECDSA、Ed25519)。

keyword

tls.detailed.server_certificate_chain.public_key_size

公钥中的位数。

long

tls.detailed.server_certificate_chain.serial_number

证书序列号的十进制表示形式。

keyword

tls.detailed.server_certificate_chain.signature_algorithm

签名算法(例如,SHA256-RSA)。

keyword

tls.detailed.server_certificate_chain.subject.common_name

keyword

tls.detailed.server_certificate_chain.subject.country

keyword

tls.detailed.server_certificate_chain.subject.distinguished_name

keyword

tls.detailed.server_certificate_chain.subject.locality

keyword

tls.detailed.server_certificate_chain.subject.organization

keyword

tls.detailed.server_certificate_chain.subject.organizational_unit

keyword

tls.detailed.server_certificate_chain.subject.postal_code

keyword

tls.detailed.server_certificate_chain.subject.serial_number

keyword

tls.detailed.server_certificate_chain.subject.state_or_province

keyword

tls.detailed.server_certificate_chain.subject.street_address

keyword

tls.detailed.server_certificate_chain.version_number

x509 证书版本。版本 3 是最新和最常见的。

keyword

tls.detailed.server_hello.extensions.unparsed

Packetbeat 未解析的扩展列表。

keyword

tls.detailed.server_hello.extensions.application_layer_protocol_negotiation

协商的应用层协议

keyword

tls.detailed.server_hello.extensions.ec_points_formats

椭圆曲线 (EC) 点格式列表。指示服务器可以解析的点格式集。

keyword

tls.detailed.server_hello.extensions.session_ticket

用于声明服务器将提供会话票证。始终为空字符串。

keyword

tls.detailed.server_hello.extensions.status_request.response

是否发出了证书状态请求响应。

boolean

tls.detailed.server_hello.extensions.supported_versions

要使用的协商 TLS 版本。

keyword

tls.detailed.server_hello.random

TLS 协议用于生成加密密钥的随机数据。

keyword

tls.detailed.server_hello.selected_compression_method

服务器从客户端 hello 中提供的列表选择的压缩方法。

keyword

tls.detailed.server_hello.session_id

用于标识客户端相应连接会话的唯一编号。

keyword

tls.detailed.server_hello.version

此会话使用的 TLS 协议版本。它是服务器支持的最高版本,不超过客户端 hello 中请求的版本。

keyword

tls.detailed.version

使用的 TLS 协议版本。

keyword

tls.established

布尔标志,指示 TLS 协商是否成功并且转换为加密通道。

boolean

tls.next_protocol

字符串,指示正在建立隧道的协议。根据 IANA 注册表中的值 (https://www.iana.org/assignments/tls-extensiontype-values/tls-extensiontype-values.xhtml#alpn-protocol-ids),此字符串应为小写。

keyword

tls.resumed

布尔标志,指示此 TLS 连接是否从现有 TLS 协商恢复。

boolean

tls.server.certificate

服务器提供的 PEM 编码的独立证书。这通常与 server.certificate_chain 互斥,因为此值也存在于该列表中。

keyword

tls.server.certificate_chain

构成服务器提供的证书链的 PEM 编码证书数组。这通常与 server.certificate 互斥,因为该值应是链中的第一个证书。

keyword

tls.server.hash.md5

使用服务器提供的证书的 DER 编码版本的 MD5 摘要的证书指纹。为了与其他哈希值保持一致,此值应格式化为大写哈希。

keyword

tls.server.hash.sha1

使用服务器提供的证书的 DER 编码版本的 SHA1 摘要的证书指纹。为了与其他哈希值保持一致,此值应格式化为大写哈希。

keyword

tls.server.hash.sha256

使用服务器提供的证书的 DER 编码版本的 SHA256 摘要的证书指纹。为了与其他哈希值保持一致,此值应格式化为大写哈希。

keyword

tls.server.issuer

服务器提供的 x.509 证书的颁发者的主题。

keyword

tls.server.ja3s

一种哈希,用于根据服务器执行 SSL/TLS 握手的方式来标识服务器。

keyword

tls.server.not_after

指示服务器证书不再被视为有效的时间戳。

date

tls.server.not_before

指示服务器证书首次被视为有效的时间戳。

date

tls.server.subject

服务器提供的 x.509 证书的主题。

keyword

tls.server.x509.alternative_names

主题备用名称 (SAN) 列表。名称类型因证书颁发机构和证书类型而异,但通常包含 IP 地址、DNS 名称(和通配符)以及电子邮件地址。

keyword

tls.server.x509.issuer.common_name

颁发证书机构的通用名称 (CN) 列表。

keyword

tls.server.x509.issuer.country

国家/地区代码 © 列表

keyword

tls.server.x509.issuer.distinguished_name

颁发证书机构的专有名称 (DN)。

keyword

tls.server.x509.issuer.locality

地区名称 (L) 列表

keyword

tls.server.x509.issuer.organization

颁发证书机构的组织 (O) 列表。

keyword

tls.server.x509.issuer.organizational_unit

颁发证书机构的组织单位 (OU) 列表。

keyword

tls.server.x509.issuer.state_or_province

州或省名称(ST、S 或 P)列表

keyword

tls.server.x509.not_after

证书不再被视为有效的时间。

date

tls.server.x509.not_before

证书首次被视为有效的时间。

date

tls.server.x509.public_key_algorithm

用于生成公钥的算法。

keyword

tls.server.x509.public_key_curve

椭圆曲线公钥算法使用的曲线。这特定于算法。

keyword

tls.server.x509.public_key_exponent

用于导出公钥的指数。这特定于算法。

long

tls.server.x509.public_key_size

公钥空间的大小(以位为单位)。

long

tls.server.x509.serial_number

证书颁发机构颁发的唯一序列号。为了保持一致性,如果此值为字母数字,则应在不使用冒号和全大写字符的情况下进行格式化。

keyword

tls.server.x509.signature_algorithm

证书签名算法的标识符。我们建议使用 Go Lang Crypto 库中找到的名称。请参阅 https://github.com/golang/go/blob/go1.14/src/crypto/x509/x509.go#L337-L353

keyword

tls.server.x509.subject.common_name

主题的通用名称 (CN) 列表。

keyword

tls.server.x509.subject.country

国家/地区代码 © 列表

keyword

tls.server.x509.subject.distinguished_name

证书主题实体的专有名称 (DN)。

keyword

tls.server.x509.subject.locality

地区名称 (L) 列表

keyword

tls.server.x509.subject.organization

主题的组织 (O) 列表。

keyword

tls.server.x509.subject.organizational_unit

主题的组织单位 (OU) 列表。

keyword

tls.server.x509.subject.state_or_province

州或省名称(ST、S 或 P)列表

keyword

tls.server.x509.version_number

x509 格式的版本。

keyword

tls.version

从原始字符串解析的版本号的数字部分。

keyword

tls.version_protocol

从原始字符串解析的规范化小写协议名称。

keyword

类型

事务的类型(例如,HTTP、MySQL、Redis 或 RUM),如果是流程则为 “flow”。

keyword

示例

以下是一个 tls 的示例事件

{
    "@timestamp": "2023-10-16T23:27:36.939Z",
    "agent": {
        "ephemeral_id": "5041812f-2c64-48f2-b040-7814b7a8398f",
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "name": "docker-fleet-agent",
        "type": "packetbeat",
        "version": "8.6.2"
    },
    "client": {
        "ip": "192.168.1.36",
        "port": 60946
    },
    "data_stream": {
        "dataset": "network_traffic.tls",
        "namespace": "ep",
        "type": "logs"
    },
    "destination": {
        "domain": "play.google.com",
        "ip": "216.58.201.174",
        "port": 443
    },
    "ecs": {
        "version": "8.11.0"
    },
    "elastic_agent": {
        "id": "f923dfe0-3acb-4f62-9ab4-1fabb8e8e112",
        "snapshot": false,
        "version": "8.6.2"
    },
    "event": {
        "agent_id_status": "verified",
        "category": [
            "network"
        ],
        "dataset": "network_traffic.tls",
        "duration": 15311303,
        "end": "2023-10-16T23:27:36.954Z",
        "ingested": "2023-10-16T23:27:37Z",
        "kind": "event",
        "start": "2023-10-16T23:27:36.939Z",
        "type": [
            "connection",
            "protocol"
        ]
    },
    "host": {
        "architecture": "x86_64",
        "containerized": false,
        "hostname": "docker-fleet-agent",
        "id": "f91b175388d443fca5c155815dfc2279",
        "ip": [
            "172.19.0.7"
        ],
        "mac": [
            "02-42-AC-13-00-07"
        ],
        "name": "docker-fleet-agent",
        "os": {
            "codename": "focal",
            "family": "debian",
            "kernel": "5.15.49-linuxkit",
            "name": "Ubuntu",
            "platform": "ubuntu",
            "type": "linux",
            "version": "20.04.5 LTS (Focal Fossa)"
        }
    },
    "network": {
        "community_id": "1:hfsK5r0tJm7av4j7BtSxA6oH9xA=",
        "direction": "unknown",
        "protocol": "tls",
        "transport": "tcp",
        "type": "ipv4"
    },
    "related": {
        "hash": [
            "d470a3fa301d80227bc5650c75567d25"
        ],
        "ip": [
            "192.168.1.36",
            "216.58.201.174"
        ]
    },
    "server": {
        "domain": "play.google.com",
        "ip": "216.58.201.174",
        "port": 443
    },
    "source": {
        "ip": "192.168.1.36",
        "port": 60946
    },
    "status": "OK",
    "tls": {
        "cipher": "TLS_AES_128_GCM_SHA256",
        "client": {
            "ja3": "d470a3fa301d80227bc5650c75567d25",
            "server_name": "play.google.com",
            "supported_ciphers": [
                "TLS_AES_128_GCM_SHA256",
                "TLS_CHACHA20_POLY1305_SHA256",
                "TLS_AES_256_GCM_SHA384",
                "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256",
                "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
                "TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256",
                "TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256",
                "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384",
                "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384",
                "TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA",
                "TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA",
                "TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA",
                "TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA",
                "TLS_DHE_RSA_WITH_AES_128_CBC_SHA",
                "TLS_DHE_RSA_WITH_AES_256_CBC_SHA",
                "TLS_RSA_WITH_AES_128_CBC_SHA",
                "TLS_RSA_WITH_AES_256_CBC_SHA",
                "TLS_RSA_WITH_3DES_EDE_CBC_SHA"
            ]
        },
        "detailed": {
            "client_certificate_requested": false,
            "client_hello": {
                "extensions": {
                    "_unparsed_": [
                        "23",
                        "renegotiation_info",
                        "51",
                        "45",
                        "28",
                        "41"
                    ],
                    "application_layer_protocol_negotiation": [
                        "h2",
                        "http/1.1"
                    ],
                    "ec_points_formats": [
                        "uncompressed"
                    ],
                    "server_name_indication": [
                        "play.google.com"
                    ],
                    "signature_algorithms": [
                        "ecdsa_secp256r1_sha256",
                        "ecdsa_secp384r1_sha384",
                        "ecdsa_secp521r1_sha512",
                        "rsa_pss_sha256",
                        "rsa_pss_sha384",
                        "rsa_pss_sha512",
                        "rsa_pkcs1_sha256",
                        "rsa_pkcs1_sha384",
                        "rsa_pkcs1_sha512",
                        "ecdsa_sha1",
                        "rsa_pkcs1_sha1"
                    ],
                    "status_request": {
                        "request_extensions": 0,
                        "responder_id_list_length": 0,
                        "type": "ocsp"
                    },
                    "supported_groups": [
                        "x25519",
                        "secp256r1",
                        "secp384r1",
                        "secp521r1",
                        "ffdhe2048",
                        "ffdhe3072"
                    ],
                    "supported_versions": [
                        "TLS 1.3",
                        "TLS 1.2",
                        "TLS 1.1",
                        "TLS 1.0"
                    ]
                },
                "random": "03ce74e1536e0272c1d55b0c8cdf324e82f80a276e478645572324ce25910c00",
                "session_id": "5d2b9f80d34143b5764ba6b23e1d4f9d1f172148b6fd83c81f42663459eaf6f6",
                "supported_compression_methods": [
                    "NULL"
                ],
                "version": "3.3"
            },
            "resumption_method": "id",
            "server_hello": {
                "extensions": {
                    "_unparsed_": [
                        "41",
                        "51"
                    ],
                    "supported_versions": "TLS 1.3"
                },
                "random": "ebd86864767a7782922db6712f487c22c6cb65e54a895fefd3f60bc851591f19",
                "selected_compression_method": "NULL",
                "session_id": "5d2b9f80d34143b5764ba6b23e1d4f9d1f172148b6fd83c81f42663459eaf6f6",
                "version": "3.3"
            },
            "version": "TLS 1.3"
        },
        "established": true,
        "resumed": true,
        "version": "1.3",
        "version_protocol": "tls"
    },
    "type": "tls"
}

Windows 系统许可

编辑

网络数据包捕获集成在 Windows 主机上捆绑了 Npcap 安装。该安装是根据 Insecure.Com LLC(“Nmap 项目”)的 OEM 许可提供的。

更新日志

编辑
更新日志
版本 详细信息 Kibana 版本

1.32.1

错误修复 (查看拉取请求)
event.module 添加到数据流。

错误修复 (查看拉取请求)
在引用采集管道中的变量时使用三重大括号 Mustache 模板。

8.6.2 或更高版本

1.32.0

重大更改 (查看拉取请求)
数据流中不包含 event.module,这是一个意外的回归。

重大更改 (查看拉取请求)
在 1.31.2 中修复的模板回归。

8.6.2 或更高版本

1.31.2

错误修复 (查看拉取请求)
在引用采集管道中的变量时使用三重大括号 Mustache 模板。

8.6.2 或更高版本

1.31.1

错误修复 (查看拉取请求)
event.module 添加到数据流。

增强功能 (查看拉取请求)
map_to_ecs 默认设置为启用。

8.6.2 或更高版本

1.31.0

增强功能 (查看拉取请求)
公开 with_vlansignore_outgoing

8.6.2 或更高版本

1.30.1

增强功能 (查看拉取请求)
捕获根要求

8.6.2 或更高版本

1.30.0

增强功能 (查看拉取请求)
发布关于 map_to_ecs 的旧行为的弃用通知。

8.6.2 或更高版本

1.29.1

增强功能 (查看拉取请求)
更改了所有者

8.6.2 或更高版本

1.29.0

增强功能 (查看拉取请求)
process.parent.pid 重新映射添加到兼容性管道。

8.6.2 或更高版本

1.28.0

增强功能 (查看拉取请求)
添加 ECS 兼容性管道。

8.6.2 或更高版本

1.27.0

增强功能 (查看拉取请求)
在 ICMP 数据流中,将 type 字段复制到 network.protocol

增强功能 (查看拉取请求)
在 HTTP 数据流中,将 http.response.headers.content-type 字段复制到 http.response.mime_type

增强功能 (查看拉取请求)
在 HTTP 数据流中,将 http.request.headers.authorization 字段复制到 network_traffic.http.request.headers.authorization

8.6.2 或更高版本

1.26.0

增强功能 (查看拉取请求)
ECS 版本更新至 8.11.0。

8.6.2 或更高版本

1.25.1

错误修复 (查看拉取请求)
修复了 vendor_identifying_options 和其他一些组字段的映射

8.6.2 或更高版本

1.25.0

增强功能 (查看拉取请求)
ECS 版本更新至 8.10.0。

8.6.2 或更高版本

1.24.0

增强功能 (查看拉取请求)
包清单中的 format_version 从 2.11.0 更改为 3.0.0。从包清单中删除了带点的 YAML 键。将 owner.type: elastic 添加到包清单。

8.6.2 或更高版本

1.23.0

增强功能 (查看拉取请求)
添加 tags.yml 文件,以便将集成的仪表板和已保存的搜索标记为“安全解决方案”,并在安全解决方案 UI 中显示。

8.6.2 或更高版本

1.22.0

增强功能 (查看拉取请求)
使用动态字段定义。

8.6.2 或更高版本

1.21.0

增强功能 (查看拉取请求)
将包更新至 ECS 8.9.0。

8.6.2 或更高版本

1.20.0

增强功能 (查看拉取请求)
记录持续时间单位。

8.6.2 或更高版本

1.19.3

错误修复 (查看拉取请求)
修复许可证。

8.6.2 或更高版本

1.19.2

错误修复 (查看拉取请求)
修复 tls.detailed.client_certificate_chaintls.detailed.server_certificate_chain 的字段映射。

8.6.2 或更高版本

1.19.1

错误修复 (查看拉取请求)
修复 memcached 统计响应的索引。

8.6.2 或更高版本

1.19.0

增强功能 (查看拉取请求)
确保为管道错误正确设置 event.kind。

8.6.2 或更高版本

1.18.0

增强功能 (查看拉取请求)
将包更新至 ECS 8.8.0。

8.6.2 或更高版本

1.17.0

增强功能 (查看拉取请求)
将 package-spec 版本更新至 2.7.0。

8.6.2 或更高版本

1.16.0

增强功能 (查看拉取请求)
添加新的 Lens 仪表板、采集管道错误处理并增加 format_version

8.6.2 或更高版本

1.15.1

错误修复 (查看拉取请求)
删除冗余的字段清理脚本。

8.6.2 或更高版本

1.15.0

增强功能 (查看拉取请求)
observer.* 字段启用 forwarded 标记

8.6.2 或更高版本

1.14.0

增强功能 (查看拉取请求)
允许在流上使用用户定义的处理器。

8.5.3 或更高版本

1.13.0

增强功能 (查看拉取请求)
允许在集成中设置从不安装 Npcap 的选项。

8.5.3 或更高版本

1.12.0

错误修复 (查看拉取请求)
修复流仪表板。

8.5.3 或更高版本

1.11.1

错误修复 (查看拉取请求)
修复将流周期和超时传递给代理的问题。

8.4.0 或更高版本

1.11.0

增强功能 (查看拉取请求)
将流是否为最终过滤器添加到网络流仪表板。

增强功能 (查看拉取请求)
GA 数据流。

8.4.0 或更高版本

1.10.1

错误修复 (查看拉取请求)
修复流周期的文档。

8.4.0 或更高版本

1.10.0

增强功能 (查看拉取请求)
将包更新至 ECS 8.7.0。

1.9.3

增强功能 (查看拉取请求)
添加了类别和/或子类别。

8.4.0 或更高版本

1.9.2

错误修复 (查看拉取请求)
修复 HTTP 数据流的 send_headers 选项类型。

8.4.0 或更高版本

1.9.1

错误修复 (查看拉取请求)
修复 HTTP 数据流的 real_ip_header 选项类型。

8.4.0 或更高版本

1.9.0

增强功能 (查看拉取请求)
将包更新至 ECS 8.6.0。

8.4.0 或更高版本

1.8.0

增强功能 (查看拉取请求)
GeoIP 丰富 IP 地址。

8.4.0 或更高版本

1.7.1

增强功能 (查看拉取请求)
将仪表板中的可视化迁移为按值,以最大程度地减少已保存的对象混乱并减少加载时间

8.4.0 或更高版本

1.7.0

增强功能 (查看拉取请求)
将包更新至 ECS 8.5.0。

8.4.0 或更高版本

1.6.1

增强功能 (查看拉取请求)
将安全类别添加到包元数据。

8.4.0 或更高版本

1.6.0

增强功能 (查看拉取请求)
将包更新至 ECS 8.4.0

8.4.0 或更高版本

1.5.0

增强功能 (查看拉取请求)
添加使用 TCP 作为 SIP 协议的选项。

8.4.0 或更高版本

1.4.1

Bug 修复 (查看拉取请求)
添加 process.* 的映射。

7.17.0 或更高版本
8.0.0 或更高版本

1.4.0

增强 (查看拉取请求)
将软件包更新至 ECS 8.3.0。

1.3.1

增强 (查看拉取请求)
修复文档构建

7.17.0 或更高版本
8.0.0 或更高版本

1.3.0

增强 (查看拉取请求)
将 JA3/JA3S 添加到 related.hash

1.2.0

增强 (查看拉取请求)
添加监控进程的选项。

7.17.0 或更高版本
8.0.0 或更高版本

1.1.0

增强 (查看拉取请求)
添加配置文档。

7.17.0 或更高版本
8.0.0 或更高版本

1.0.2

Bug 修复 (查看拉取请求)
从 TLS 和 Thrift 的 event.category 中删除无效值

1.0.1

Bug 修复 (查看拉取请求)
event.category 中删除无效值。

1.0.0

增强 (查看拉取请求)
作为 GA 版本发布。

0.10.1

Bug 修复 (查看拉取请求)
从 SIP 数据集中删除 event.category 中的无效值。

0.10.0

增强 (查看拉取请求)
为每个协议添加配置选项。

0.9.0

增强 (查看拉取请求)
更新至 ECS 8.2

0.8.2

Bug 修复 (查看拉取请求)
将缺失的字段映射添加到 DNS 和 TLS 数据流。

0.8.1

增强 (查看拉取请求)
添加多字段的文档

0.8.0

增强 (查看拉取请求)
将发布稳定性更改为 beta。

0.7.1

Bug 修复 (查看拉取请求)
修复 tls.detailed.client_certificate_chain 的映射。

0.7.0

增强 (查看拉取请求)
添加仪表板。更新 Kibana 约束,要求 7.17.0 或 8.0.0。

0.6.3

Bug 修复 (查看拉取请求)
将许可证说明添加到 README。

0.6.2

增强 (查看拉取请求)
添加 TLS 随机数据和 OCSP 状态的字段。

0.6.1

增强 (查看拉取请求)
删除未使用的字段元数据。

0.6.0

增强 (查看拉取请求)
更新至 ECS 8.0

0.5.1

Bug 修复 (查看拉取请求)
修复 tls.detailed.server_certificate_chain 的映射

0.5.0

增强 (查看拉取请求)
添加 8.0.0 版本约束

0.4.2

增强 (查看拉取请求)
与指南保持一致

0.4.1

增强 (查看拉取请求)
更新描述。

增强 (查看拉取请求)
更新标题和描述。

0.4.0

增强 (查看拉取请求)
更新至 ECS 1.12.0

0.3.0

增强 (查看拉取请求)
将标题更改为网络数据包捕获。为 flows 数据流添加超时/周期配置。

0.2.2

Bug 修复 (查看拉取请求)
需要堆栈的 7.14.1 版本

0.2.1

增强 (查看拉取请求)
转义文档中的特殊字符

0.2.0

增强 (查看拉取请求)
更新文档以符合 mdx 规范

0.1.0

增强 (查看拉取请求)
更新集成描述

0.0.1

增强 (查看拉取请求)
初始版本