Linux操作系统的日志管理常用技巧介绍

文章作者 100test 发表时间 2007:05:13 21:56:45
来源 100Test.Com百考试题网


  1.使用Shell向Syslog日志文件写入信息

  应用程序使用Syslog协议发送信息给Linux系统的日志文件(位于/var/log目录)。Sysklogd提供两个系统工具: 一个是系统日志记录, 另一个是内核信息捕获。通常大多程序都使用C语言或者Syslog应用程序或库来发送Syslog消息。

  下面介绍如何使用sShell向Syslog日志文件写入信息:

  (1). 使用Logger命令

  Logger命令是一个Shell命令(接口)。你可以通过该接口使用Syslog的系统日志模块 你还可以从命令行直接向系统日志文件写入一行信息。

  比如, 记录硬盘升级后的系统重启信息:

  $ logger System rebooted for hard disk upgrade

  然后你可以查看/var/log/message文件:

  # tail -f /var/log/message

  输出为:

  Jan 26 20:53:31 dell6400 logger: System rebooted for hard disk upgrade

  你也可以通过脚本程序来使用Logger命令。看下面的实例:

  #!/bin/bash

  HDBS="db1 db2 db3 db4"

  BAK="/sout/email"

  [ ! -d $BAK ] &.&. mkdir -p $BAK || :

  /bin/rm $BAK/*

  NOW=$(date "%d-%m-%Y")

  ATTCH="/sout/backup.$NOW.tgz"

  [ -f $ATTCH ] &.&. /bin/rm $ATTCH || :

  MTO="[email protected]"

  for db in $HDBS

  do

  FILE="$BAK/$db.$NOW-$(date "%T").gz"

  mysqldump -u admin -ppassword $db | gzip -9> $FILE

  done

  tar -jcvf $ATTCH $BAK

  mutt -s "DB $NOW" -a $ATTCH $MTO <     DBS $(date)

  EOF

  [ "$?" != "0" ] &.&. logger "$0 - MySQL Backup failed" || :

  如果MySQL数据库备份失败, 上面最后一行代码将会写入一条信息到/var/log/message文件。

  (2). 其它用法

  如果你需要记录/var/log/myapp.log文件中的信息, 可以使用:

  $ logger -f /var/log/myapp.log

  把消息发送到屏幕(标准错误), 如系统日志:

  $ logger -s "Hard disk full"



相关文章


Linux内存中Swap和BufferCache机制
Linux操作系统的日志管理常用技巧介绍
审计并跟踪Linux系统的异常活动详解
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛