linux定义系统日志文件,linux系统之日志文件系统详解

①、linux上日志系统类型:syslog和syslog-ng(开源版和商业版)

1、syslog服务:

syslogd:系统日志,非内核产生的信息

配置文件:/etc/syslog.conf、

配置以后利用service syslog reload(不用重启服务读取配置文件)

日志服务器配置:etc/sysconfig/syslog内SYSLOGD_OPTIONS="-m 0"改为SYSLOGD_OPTIONS="-r -m 0"即可作为日志服务器

klogd:内核日志,专门负责内核产生的信息

kernel启动的时候是物理终端(/dev/console),产生的日志信息在/var/log/dmesg

dmesg命令:可以直接查看/var/log/dmesg;也可以使用cat /var/log/dmesg查看。

sbin/init进程信息属于系统日志,放在以下位置:

/var/log/messages:系统标准错误日志信息,非内核产生的引导信息;各子系统产生的信息。

/var/log/maillog:邮件系统产生的日志信息

/var/log/secure:用户登陆信息日志

2、日志需要滚动:

message一段时间以后重新命名为message1..,然后新建一个message来存放日志。

logrotate:通过此命令对日志文件进行切片

/etc/cron.daily/logrotate

配置文件:/etc/syslog.conf

配置文件定义格式为: facility.priority  action

facility,可以理解为日志的来源或设备目前常用的facility有以下几种:

auth         # 认证相关的

authpriv     # 权限,授权相关的

cron         # 任务计划相关的

daemon       # 守护进程相关的

kern         # 内核相关的

lpr          # 打印相关的

mail         # 邮件相关的

mark         # 标记相关的

news         # 新闻相关的

security     # 安全相关的,与auth 类似

syslog       # syslog自己的

user         # 用户相关的

uucp         # unix to unix cp 相关的

local0 到 local7  # 用户自定义使用

*            # *表示所有的facility

priority(log level)日志的级别,一般有以下几种级别(从低到高)

debug           # 程序或系统的调试信息

info            # 一般信息

notice          # 不影响正常功能,需要注意的消息

warning/warn    # 可能影响系统功能,需要提醒用户的重要事件

err/error       # 错误信息

crit            # 比较严重的

alert           # 必须马上处理的

emerg/panic     # 会导致系统不可用的

*               # 表示所有的日志级别

none            # 跟* 相反,表示啥也没有

action(动作)日志记录的位置

系统上的绝对路径    # 普通文件 如: /var/log/xxx

|                   # 管道  通过管道送给其他的命令处理

终端              # 终端   如:/dev/console

@HOST               # 远程主机 如: @10.0.0.1

用户              # 系统用户 如: root

*                   # 登录到系统上的所有用户,一般emerg级别的日志是这样定义的

定义格式例子:

mail.info   /var/log/mail.log # 表示将mail相关的,级别为info及info以上级别的信息记录到/var/log/mail.log文件中

auth.=info@10.0.0.1         # 表示将auth相关的,基本为info的信息记录到10.0.0.1主机上去

# 前提是10.0.0.1要能接收其他主机发来的日志信息

user.!=error                  # 表示记录user相关的,不包括error级别的信息

user.!error                   # 与user.error相反

*.info                        # 表示记录所有的日志信息的info级别

mail.*                        # 表示记录mail相关的所有级别的信息

*.*                           # 你懂的.

cron.info;mail.info           # 多个日志来源可以用";" 隔开

cron,mail.info                # 与cron.info;mail.info 是一个意思

mail.*;mail.!=info            # 表示记录mail相关的所有级别的信息,但是不包括info级别的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值