日志 / 可观测性

syslog 日志解析批量处理 RFC 3164 与 RFC 5424

粘贴一行或多行 syslog,点击「解析 syslog」,得到带 facility/severity 筛选的字段表——同一粘贴里混用 BSD 与 RFC 5424 也可以。

syslog 日志解析

示例:

Syslog 报文

在浏览器本地运行,syslog 文本不会上传。

筛选

解析结果

解析 syslog 后在此显示行。

粘贴 syslog 行或加载示例,然后点击「解析 syslog」。

单看一行 `<165>1 2023-10-11T22:14:15.003Z …` 还算直观,但防火墙导出或 journalctl 片段往往是几百行,旧 BSD syslog 与 RFC 5424 转发混在一起,每行各自的 PRI、hostname 和可选 structured-data 块都不相同。无论叫 syslog 日志解析、syslog 查看器还是 RFC5424 解析器,核心工作都是把尖括号里的 priority 变成能按名称筛选的 facility 与 severity。

适合已经从工单、`/var/log/syslog` tail 或 SIEM 导出里复制好 syslog 文本,需要 PRI/facility/severity、时间戳(并标明 RFC3164 歧义)、hostname、app-name 与 structured data 的场景——不是通用日志美化器。一切都在当前浏览器标签页本地运行,粘贴内容不会被上传。

为什么用这个 syslog 日志解析工具

面向混合 RFC 3164 与 RFC 5424 的批量粘贴,不是单行演示。

批量多行,逐行识别格式

可粘贴 journalctl、防火墙或 rsyslog 转发的整段摘录——RFC5424 行(`<165>1 …`)与 BSD RFC3164 行(`<34>Oct 11 …`)可以放在同一输入框。每行单独分类,不必为整段粘贴选定一种格式。

同一次粘贴中 RFC3164 与 RFC5424 混排解析后的 syslog 表格

RFC3164 时间戳标明歧义,不静默猜测

BSD syslog 时间戳如 `Oct 11 22:14:15` 没有年份和时区。本工具保留原始字符串、显示清晰标记,并在单独列中标注任何推测的 ISO 时间为估算值——避免把浏览器本地猜测当成报文真实时钟。

RFC3164 行旁显示缺少年份与时区标记,以及原始时间戳

相比单行查看器,这款 syslog 日志解析还多做的三件事

解析一次,筛选无需重跑,导出结构化字段。

01

按你的节奏解析整段粘贴

多行 syslog 可能成千上万行,因此仅在点击「解析 syslog」(或 Ctrl/Cmd+Enter)时解析,而不是每次按键。Web Worker 在逐行提取 PRI、facility、severity、时间戳与 structured data 时保持页面响应。

  • 加载内置混合示例,无需手打即可看到 RFC3164、RFC5424、structured data 与故意无效行
  • 无效行单独收集——不会阻止有效消息出现在表格中
02

解析后即时按 facility、severity、hostname、app-name 筛选

解析完成后,severity 遵循常见的「该级及更严重」规则(选 warning 则保留 warning 到 emerg)。facility 为多选清单。hostname 与 app-name 为简单子串匹配。以上都在已解析行上重筛——无需第二次解析。

  • facility 未选任何项表示不过滤 facility(全部可见)
  • 改筛选不会使复制/下载失效,除非你编辑输入或重新解析
03

展开 structured data,导出扁平列

RFC5424 structured-data 元素可在行内展开为键值表。复制或下载会将筛选后的表格导出为 CSV、JSON 或纯文本,必要时将 structured-data 键扁平为 `sdid.param` 列。

  • 结果过期时(上次解析后输入已变)复制与下载保持禁用
  • 误点清空后可用「撤销清空」恢复先前的输入、筛选与表格
跳到解析器

每条 syslog 行你能得到什么

协议字段、筛选与导出,面向真实排障。

PRI 拆成 facility 与 severity 名称

每行解析结果展示原始 PRI 以及 facility(0–23)与 severity(0–7)的数值和标准名称,与 RFC5424 表一致——相当于 syslog PRI 计算器,但作用于完整报文。

RFC5424 structured-data 块

多条 `[sdid@enterprise key="value" …]` 元素按消息列出,可在表格内展开查看。

一次解析,四个筛选维度

facility 多选、severity 及更严重、hostname 子串、app-name/tag 子串——组合方式贴近网络与平台团队缩小 syslog dump 的习惯。

无效行列表并说明原因

非 syslog 或违反 PRI 规则的行单独列出,带行号与简短原因,而不是整批静默失败。

这款 syslog 日志解析能做什么、不能做什么

仅本地文本解析——无监听、无云端 API。

不提供 UDP/TCP syslog 监听
本工具只读取你粘贴的文本,不会打开 514 端口,也不会从网络接收实时流。
RFC3164 时间在规范上就是歧义的
BSD 风格时间戳缺少年份或时区时,解析器会标记;任何补全的 ISO 时间都会明确标注为基于浏览器本地日历的估算——而非报文 ground truth。
单次粘贴上限 30 万字符、2 万行
超大导出应拆批,以便在浏览器 worker 超时内完成解析。
不导出 CEF/SIEM 专用方言
导出为通用 CSV/JSON/文本表格。专用 CEF 或厂商 SIEM 格式不在本查看器式 syslog 解析工具范围内。

syslog 日志解析常见问题

把生产 syslog 粘贴进浏览器工具前,大家常问的问题。

RFC3164 与 RFC5424 syslog 有什么区别?

RFC3164(BSD syslog)常见形态为 `<34>Oct 11 22:14:15 host tag: message`,无版本字段,时间戳也不含年份。RFC5424 在 PRI 后增加版本号(`<165>1 …`)、ISO 8601 时间戳、hostname、app-name、procid、msgid、可选 structured data 与消息正文。本工具逐行自动识别格式。

如何解码 syslog PRI、facility 与 severity?

PRI 是尖括号内的数字。facility = PRI ÷ 8(整数),severity = PRI mod 8。表格同时显示数值与标准名称(例如 `auth` + `crit`)。单算一个 PRI 也可用专用 PRI 计算器,这里是对每条解析消息自动拆分。

把 syslog 粘贴到在线解析器安全吗?

对本工具而言可以:解析完全在当前浏览器标签页用 JavaScript 完成,syslog 文本不会上传、存储或在服务器记录。导出前仍请检查是否含敏感信息。

为什么 RFC3164 会提示缺少年份或时区?

BSD 格式本身就不包含这些字段。若不警告就展示推测的完整时间戳,会显得比协议允许的更精确,因此保留原始时间戳,任何补全的 ISO 时间都标注为推测值。

能否在同一次粘贴里混合 RFC3164 与 RFC5424?

可以。每行独立分类——旧网络设备打 RFC3164、rsyslog 或 journald 转发 RFC5424 时很常见。

这能替代 syslog 服务器或 SIEM 吗?

不能。它帮助阅读与筛选你已导出的文本,不会采集、索引或对实时 syslog 告警。

发现某条 syslog 被误解析?

现在就解析你的 syslog 粘贴

粘贴 RFC3164 与 RFC5424 syslog 行,几秒内得到可筛选表格——无需上传或账号。

收藏这个免费的 syslog 日志解析工具,下次防火墙或 journalctl 摘录进收件箱时直接用。

全部解析在浏览器本地完成。