一文读懂openeuler/sysmonitor配置文件:从入门到精通的参数详解
【免费下载链接】sysmonitorSystem Monitor Daemon项目地址: https://gitcode.com/openeuler/sysmonitor
前往项目官网免费下载:https://ar.openeuler.org/ar/
openEuler/sysmonitor是一款系统监控守护进程工具,能够全面监控系统的进程、文件系统、信号、磁盘、网络等关键资源状态。本文将深入解析其核心配置文件,帮助新手用户快速掌握参数设置方法,轻松实现系统监控的个性化配置。
核心配置文件概览
sysmonitor的配置文件集中在sysmonitor-1.3.2/conf/目录下,主要包括系统级配置和进程级配置两类:
- 系统级配置:控制整体监控功能的开关和周期,如
sysmonitor主配置文件 - 进程级配置:针对特定服务的监控参数,位于
process/子目录,如acpid、sshd等服务配置 - 日志配置:通过
rsyslog.d/sysmonitor.conf定义日志格式和存储规则
主配置文件详解(sysmonitor)
主配置文件sysmonitor-1.3.2/conf/sysmonitor是整个监控系统的核心,通过简单的开关和数值设置即可实现基础监控功能的配置。
监控模块开关设置
文件开头定义了各监控模块的启用状态,采用"on"/"off"切换:
# 进程监控总开关 PROCESS_MONITOR="on" # 文件系统监控 FILESYSTEM_MONITOR="on" # 信号监控 SIGNAL_MONITOR="on" # 磁盘I/O延迟监控(默认关闭) IO_DELAY_MONITOR="off" # 僵尸进程监控(默认关闭) ZOMBIE_MONITOR="off"配置建议:新手用户建议保持默认的"on"状态,后续根据实际需求关闭不需要的监控项以减少系统资源占用。
监控周期配置
时间相关参数决定了监控频率,单位为秒:
# 进程监控周期(3秒/次) PROCESS_MONITOR_PERIOD="3" # 磁盘监控周期(60秒/次) DISK_MONITOR_PERIOD="60" # inode监控周期(60秒/次) INODE_MONITOR_PERIOD="60"优化技巧:对资源消耗较大的监控项(如磁盘I/O)可适当延长周期,建议设置范围5-300秒。
告警与恢复参数
系统异常时的处理策略配置:
# 进程恢复失败后的重试周期(1分钟) PROCESS_RECALL_PERIOD="1" # 进程重启超时时间(90秒) PROCESS_RESTART_TIMEOUT="90" # 告警抑制次数(5次) PROCESS_ALARM_SUPRESS_NUM="5"关键提示:PROCESS_ALARM_SUPRESS_NUM用于防止告警风暴,当同一问题短时间内触发次数超过设定值将暂时停止告警。
进程监控配置(process目录)
sysmonitor-1.3.2/conf/process/目录下存放各类服务的专用监控配置,以acpid为例:
USER=root NAME=acpid RECOVER_COMMAND=systemctl restart acpid MONITOR_COMMAND=systemctl status acpid STOP_COMMAND=systemctl stop acpid核心参数说明
- USER:执行监控命令的用户身份
- NAME:服务名称,需与系统服务名一致
- RECOVER_COMMAND:服务异常时的恢复命令
- MONITOR_COMMAND:状态检查命令
- STOP_COMMAND:服务停止命令
常用服务配置文件
该目录下包含多个系统关键服务的配置:
cron:定时任务服务监控dbus:消息总线服务监控sshd:SSH远程服务监控syslog:日志服务监控
自定义扩展:用户可通过创建新文件添加自定义服务监控,文件名需与服务名保持一致。
日志配置详解(rsyslog.d/sysmonitor.conf)
日志配置文件sysmonitor-1.3.2/conf/rsyslog.d/sysmonitor.conf控制监控日志的格式和存储策略:
日志格式定义
$template sysmonitorformat,"%TIMESTAMP:::date-rfc3339%|%syslogseverity-text%|%msg%\n"采用RFC3339时间格式,每条日志包含"时间戳|日志级别|消息内容"三部分,便于日志分析工具解析。
日志轮转配置
$outchannel sysmonitor, /var/log/sysmonitor.log, 2097152, /usr/libexec/sysmonitor/sysmonitor_log_dump.sh- 日志文件路径:
/var/log/sysmonitor.log - 触发轮转大小:2097152字节(约2MB)
- 轮转脚本:
sysmonitor_log_dump.sh
日志过滤规则
文件后半部分定义了日志过滤策略,确保只记录关键信息:
# 记录sysmonitor的正常日志 if ($programname == 'sysmonitor' and $syslogseverity <= 6) then { :omfile:$sysmonitor;sysmonitorformat stop } # 忽略调试级别的日志 if ($programname == 'sysmonitor' and $syslogseverity > 6) then { /dev/null stop }高级配置技巧
监控线程优化
主配置文件中提供了线程监控相关参数:
# 检查线程监控开关 CHECK_THREAD_MONITOR="on" # 线程失败阈值(2-10次) CHECK_THREAD_FAILURE_NUM="3"当线程连续失败次数达到阈值时,系统将自动重启监控线程,提高监控稳定性。
文件描述符监控
系统级文件描述符监控配置:
# 文件描述符监控开关 FDCNT_MONITOR="on" # 进程文件描述符监控 PROCESS_FD_NUM_MONITOR="on" # 日志存储路径 FD_MONITOR_LOG_PATH="/var/log/fd_monitor.log"实用场景:对于高并发服务,开启文件描述符监控可及时发现句柄泄漏问题。
配置文件加载路径
所有配置文件的加载路径如下,修改后需重启sysmonitor服务生效:
- 主配置:
sysmonitor-1.3.2/conf/sysmonitor - 进程配置:
sysmonitor-1.3.2/conf/process/ - 日志配置:
sysmonitor-1.3.2/conf/rsyslog.d/sysmonitor.conf
重启命令:systemctl restart sysmonitor
常见问题解决
配置不生效
- 检查配置文件权限是否正确(建议权限644)
- 确认修改后已重启sysmonitor服务
- 查看日志文件
/var/log/sysmonitor.log排查错误
监控资源占用过高
- 延长非关键监控项的周期(如磁盘监控)
- 关闭不需要的监控模块(如ZOMBIE_MONITOR)
- 调整日志轮转策略,减少磁盘I/O压力
通过本文的详细解析,相信您已掌握sysmonitor配置文件的核心参数和优化方法。合理配置监控参数不仅能提高系统稳定性,还能为故障排查提供关键依据。如需进一步了解高级功能,可参考项目文档或查看配置文件中的注释说明。
【免费下载链接】sysmonitorSystem Monitor Daemon项目地址: https://gitcode.com/openeuler/sysmonitor
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考