YRV*_*RVK 5 monitoring shell-script
我想监控日志文件中的错误,然后向管理员发送电子邮件。
日志文件包含如下数据
11 Aug 02:30 Service1 restarted
11 Aug 05:35 Service1 restarted
11 Aug 08:43 Service2 restarted
11 Aug 11:20 Service1 restarted
11 Aug 14:53 Service2 restarted
Run Code Online (Sandbox Code Playgroud)
我想创建一个每 5 分钟运行一次的脚本,并检查最后一次服务重启并发送电子邮件。
例如:如果脚本在 02:35 运行,它会看到Service1重新启动,因此它会发送一封电子邮件,如Service1 restarted at 02:30. 现在,当脚本在 5:45 运行时,它应该发送Service1仅在 05:35 重新启动的电子邮件(不应包括 02:35 重新启动)
有没有办法达到这个要求?我基本上是 Linux 和 Shell 脚本的新手
首先创建一个五分钟的 crontab:
*/5 * * * * myscript.sh
Run Code Online (Sandbox Code Playgroud)
它运行 myscript.sh (在$HOME目录中)
#!/bin/bash
tail -1 /path/to/file.log > /some/dir/after
if cmp -s /some/dir/after /some/dire/before
then
cat /some/dir/after | mail -s "restart" admin@exemple.com
cp /some/dir/after /some/dir/before
fi
Run Code Online (Sandbox Code Playgroud)
具有正确的价值观(当然)。
请注意,这意味着五分钟内不会有两次重新启动。
| 归档时间: |
|
| 查看次数: |
19014 次 |
| 最近记录: |