我希望能够在 syslogd 记录某些内容时收到电子邮件通知,例如err优先级或更高。假设这是一个与 BSD 兼容的系统日志守护进程。
我想在我的 ErrorLog 中添加 vhost 名称,然后将其通过管道传输到我编写的程序中。
是否可以像访问日志一样编写自定义错误日志格式?
我们正在运行 Apache 2.2.9 (Win32),在一台服务器上配置了一些虚拟主机。每个都有自己的 ErrorLog 和 CustomLog 设置,格式为“logs/[域名]-error.log”和“logs/[域名]-access.log”。不幸的是,这些现在正在创建相当大的文件。
在 IIS 上,您可以指定日志计划,它可以将它们置于“yymmdd.log”的每日格式中。我可以在这里做类似的事情吗?
也不一定是每天,每周或每月都可以。我只想将它们分解,以便我们可以保留 X 数量而不是它曾经记录的所有内容。一个快速的谷歌似乎提出了许多面向 Linux 的答案,涉及日志拆分器、脚本和 cron 作业,这对 Windows 安装没有太大帮助。
更新
感谢radius,我调整了我的httpd-vhosts.conf以使用Apache 内置的rotatelogs命令,格式如下:
ErrorLog "|bin/rotatelogs logs/[domain name]-error.%Y-%m-%d-%H_%M_%S.log 5M"
CustomLog "|bin/rotatelogs logs/[domain name]-access.%Y-%m-%d-%H_%M_%S.log 5M" common
当当前日志文件达到 5MB 时,他们将创建一个新的日志文件。我知道这不是每天所要求的,但这可以使它们保持在可管理的规模上。几秒钟后我确实尝试了旋转,但它似乎没有正确地将时间戳记放在文件名中(特别是小时、分钟和秒)。
我在家里为我的个人网站运行我自己的服务器,运行带有 Apache、Bind9 和 Django 的 Ubuntu Server。您建议最好定期跟踪哪些日志?(而不是在出现问题时阅读)。我正在考虑检测入侵尝试(我以前遇到过 SSH 错误)和我网站上的异常流量或错误。
因此,我阅读了许多与此相关的帖子,并且比以前更加困惑。建议使用各种工具,包括 ttyrec、snoopy、acct、rootsh、sudosh、ttyrpld、unix 审计等。
就我而言,我希望能够记录系统上执行的所有命令(例如启用时间戳的历史记录),但我也想知道谁做了什么?但是,我们都通过 ssh 登录到同一个用户帐户的小子集(取决于我们在做什么)。如何获取命令日志,包括“谁”将给我的信息(关于连接),以便我可以将操作追踪到特定的人,作为对普通“用户”的摆姿势?
我刚刚设置了一个 Graylog2 服务器,我希望将所有日志从我的主服务器发送到 Graylog 服务器。我已启用主服务器的日志记录,并通过添加*.* @logs.example.com:1337到/etc/rsyslog.conf.
我想要的是让 Graylog2 收集我所有的 Apache 日志、系统日志(用于 SSH 登录、拒绝登录)以及我需要监控的任何其他日志。
对于 Apache 日志,我还想要 Rails 日志。我的网站位于/srv/www/,然后结构是sitename.com/public_html和sitename.com/logs。我在服务器上有很多站点,我想要一种简单的方法来查看所有错误并从中制作一些漂亮的图表,因此我想使用 Graylog2 ...
日志文件夹中的日志文件是access.log和error.log。
Rails 日志将在sitename.com/public_html/log. 这包含production.log.
在 Solaris 上,命令“fwtmp”从 wtmp 日志中提供年份信息。例如:
host # /usr/lib/acct/fwtmp < /var/adm/wtmpx > tmp_wtmpx_file
host # head -1 tmp_wtmpx_file
user123 sshd 1258 7 0000 0000 1226072918 230489 0 29 host123.desktop.ourhost.com Fri Nov 7 09:48:38 2008
Run Code Online (Sandbox Code Playgroud)
在 Linux 上,'last' 输出没有年份信息的数据,我似乎无法在 Linux 上找到类似于 'fwtmp' 的实用程序来添加年份数据。“lastlog”命令在输出中包含年份,但只查找 passwd 文件中的用户(默认情况下不针对 ldap 或其他用户数据库)。Linux 上是否有一个实用程序可以输出年份以及来自“last”的其他数据?
我有带有 Nginx 和 PHP-FPM 的 Fedora 16。一切都很好。所有带有 PHP 通知、警告、错误等的日志都在/var/log/php-fpm/www-error.log.
有没有办法配置 PHP-FPM 在配置为 Nginx 错误日志的正确日志文件中写入错误?所以我想记录每个虚拟主机的PHP 错误,而不是在一个全局文件中。(就像在 Apache Httpd 和 PHP 中一样)。
如何记录所有通过 sSMTP 的电子邮件?
我可以将我的应用程序指向一个包装器脚本,我只是不知道如何编写一个包装器脚本来将标头和内容记录到文件中(尽可能多的信息)。
谢谢!:-)
有没有办法将用户名或用户 ID 存储在 nginx 日志中。我尝试在 log_format 指令中插入 $remote_user 但它似乎不起作用。