Syslog
编辑Syslog
编辑syslog 处理器解析存储在字段中的 RFC 3146 和/或 RFC 5424 格式的 syslog 消息。处理器本身不处理从外部来源接收 syslog 消息。这是通过输入(例如 TCP 输入)完成的。某些集成在通过配置启用时,会嵌入 syslog 处理器来处理 syslog 消息,例如自定义 TCP 日志和自定义 UDP 日志。
配置
编辑syslog
处理器解析存储在 field
键下的 RFC 3146 和/或 RFC 5424 格式的 syslog 消息。
支持的配置选项如下
-
field
- (必需) 包含 syslog 消息的源字段。默认为
message
。 -
format
- (可选) 要使用的 syslog 格式,
rfc3164
或rfc5424
。要从日志条目自动检测格式,请将此选项设置为auto
。默认值为auto
。 -
timezone
- (可选) IANA 时区名称(例如
America/New York
)或在解析不包含时区的 syslog 时间戳时使用的固定时间偏移量(例如 +0200)。可以指定Local
以使用机器的本地时区。默认为Local
。 -
overwrite_keys
- (可选) 一个布尔值,用于指定事件中已存在的键是否会被 syslog 消息中的键覆盖。默认值为
true
。 -
ignore_missing
- (可选) 如果为
true
,则当指定字段不存在时,处理器不会返回错误。默认为false
。 -
ignore_failure
- (可选) 忽略处理器产生的所有错误。默认为
false
。 -
tag
- (可选) 此处理器的标识符。对于调试很有用。
示例
processors: - syslog: field: message
{ "message": "<165>1 2022-01-11T22:14:15.003Z mymachine.example.com eventslog 1024 ID47 [exampleSDID@32473 iut=\"3\" eventSource=\"Application\" eventID=\"1011\"][examplePriority@32473 class=\"high\"] this is the message" }
将产生以下输出
{ "@timestamp": "2022-01-11T22:14:15.003Z", "log": { "syslog": { "priority": 165, "facility": { "code": 20, "name": "local4" }, "severity": { "code": 5, "name": "Notice" }, "hostname": "mymachine.example.com", "appname": "eventslog", "procid": "1024", "msgid": "ID47", "version": 1, "structured_data": { "exampleSDID@32473": { "iut": "3", "eventSource": "Application", "eventID": "1011" }, "examplePriority@32473": { "class": "high" } } } }, "message": "this is the message" }
时间戳
编辑RFC 3164 格式接受以下形式的时间戳
-
本地时间戳 (
Mmm dd hh:mm:ss
)-
Jan 23 14:09:01
-
-
RFC-3339*
-
2003-10-11T22:14:15Z
-
2003-10-11T22:14:15.123456Z
-
2003-10-11T22:14:15-06:00
-
2003-10-11T22:14:15.123456-06:00
-
注意:伴随 RFC 3164 消息的本地时间戳(例如 Jan 23 14:09:01
)缺少年份和时区信息。时区将使用 timezone
配置选项进行丰富,年份将使用 Auditbeat 系统的本地时间(考虑时区)进行丰富。因此,消息可能会在未来出现。当 2021 年 12 月 31 日生成的日志在 2022 年 1 月 1 日摄入时,可能会发生这种情况。日志将以 2022 年而不是 2021 年进行丰富。
RFC 5424 格式接受以下形式的时间戳
-
RFC-3339
-
2003-10-11T22:14:15Z
-
2003-10-11T22:14:15.123456Z
-
2003-10-11T22:14:15-06:00
-
2003-10-11T22:14:15.123456-06:00
-
带有星号 (*) 的格式为非标准允许。
结构化数据
编辑对于 RFC 5424 格式的日志,如果结构化数据无法按照 RFC 标准解析,则原始结构化数据文本将添加到消息字段的前面,用空格分隔。
指标
编辑内部指标可用于协助调试工作。指标从指标 HTTP 端点提供(例如:https://127.0.0.1:5066/stats
),并在 processor.syslog.[实例 ID]
或 processor.syslog.[标签]-[实例 ID]
下找到(如果提供了 标签)。有关配置指标 HTTP 端点的更多信息,请参阅 HTTP 端点。
例如,以下是来自 标签 为 log-input
且 实例 ID 为 1
的处理器的指标
{ "processor": { "syslog": { "log-input-1": { "failure": 10, "missing": 0, "success": 3 } } } }
-
failure
- 衡量无法解析消息的次数。
-
missing
- 衡量事件缺少所需输入字段的次数。
-
success
- 衡量成功解析的 syslog 消息的数量。