在运维工作中,免不了编写一些脚本交由计划任务(cron)去定时执行完成一些日常工作,实现运维工作自动化。比如在我的日常工作中备份数据是一项重要的工作,需要定时将数据备份到备份服器和一些其他的备份介质中。其中大部分的备份工作都是写到脚本当中,并编辑/etc/crontab去定时完成备份任务。这样节省了不少日常工作的压力。
为了监控脚本的执行情况,在编写脚本的时候将执行情况的情况追加写入到本地指定的日志文件当中,定期去查看这些文件来确保任务被正确的执行。
但是,随着需要备份的服务器的增多,执行查看日志的工作就变成了一种负担。通常是需要逐个登录每台服务器去检查日志文件。
为了解决上述问题,我打算将所有的备份日志写入到一台备份服务器当中,这样就可以实现日志的集中收集管理和查看了。为些我在前几天搭建了一台日志服务器用来收集每台服务器的日志信息(请参见:Centos6.7搭建Rsyslog日志服务器)。
日志服务器也搭建完了,问题也出现了,如何将脚本中的执行情况写入到日志服务器中呢?其实,由于日志服务器已经搭建完成,只需要将需要记录信息写入到本地日志系统,那么本地rsyslog服务就会将日志信息同时写入到远端的日志服务器数据库中。
将自定义的信息写入到本地日志系统需要用到:logger 命令
logger 是一个shell 命令接口,可以通过该接口使用Syslog的系统日志模块,还可以从命令行直接向系统日志文件写入一行信息。
使用方法举例&#