我希望能够在 syslogd 记录某些内容时收到电子邮件通知,例如err优先级或更高。假设这是一个与 BSD 兼容的系统日志守护进程。
当您在 Mac OS X 上阅读手册页时,有对 /var/log/messages 的引用,但如果您查找该文件,则它不存在:
$ ls -l /var/log/messages
ls: /var/log/messages: No such file or directory
Run Code Online (Sandbox Code Playgroud) 通过一些错误配置,我在 /var/mail/root 和 /var/mail/www-data 中有很多电子邮件
如何“循环”这些文件并再次发送每封邮件?
我正在管理几个 tomcat 实例(大约 30-35 个)并寻找一些控制台来集中日志。我之前尝试过 php-syslog-ng(没有使用 tomcat),发现它很有用。我希望这些软件具有以下一些功能:
- 根据异常的严重性高亮语法。- 堆栈跟踪和嵌套异常的树视图。
加分点:
- 当某些模式匹配时报警。
决定我们应该转向使用(MySQL)数据库来存储我们的应用程序日志(它是一个使用 logback 库的 Java 应用程序)。我希望找到类似的东西tail -f,我可以与该数据库中的特定表一起使用,该表将在添加新行时向我显示(类似于tail -f处理日志文件的方式)。
我想在我的 ErrorLog 中添加 vhost 名称,然后将其通过管道传输到我编写的程序中。
是否可以像访问日志一样编写自定义错误日志格式?
我正在寻找一种支持被tail编辑的压缩格式。这意味着您不必读取整个文件来获取最后 X 个未压缩字节。这是否适用于 bzip2、xz、lzma 等任何格式?
我曾经使用 gzip 编码过一些可以做到这一点的东西。基本上在一个非常高的层次上,它所做的是将多个 gzip 块放在一起,然后我有一个可以从文件末尾向后搜索直到最后一个块开始的工具。这些文件可以通过标准 gzip 实用程序完全读取,但我希望有一些更标准化的可用内容。
这样做的最终目的是用于日志文件,我可以将这些文件压缩写出,然后就可以使用tail它们(即使它们尚未完全写入;即流式传输),而无需等待从磁盘或网络读取整个内容。
我正在尝试使用 IPtables 的 TRACE 目标,但似乎无法记录任何跟踪信息。我想使用这里描述的内容: Debugger for Iptables。
来自 iptables man for TRACE:
Run Code Online (Sandbox Code Playgroud)This target marks packes so that the kernel will log every rule which match the packets as those traverse the tables, chains, rules. (The ipt_LOG or ip6t_LOG module is required for the logging.) The packets are logged with the string prefix: "TRACE: tablename:chain- name:type:rulenum " where type can be "rule" for plain rule, "return" for implicit rule at the end of a user defined chain and …
我有一台运行 centos 6.4 的小型服务器,它运行良好有一段时间了。仍然困扰我的一件事是我的日志文件中的时间与“日期”命令显示的时间不同。
例如:
date
Thu May 9 13:39:04 BST 2013
Run Code Online (Sandbox Code Playgroud)
当我使用 ssh 登录时,我在安全日志中得到一个日志条目:
May 9 08:37:08 xxxx sshd[28612]: pam_unix(sshd:session): session opened for user root by
Run Code Online (Sandbox Code Playgroud)
时差似乎总是5个小时。这让我觉得它与时区有关。
我的时钟
cat /etc/sysconfig/clock
ZONE="Europe/London"
Run Code Online (Sandbox Code Playgroud)
我的当地时间
ls -al /etc/localtime
lrwxrwxrwx 1 root root 33 Apr 2 15:13 /etc/localtime -> /usr/share/zoneinfo/Europe/London
Run Code Online (Sandbox Code Playgroud)
我的时钟输出
hwclock
Thu 09 May 2013 01:41:40 PM BST -0.938110 seconds
Run Code Online (Sandbox Code Playgroud)
所有时间设置(我知道)都是正确的。我重新启动了 sshd 服务和 cron 服务,但日志文件的时区仍然错误。
它似乎发生在许多日志文件上,例如消息、安全、邮件日志。只有来自简单程序(如 bfd、rkhunter 等)的日志文件具有正确的时间。
有没有人知道可能有什么问题?
我试图让 rsyslog 将所有日志发送到 2 个远程服务器,但如果第一个失败,rsyslog 似乎只发送到辅助服务器。
*.* @@server1
*.* @@server2
Run Code Online (Sandbox Code Playgroud)
如果我将上述内容放在 /etc/rsyslog.conf 中,只要 server1 启动,server2 就不会收到任何日志。无论如何,我如何告诉 rsyslog 发送到两台服务器?
此外,作为额外的奖励,如果远程服务器出现故障,我想使用 2 个不同的本地“缓冲区”文件进行本地存储。