Ubuntu系统查看与管理Informix日志的完整指南
Informix在Ubuntu上的日志文件路径主要由安装方式和配置决定,常见位置及文件名如下:
/var/log/informix/(多数安装方式的默认目录);/opt/informix/(若采用非标准路径安装,需检查此目录);informix.log(通用日志)、onstat.log(性能监控日志)、logopt(日志配置文件)、logmnr.log(挖掘日志)。
可通过ls /var/log/informix*或ls /opt/informix/*.log命令快速查看目录下的日志文件。使用tail命令实时跟踪日志文件的新增内容(适用于故障排查时的动态监控):
tail -f /var/log/informix.log
按Ctrl+C终止实时查看。
使用cat命令输出日志文件的全部内容(适用于小文件或需要完整历史的场景):
cat /var/log/informix.log
注意:大日志文件使用此命令可能导致终端卡顿。
使用grep命令过滤日志中的关键信息(如错误、警告或特定操作),支持正则表达式:
grep "错误" /var/log/informix.log # 搜索包含“错误”的行
grep -i "warning" /var/log/informix.log # 忽略大小写搜索“warning”
grep "2025-10-19" /var/log/informix.log # 搜索特定日期的日志
常用选项:-i(忽略大小写)、-n(显示行号)、-v(反向匹配,排除关键词)。
日志文件长期积累会占用大量磁盘空间,需通过logrotate工具定期轮转(压缩、删除旧日志)。步骤如下:
sudo nano /etc/logrotate.d/informix
/var/log/informix/*.log {
daily # 每天轮转一次
missingok # 若日志文件不存在也不报错
rotate 7 # 保留最近7个轮转文件
compress # 压缩旧日志(节省空间)
delaycompress # 延迟压缩(当前轮转的日志不压缩)
notifempty # 若日志为空则不轮转
create 0640 root root # 创建新日志文件并设置权限
sharedscripts # 所有日志处理完成后执行postrotate
postrotate
/bin/kill -HUP `cat /var/run/informix.pid` # 向Informix发送信号,重新打开日志文件
endscript
}
注:
/var/run/informix.pid需替换为Informix的实际PID文件路径(可在onconfig配置文件中查找)。
sudo logrotate -vf /etc/logrotate.d/informix
-v(详细模式)显示执行过程,-f(强制模式)立即执行轮转(即使未到轮转时间)。
若Informix通过systemd管理(如服务名为informix),可使用journalctl命令查看其日志:
journalctl -u informix # 查看informix服务的全部日志
journalctl -u informix --since "2025-10-19 10:00" --until "2025-10-19 12:00" # 指定时间范围
journalctl -u informix -o json # 输出JSON格式(便于程序解析)
此方式适合集成到系统监控体系中。
通过修改onconfig配置文件(通常位于$INFORMIXDIR/etc/onconfig)调整日志级别:
LOGLEVEL 4 # 0-4级,0为最少日志(仅错误),4为调试级别(最详细)
LOGFILE /var/log/informix.log # 日志文件路径
LOGFILESIZE 2000 # 单个日志文件大小(MB)
LOGFILENUM 5 # 保留的日志文件数量
修改后需重启Informix服务使配置生效:
sudo systemctl restart informix # 若使用systemd
# 或
sudo service informix restart # 若使用SysVinit
。
onconfig中的CONSOLE参数设置为ON,将关键操作(如登录、权限变更)输出到控制台或单独文件;chmod 640 /var/log/informix.log);Logwatch或Logalyze等工具定期分析日志,生成安全报告(如异常登录、未授权操作)。