赞
踩
syslog
是一种标准用于记录程序运行日志信息的协议。以下是一些基本使用方法:
syslogd
进程确保 syslogd
进程正在运行。可以通过以下命令检查:
ps | grep syslogd
如果没有看到 syslogd
进程在运行,可以尝试启动它:
/etc/init.d/syslog start
或者在某些系统上:
/etc/init.d/log restart
确保日志目录存在并且具有正确的权限。例如,如果日志存储在 /var/log
目录下,确保该目录存在并且具有写入权限:
mkdir -p /var/log
chmod 755 /var/log
syslog.conf
文件用于配置 syslogd
服务,以定义系统日志消息的记录方式和存储位置。
每一行的格式如下:
facility.level destination
facility
:日志设施,表示消息的来源(例如 auth
, cron
, daemon
, kern
, user
, mail
等)。level
:日志级别,表示消息的重要性(例如 debug
, info
, notice
, warning
, err
, crit
, alert
, emerg
)。destination
:日志消息的目的地,可以是文件、控制台、远程主机等。记录所有消息到 /var/log/messages
文件:
*.* /var/log/messages
记录内核消息到 /var/log/kern.log
文件:
kern.* /var/log/kern.log
记录认证相关消息到 /var/log/auth.log
文件:
auth.* /var/log/auth.log
记录邮件相关消息到 /var/log/mail.log
文件:
mail.* /var/log/mail.log
记录 cron 作业相关消息到 /var/log/cron.log
文件:
cron.* /var/log/cron.log
记录所有警告级别及以上的消息到控制台(虚拟终端1):
*.warn /dev/tty1
将重要的系统消息发送到远程主机:
*.crit @remote-host
忽略某些消息:忽略邮件和新闻的 debug 消息:
mail.none;news.none /var/log/messages
以下是一个示例 syslog.conf
文件的完整配置:
# Log all kernel messages to the console. kern.* /dev/console # Log anything (except mail) of level info or higher. # Don't log private authentication messages! *.info;mail.none;authpriv.none;cron.none /var/log/messages # The authpriv file has restricted access. authpriv.* /var/log/auth.log # Log all the mail messages in one place. mail.* /var/log/mail.log # Log cron stuff. cron.* /var/log/cron.log # Everybody gets emergency messages. *.emerg * # Save news errors of level crit and higher in a special file. uucp,news.crit /var/log/spooler # Save boot messages also to boot.log local7.* /var/log/boot.log
修改 syslog.conf
文件后,需重新启动 syslogd
服务以使配置生效:
/etc/init.d/syslog restart
logger
命令是一个用于从命令行发送日志消息到 syslog
的工具。可以通过 -p
选项指定日志消息的 facility
和 level
。
logger -p facility.level "log message"
将日志消息记录到 auth
设施中,级别为 info
:
logger -p auth.info "This is an auth info message"
将日志消息记录到 daemon
设施中,级别为 warning
:
logger -p daemon.warning "This is a daemon warning message"
将日志消息记录到 local0
设施中,级别为 notice
:
logger -p local0.notice "This is a local0 notice message"
facility
类型auth
:认证和安全相关的消息cron
:定时任务相关的消息daemon
:系统守护进程相关的消息kern
:内核相关的消息local0
到 local7
:本地使用的自定义消息mail
:邮件系统相关的消息syslog
:syslog 系统相关的消息user
:用户级消息uucp
:UNIX-to-UNIX Copy Program 相关的消息level
级别debug
:调试级别的消息info
:信息级别的消息notice
:通知级别的消息warning
:警告级别的消息err
:错误级别的消息crit
:严重错误级别的消息alert
:需要立即处理的消息emerg
:系统无法使用的紧急消息以下是一个完整的示例,展示如何使用不同的 facility
和 level
记录日志消息:
logger -p auth.info "User login successful"
logger -p daemon.warning "Service is using high memory"
logger -p local0.notice "Custom application notice message"
通过使用这些选项,您可以灵活地将日志消息发送到适当的设施和级别,以便更好地分类和管理系统日志。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。