linux中etc klog,Syslog日志中心服务(centos)

SYSLOG服务

linux依旧使用syslogd作为日志监控进程,而在主流的linux发行版中依旧使用sysklog这个比较老的日志服务器套件。

syslog.conf内格式:

facility.level action

设备.优先级 动作

facility.level 字段也被称为seletor(选择条件),选择条件和动作之间用空格或tab分割开。

服务器1(日志服务器):kinggoo.com

服务器2:tscccn.com

服务器1上设置如下:

请将防火墙关掉,或者允许514端口通过syslog的守护进程要用到514端口

cat  /etc/sysconfig/syslog

# Options to syslogd

# -m 0 disables 'MARK' messages.

# -r enables logging from remote machines

# -x disables DNS lookups on messages recieved with -r //禁用掉dns记录项不够齐全或其他的日志中心的日志

# See syslogd(8) for more details

#

SYSLOGD_OPTIONS="-r -x -m 180"

# 加 -r 选项以允许接受外来日志消息

# 加 -x 禁用掉dns记录项不够齐全或其他的日志中心的日志

# 加 -m 修改syslog的内部mark消息写入间隔时间(0为关闭)。例如-m 180,表示每隔180分钟(每天8次)在日志文件里增加一行时间戳消息

# 加 -h 默认情况下,syslog不会发送从远端接受过来的消息到其他主机,而使用该选项,则把该开关打开,所有接受到的信息都可根据syslog.conf中定义的@主机转发过去。

# Options to klogd

# -2 prints all kernel oops messages twice; once for klogd to decode, and

# once for processing with 'ksymoops'

# -x disables all klogd processing of oops messages entirely

# See klogd(8) for more details

KLOGD_OPTIONS="-x"

#

SYSLOG_UMASK=077

# set this to a umask value to use for all log files as in umask(1).

# By default, all permissions are removed for "group" and "other".

接着向/etc/syslog.conf内写入(用来保存日志的,这个可以根据情况自己设定)

*.* /var/log/local4messages

重新启动syslog守护进程。修改只有在syslog守护进程重新启动后才会生效。如果你只想重新启动syslog守护进程而不是整个系统,在Centos机器上,执行以下两条命令:

service syslog restart

或(两条作用相同)

/etc/rc.d/init.d/syslog stop

/etc/rc.d/init.d/syslog start

/etc/rc.d/init.d/syslog restart

服务器2

在有关设置行的操作动作部分用一个“@”字符指向中心日志服务器。下面这种配置的时候,在日志服务器上就可以看到对方的一下日志信息了比如添加用户等

这个时候就可以参考一下本文中的“facility”部分

cat  /etc/syslog.conf

# Log all kernel messages to the console.

# Logging much else clutters up the screen.

#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/secure

####这里是重点,在里可以设置一些级别等等,不然在就产生双份的日志了

authpriv.* @服务器1

# Log all the mail messages in one place.

mail.* -/var/log/maillog

# Log cron stuff

cron.* /var/log/cron

# 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

# 写成这样就是把所有的信息都同步过去

*.* @服务器1

这样在服务器1的/var/log/local4messages这个日志文件中就可以看到对方的操作了!

syslog还有很多有意思的功能,比如可以让某个用户窗口显示日志等等

参考内容:

/etc/syslog.conf 根据如下的格式定义规则:

action

设备.优先级 动作 字段也被称为seletor(选择条件),选择条件和动作之间用空格或tab分割开。

#号开头的是注释,空白行会自动跳过。

facility

facility定义日志消息的范围,其可使用的key有:auth -由 pam_pwdb 报告的认证活动。

authpriv -包括特权信息如用户名在内的认证活动

cron -与 cron 和 at 有关的计划任务信息。

daemon -与 inetd 守护进程有关的后台进程信息。

kern -内核信息,首先通过 klogd 传递。

lpr -与打印服务有关的信息

mail -与电子邮件有关的信息

mark - syslog内部功能用于生成时间戳

news -来自新闻服务器的信息

syslog -由 syslog 生成的信息

user -由用户程序生成的信息

uucp -由 uucp 生成的信息

local0-local7 -与自定义程序使用

* 通配符代表除了 mark 以外的所有功能除mark为内部使用外,还有security为一个旧的key定义,等同于auth,已经不再建议使用。

level级别

level 定义消息的紧急程度。按严重程度由高到低顺序排列为:emerg -该系统不可用,等同panic

alert -需要立即被修改的条件

crit -阻止某些工具或子系统功能实现的错误条件

err -阻止工具或某些子系统部分功能实现的错误条件,等同error

warning -预警信息,等同warn

notice -具有重要性的普通条件

info -提供信息的消息

debug -不包含函数条件或问题的其他信息

none -没有重要级,通常用于排错

* 所有级别,除了none其中,panic、error、warn均为旧的标识符,不再建议使用。

在定义level级别的时候,需要注意两点:

1)优先级是由应用程序在编程的时候已经决定的,除非修改源码再编译,否则不能改变消息的优先级;

2)低的优先级包含高优先级,

例如,为某个应用程序定义info的日志导向,则涵盖notice、warning、err、crit、alert、emerg等消息。(除非使用=号定义)

例如:

logger [-isd] [-f file] [-p pri] [-t tag] [-u socket] [message ...]

例如,要模拟daemon emerg的消息,可以使用如下命令:

logger -p daemon.emerg “test info”

困不行了,先发这么多,明天有 《nginx使用syslog日志服》

- THE END -

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值