0

0

Linux 集群日志分析与监控方法

舞姬之光

舞姬之光

发布时间:2026-02-15 14:46:03

|

323人浏览过

|

来源于php中文网

原创

应通过 systemd-journal-remote 搭建集中式日志接收端,客户端用 systemd-journal-upload 推送结构化日志,避免 rsyslog 转发导致字段丢失;时间需统一时区,storage 和 forwardtosyslog 配置须准确。

linux 集群日志分析与监控方法

怎么用 journalctl 实时看多台机器的 systemd 日志

直接 ssh 连每台机器跑 journalctl -f 效率低、难比对,真要集中看,得靠日志转发。systemd 自带 journald 支持远程传输,但默认不开启,且必须配 ForwardToSyslog=no 才能避免日志重复或丢失。

实操建议:

FlowMuse AI
FlowMuse AI

节点式AI视觉创作引擎

下载
  • 在每台节点的 /etc/systemd/journald.conf 里设 ForwardToSyslog=yes(如果已用 rsyslog/rsyslog-ng)或 Storage=volatile + SystemMaxUse=512M 控制本地日志体积
  • systemd-journal-remote 搭接收端:监听 HTTPS 或 HTTP(测试可用),路径固定为 /receive,客户端用 systemd-journal-upload 推送
  • 别直接用 rsyslog 转发 journal,它会把结构化字段(如 _PIDSYSLOG_IDENTIFIER)转成纯文本,查 unitpriority 就失效了

grepawk 在日志里定位错误最稳的写法

集群日志量大,grep "error" 会漏掉 ERRLevel=error、甚至中文“错误”,也容易匹配到正常日志里的单词(比如 username 里有 err)。

实操建议:

  • 先用 journalctl -o json 输出结构化 JSON,再用 jq 精准筛字段:journalctl -o json | jq 'select(.PRIORITY == 3 or .SYSLOG_LEVEL == "err")'
  • 非 JSON 场景下,用 awk 匹配整字段:awk '$5 ~ /^(ERR|ERROR|err|error)$/ {print}' /var/log/messages,避免跨列误匹配
  • 时间范围别靠肉眼数行,用 journalctl --since "2024-05-20 14:00:00" --until "2024-05-20 14:05:00",注意时区——所有节点必须 timedatectl set-timezone Asia/Shanghai 同步,否则时间过滤失效

prometheus + node_exporter 监控日志关键词频次靠谱吗

不靠谱。Prometheus 是指标系统,不是日志系统。node_exporter 根本不解析日志内容,它的 textfile_collector 只能读取静态文件里的 key-value,没法实时统计 “Failed to connect” 出现次数。

实操建议:

  • 想告警日志关键词,该用 mtailpromtail:前者轻量嵌入式,适合单机;后者配合 Loki,支持正则提取 + 标签打点 + 基于日志内容的 PromQL 查询
  • 如果硬要用 Prometheus,只能走折中路:写个脚本定时 grep -c "timeout" /var/log/syslog,输出到 /var/lib/node_exporter/textfile/timeout_count.prom,但延迟高、易丢计数、不支持上下文追溯
  • 注意 mtail 的正则回溯风险——日志行太长或正则写成 .* 嵌套,CPU 会飙到 100%,上线前务必用 mtail -one_shot -logtostderr -progs your.mtail test.log 测压

为什么 rsyslog 配 filter 总是不生效

常见现象是写了 if $msg contains 'OOM' then /var/log/oom.log,但日志还是全进 /var/log/messages,没分流。根本原因是 rsyslog 的 filter 规则顺序敏感,且 $msg 默认不含 program name 和 timestamp,实际匹配的是纯消息体,而很多日志格式里 OOM 提示藏在 msg 后半段甚至被截断。

实操建议:

  • 先用 rsyslogd -N1 检查配置语法,再用 logger "test OOM killed process" 测试规则是否触发
  • 改用 property 匹配更稳:if $syslogtag startswith 'kernel:' and $msg contains 'Killed process' then /var/log/oom.log
  • 集群环境别只配 client 端,server 端的 imtcp 模块必须启用,且 $InputTCPServerRun 514 后要加 $AllowedSender TCP 192.168.1.0/24,否则收不到日志
事情说清了就结束。日志分析最耗时间的地方从来不是工具选型,而是确认每台机器的 journald 是否开了 Storage=persistentrsyslogimfile 是否有权限读日志路径、以及所有时间戳到底对没对上时区。这些细节一错,后面全白搭。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
json数据格式
json数据格式

JSON是一种轻量级的数据交换格式。本专题为大家带来json数据格式相关文章,帮助大家解决问题。

439

2023.08.07

json是什么
json是什么

JSON是一种轻量级的数据交换格式,具有简洁、易读、跨平台和语言的特点,JSON数据是通过键值对的方式进行组织,其中键是字符串,值可以是字符串、数值、布尔值、数组、对象或者null,在Web开发、数据交换和配置文件等方面得到广泛应用。本专题为大家提供json相关的文章、下载、课程内容,供大家免费下载体验。

544

2023.08.23

jquery怎么操作json
jquery怎么操作json

操作的方法有:1、“$.parseJSON(jsonString)”2、“$.getJSON(url, data, success)”;3、“$.each(obj, callback)”;4、“$.ajax()”。更多jquery怎么操作json的详细内容,可以访问本专题下面的文章。

318

2023.10.13

go语言处理json数据方法
go语言处理json数据方法

本专题整合了go语言中处理json数据方法,阅读专题下面的文章了解更多详细内容。

81

2025.09.10

python中print函数的用法
python中print函数的用法

python中print函数的语法是“print(value1, value2, ..., sep=' ', end=' ', file=sys.stdout, flush=False)”。本专题为大家提供print相关的文章、下载、课程内容,供大家免费下载体验。

192

2023.09.27

python print用法与作用
python print用法与作用

本专题整合了python print的用法、作用、函数功能相关内容,阅读专题下面的文章了解更多详细教程。

11

2026.02.03

if什么意思
if什么意思

if的意思是“如果”的条件。它是一个用于引导条件语句的关键词,用于根据特定条件的真假情况来执行不同的代码块。本专题提供if什么意思的相关文章,供大家免费阅读。

810

2023.08.22

scripterror怎么解决
scripterror怎么解决

scripterror的解决办法有检查语法、文件路径、检查网络连接、浏览器兼容性、使用try-catch语句、使用开发者工具进行调试、更新浏览器和JavaScript库或寻求专业帮助等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

351

2023.10.18

pixiv网页版官网登录与阅读指南_pixiv官网直达入口与在线访问方法
pixiv网页版官网登录与阅读指南_pixiv官网直达入口与在线访问方法

本专题系统整理pixiv网页版官网入口及登录访问方式,涵盖官网登录页面直达路径、在线阅读入口及快速进入方法说明,帮助用户高效找到pixiv官方网站,实现便捷、安全的网页端浏览与账号登录体验。

76

2026.02.13

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 9.1万人学习

Git 教程
Git 教程

共21课时 | 3.6万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号