系统日志管理与监控全解析
1. Syslog-ng 的 sync( ) 选项
在 Syslog-ng 中, sync( ) 选项用于限制日志文件同步的频率。它类似于 syslog 的 “-” 前缀,但更加精细。“-” 前缀只是关闭同步,而 file( ) 接受一个数值,可根据需要延迟同步,缓存任意数量的消息。
该数值越高,在文件系统同步之前缓存的消息就越多,文件系统上的 “打开读取” 操作也就越少。数值越低,数据丢失的可能性就越低,消息处理和写入磁盘之间的延迟也越低。
默认情况下, sync( ) 设置为 0,意味着 “每条消息后同步”。一般来说,对于低流量场景,默认值或较低的 sync( ) 值是首选;但在高流量情况下,可能需要设置为 100 甚至 1000 以上。一个实用的经验法则是,将此值设置为系统在峰值负载下每秒必须处理的日志消息行数。
如果使用日志监控器(如 Swatch)来提醒正在进行的攻击,不要将 sync( ) 设置得太高。因为如果入侵者删除日志文件,Syslog-ng 缓存的所有消息将在未被日志监控器解析的情况下丢失。
2. Syslog-ng 的消息过滤器
消息过滤器是 Syslog-ng 的强大功能之一,虽然不是必需的,但它允许你不仅根据优先级/级别和设施(syslog 也能做到)来路由消息,还可以根据发送消息的程序名称、通过网络转发消息的主机名称、针对消息本身计算的正则表达式,甚至另一个过滤器的名称来进行路由。
一个
超级会员免费看
订阅专栏 解锁全文
2073

被折叠的 条评论
为什么被折叠?



