user_agent
的 user_agent
处理器解析事件中的任何用户代理 (UA) 字符串,然后将解析结果添加到事件的写入数据中。
用法
在此示例中,user_agent
处理器调用包含 UA 字符串的源(即 ua
字段),并指定解析后的字符串将写入的键,即 user_agent
,如下例所示。
processor:
- user_agent:
source: "ua"
target: "user_agent"
以下示例事件包含 ua
字段,其中包含提供用户信息的字符串
{
"ua": "Mozilla/5.0 (iPhone; CPU iPhone OS 13_5_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.1.1 Mobile/15E148 Safari/604.1"
}
user_agent
处理器将字符串解析为与 Elastic Common Schema (ECS) 兼容的格式,然后将结果添加到指定目标,如下例所示。
{
"user_agent": {
"original": "Mozilla/5.0 (iPhone; CPU iPhone OS 13_5_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.1.1 Mobile/15E148 Safari/604.1",
"os": {
"version": "13.5.1",
"full": "iOS 13.5.1",
"name": "iOS"
},
"name": "Mobile Safari",
"version": "13.1.1",
"device": {
"name": "iPhone"
}
},
"ua": "Mozilla/5.0 (iPhone; CPU iPhone OS 13_5_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.1.1 Mobile/15E148 Safari/604.1"
}
配置选项
您可以对 user_agent
处理器使用以下配置选项。
选项 | 必需 | 描述 |
---|---|---|
source | 是 | 事件中将被解析的字段。 |
目标 | 否 | 解析后的事件将写入的字段。默认为 user_agent 。 |
exclude_original | 否 | 确定是否从解析结果中排除原始 UA 字符串。默认为 false 。 |
cache_size | 否 | 解析器的缓存大小(以兆字节为单位)。默认为 1000 。 |
tags_on_parse_failure | 否 | 如果 user_agent 处理器未能解析 UA 字符串,则添加到事件的标签。 |