前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用Logwatch查看系统日志

使用Logwatch查看系统日志

作者头像
魔法少女伊莉雅
发布2018-09-07 16:18:00
6.8K0
发布2018-09-07 16:18:00

Logwatch是一个日志解析程序,可以分析并生成有关系统活动的每日报告。Logwatch不提供实时警报,而是创建系统运行状态的摘要,以便于查看。更高级的用户还可以将Logwatch与它们自己的分析脚本对比,以获得更准确的系统状态报告。

默认情况下,Logwatch使用Sendmail发送摘要。

注意本指南中所需的步骤需要root权限。请务必以root身份运行以下步骤。如果以超级用户身份登录,建议您su进入root用户。有关权限的更多信息,请参阅我们的用户和组指南。

安装Logwatch和Sendmail

Arch Linux

  1. 更新您的系统: pacman -Syu
  2. 安装Logwatch和Postfix,以替换默认的Sendmail,它不在Arch的源中。 pacman -S logwatch postfix Logwatch将提示您选择要使用的cron提供程序。选择默认的cronie注意其他SMTP客户端也可用于发送Logwatch消息。
  3. 编辑/etc/postfix/main.cf文件以添加域名信息,并使其只能发送邮件,替换hostname.example.com为您自己的主机名和域名: /etc/postfix/main.cf 1 2 myhostname = hostname.example.com inet_interfaces = loopback-only注意需要为您的域名设置A / AAAA和MX记录。
  4. 编辑/etc/postfix/aliases以取消注释root并为其设置别名root@hostname.example.com,替换hostname.example.com为您自己的主机名和域名: /etc/postfix/aliases 1 root: root@hostname.example.com
  5. 编辑别名列表后运行newaliases
  6. 启动postfix服务: systemctl start postfix

CentOS 7

  1. 更新您的系统: yum update
  2. 安装Logwatch和Sendmail: yum install logwatch sendmail
  3. 启动Sendmail: systemctl start sendmail

Debian

  1. 更新您的系统: apt-get update && apt-get upgrade
  2. 安装Logwatch和Sendmail: apt-get install logwatch sendmail-bin sendmail

Fedora

  1. 更新您的系统: dnf update
  2. 安装Logwatch和Sendmail: dnf install logwatch sendmail
  3. 启动Sendmail: systemctl start sendmail

Ubuntu

  1. 更新您的系统: apt-get update && apt-get upgrade
  2. 安装Logwatch和Sendmail: apt-get install logwatch sendmail

配置Logwatch

Logwatch的默认配置文件位于/usr/share/logwatch/default.conf/logwatch.conf。此文件包含Logwatch要跟踪的目录,输出摘要的方式和位置以及其要跟踪的服务的信息。

以下设置是需要进行的主要更改。其他的可以在logwatch.conf文件注释中找到解释。

注意如果Logwatch似乎没有运行,请在logwatch.conf文件中将Details设置更改为Med

日志目录

默认情况下,Logwatch摘要将包含/var/log中所有日志。如果任何其他目录包含日志,例如网站目录,则可以通过LogDir行来添加它们。例如:

/usr/share/logwatch/default.conf/logwatch.conf

1 2

LogDir = /var/log LogDir = /var/www/example.com/logs

将Logwatch Digest打印到控制台

默认的Logwatch配置会将摘要输出到您的Linode控制台。这是使用stdout默认设置的Output变量定义的。如果您打算只是手动运行Logwatch,但是不保存日志或将日志发送给您以供稍后阅读,则此选项是可行的。

电子邮件Logwatch Digest

Logwatch摘要可以以纯文本或HTML格式发送给本地用户或外部电子邮件地址。

注意在外部或本地发送邮件之前,请确保在Linode上安装了Sendmail。如果选择使用其他MTA客户端,请更改mailerLogwatch配置文件中的/usr/sbin/sendmail行以包含所选MTA的目录或MTA的别名。 如果使用Arch,并按照上述安装说明操作,则Sendmail已经为msmtp设置了别名。

  1. Output值更改为mail。如果您希望以HTML格式接收消息,请将Format值更改为html
  2. MailTo地址更改为有效的电子邮件地址或本地帐户用户。例如,要向root用户发送邮件,请将/usr/share/logwatch/default.conf/logwatch.conf中的相关行更改为: MailTo = root
  3. MailFrom值更改为有效的电子邮件地址或本地用户。也可以保留为Logwatch

将Logwatch摘要保存到文件

Logwatch摘要也可以保存到系统上的文件中。

  1. Output值更改为file
  2. 查找并取消注释(删除散列标记[ ])Filename。设置要保存Logwatch摘要的路径和文件名。

运行Logwatch

手动运行Logwatch

通过将logwatch命令输入控制台,可以随时手动运行Logwatch 。此命令可附加许多选项以更改默认输出以满足您的需要:

  • --detail:可以设置为低,中,高或1到10之间的任何数值。定义报告的详细程度。
  • --logdir:包含您希望获取的日志文件的目录。
  • --service:您要报告的服务。
  • --output:您希望如何发送摘要:标准输出(stdout),邮件或文件。
  • --format:纯文本或HTML。
  • --mailto:将报告发送到的本地用户或电子邮件地址。

通过Cron运行Logwatch

配置为每天运行并发送或保存报告以供日后查看时,Logwatch通常效果最佳。这可以通过将Logwatch设置为以cronjob运行来实现。

  1. 打开crontab: crontab -e
  2. 为Logwatch添加一行。以下代码配置为每天00:30运行,将代码添加到/ etc / crontab中第一行: 30 0 * * * /usr/sbin/logwatch有关crontab的更多信息,请参阅我们的Cron计划任务指南。
评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 安装Logwatch和Sendmail
    • Arch Linux
      • CentOS 7
        • Debian
          • Fedora
            • Ubuntu
            • 配置Logwatch
              • 日志目录
                • 将Logwatch Digest打印到控制台
                  • 电子邮件Logwatch Digest
                    • 将Logwatch摘要保存到文件
                    • 运行Logwatch
                      • 手动运行Logwatch
                        • 通过Cron运行Logwatch
                        领券
                        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档