专栏首页使用Logwatch查看系统日志

使用Logwatch查看系统日志

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 条评论
登录 后参与评论

相关文章

  • 使用wget命令在命令行下下载资源

    wget是一个命令行实用程序,它从Internet检索文件并将它们保存到本地文件系统。任何可以通过HTTP或FTP协议访问的文件都能利用wget进行下载。wge...

    魔法少女伊莉雅
  • FHSS和物联网

    工业物联网形成的新的数字前景正在极大地改变着企业开展业务的方式。因此,大多数企业必须适应现代网络需求,以便在快速发展的数据驱动型市场保持竞争力。为了帮助企业满足...

    魔法少女伊莉雅
  • 在Debian和Ubuntu上安装军团要塞2服务器

    Team Fortress 2是一支以团队为基础的第一人称射击游戏,您和其他玩家可以在这里组成团队玩各种游戏模式。从争夺国旗到与你的团队一起对抗机器人部落的战斗...

    魔法少女伊莉雅
  • Seaborn从零开始学习教程(三)

    当处理一个数据集的时候,我们经常会想要先看看特征变量是如何分布的。这会让我们对数据特征有个很好的初始认识,同时也会影响后续数据分析以及特征工程的方法。本篇将会介...

    用户2769421
  • 音视频混流基本原理

    在直播场景里,我们经常需要将多个视频画面混合成一个视频画面(或是多路音频合成一路声音),常见的场景如:

    jansonjiang
  • 答题类小程序大热回归,连「国家队」也出来搞事情 | 晓访

    知晓君
  • Seaborn

    color_map = dict(zip(iris.Name.unique(), ['blue','green','red']))

    慕白
  • Seaborn强大的调色功能

    def sinplot(): x = np.linspace(0,14,100) plt.figure(figsize=(8,6)) f...

    慕白
  • 小白也能看懂的seaborn入门示例

    Seaborn就是让困难的东西更加简单。它是针对统计绘图的,一般来说,能满足数据分析90%的绘图需求。Seaborn其实是在matplotlib的基础上进行了更...

    1480
  • (数据科学学习手札62)详解seaborn中的kdeplot、rugplot、distplot与jointplot

      seaborn是Python中基于matplotlib的具有更多可视化功能和更优美绘图风格的绘图模块,当我们想要探索单个或一对数据分布上的特征时,可以使用到...

    Feffery

扫码关注云+社区

领取腾讯云代金券