日志服务 采集 Journal Log

日志服务(Cloud Log Service,CLS)支持通过 LogListener 采集 Linux 系统的 Systemd Journal 日志。可以以在控制台完成日志主题创建、机器组关联、采集配置和索引配置,将 sshd、systemd、内核等系统日志统一接入 CLS,进行检索、分析与告警。

相关产品
日志服务 产品页,含版本规格、价格与购买入口。

一、操作场景

Systemd Journal 是 Linux 系统常见的日志来源。你可以通过 journalctl 查看系统服务日志、内核日志、登录日志和 systemd unit 输出。Journal 日志由 journald 管理,属于结构化日志。如果自行转储为文这篇件后再采集,会增加接入成本,也容易丢失 MESSAGE、PRIORITY、SYSLOG_IDENTIFIER、_SYSTEMD_UNIT、_HOSTNAME 等原生字段。

这篇适用于以下典型场景:

场景 需要解决的问题 采集能力
CVM 系统排障 统一查询 sshd、systemd、内核等系统日志 采集全部 Journal 或指定 Unit
TKE 节点排障 查询 kubelet、containerd、docker 等节点组件日志 按 Unit 采集与检索
服务异常分析 自研服务以 systemd service 运行,日志写入 journald 保留 _SYSTEMD_UNIT、SYSLOG_IDENTIFIER 等字段
内核问题排查 排查 OOM、磁盘、网络、驱动等异常 可选择采集内核日志
安全审计 关注登录、服务启停、异常权限操作 统一留存、检索与告警

二、前提条件

·待采集机器为 Linux 系统(Windows 系统不支持该采集类型),且支持 systemd 与 journald。

·待采集机器上已安装 3.6.6 及以上版本的 LogListener,请参见 LogListener 安装指南(Linux 版)。

三、操作步骤

Systemd Journal 日志采集沿用 LogListener 采集配置的四步流程:选择日志主题、机器组管理、采集配置、索引配置。

四、步骤 1:选择日志主题

支持创建新的日志主题和使用现有的日志主题,你可按需选择。

创建新的日志主题使用现有的日志主题如果你想选择新的日志主题,可执行如下操作:1. 登录 日志服务控制台,在左侧导航栏中,选择概览,进入概览页面。2. 在快速接入 > 服务器及应用中,找到并单击 Journal 日志,进入采集配置流程。3. 在创建日志主题页面,根据实际需求,输入日志主题名称,配置日志保存时间等信息,单击下一步。如果你想选择现有的日志主题,可执行如下操作:1. 登录 日志服务控制台。2. 在左侧导航栏中,选择日志主题,选择需要投递的日志主题,单击日志主题名称,进入日志主题管理页面。3. 选择采集配置页签,单击新增,在服务器及应用中选择 Journal 日志。

五、步骤 2:机器组管理

选择需要采集 Journal 日志的机器组。

创建新的机器组选择现有的机器组1. 单击新建机器组,并在机器组创建弹窗中,通过 IP 或者机器标识的方式关联已安装 LogListener 的目标服务器。详情请参见 机器组。2. 完成创建后,你可在列表中找到并选择你创建的机器组。如果你想选择现有的机器组,可直接在列表中找到你的目标机器组并选择。

六、步骤 3:采集配置

采集配置是本采集类型的核心页面。请按以下配置项完成配置。

配置项 是否必填 默认值 说明
采集规则名称 是 无 用于识别该条采集配置。建议输入业务可识别名称,例如 systemd_journal_config。
Journal 日志路径 是 /var/log/journal LogListener 读取 Journal 日志的目录。机器仅启用临时 Journal 时,可改为 /run/log/journal。
采集策略 是 增量 首次生效时的采集起点。增量表示仅采集生效后的新增日志;全量表示从当前可读取的最早位置开始采集。
采集范围 是 全部 Unit 是否按 systemd Unit 过滤。全部 Unit 表示采集所有符合条件的日志;指定 Unit 表示仅采集填写的 Unit。
指定 Unit 条件必填 空 当采集范围选择指定 Unit 时填写。支持精确 Unit 名称及 Glob 通配符 *、?、[…],多个条件为“或”关系。例如 nginx.service、docker.*、kube-*.service。
采集内核日志 否 开启 是否采集 _TRANSPORT=kernel 的内核日志。
日志时间戳来源 否 关闭 开关项。关闭时使用日志采集时间;开启时使用 Journal 原始时间字段 __REALTIME_TIMESTAMP。
上传解析失败日志 否 开启 整条 Journal entry 无法转换为 CLS 支持的日志结构时,是否上传失败日志。
解析失败日志的键名称 否 LogParseFailure 开启上传解析失败日志后展示。失败日志以该键名称为 Key、原始 Journal entry 内容为 Value 上传。

七、步骤4:索引配置

1. 单击下一步,进入索引配置页面。

2. 在索引配置页面,设置如下信息。配置详情请参见 索引配置。

注意:检索必须开启索引配置,否则无法检索。

3. 单击提交,完成采集配置。

八、步骤5:检索分析

至此,你已完成 Journal 日志的采集配置。下一步,你可前往 检索分析页 查看日志。

九、字段增强说明

采集端默认对以下字段进行增强,无需在控制台配置:

·解析日志级别:保留 PRIORITY 原始数值,并追加可读字段 PRIORITY_LABEL。

·解析 Syslog Facility:当 Journal entry 存在合法 SYSLOG_FACILITY 时,保留原始数值,并追加可读 Facility 字段。

PRIORITY 与 PRIORITY_LABEL 的对应关系如下:

PRIORITY PRIORITY_LABEL 含义
0 emergency 系统不可用,需要立即处理
1 alert 必须立即采取动作
2 critical 严重错误
3 error 错误
4 warning 警告
5 notice 正常但重要的事件
6 informational 普通信息
7 debug 调试信息

SYSLOG_FACILITY 与可读 Facility 字段的对应关系如下:

SYSLOG_FACILITY 可读值 含义
0 kern 内核消息
1 user 用户级消息
2 mail 邮件系统
3 daemon 系统守护进程
4 auth 安全与认证消息
5 syslog syslogd 内部消息
6 lpr 打印子系统
7 news 网络新闻子系统
8 uucp UUCP 子系统
9 cron 定时任务
10 authpriv 安全与认证私有消息
11 ftp FTP 服务
12 ntp NTP 时间同步
13 security 审计与安全日志
14 console 控制台日志
15 solaris-cron Solaris cron 相关日志
赞 (0)
上一篇 4天前
下一篇 4天前