LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1892|回复: 9

如何自定义一个应用程序的日记记录?

[复制链接]
发表于 2004-2-2 15:05:40 | 显示全部楼层 |阅读模式
比如,想记录ping的相关动作,那该如何办?
我在/etc/syslog.conf中加入一条:
ping.info         /var/log/ping
重新启动是出现:
syslogd: unkown facility name "ping"

我不知道该如何做才行?怎么才能知道ping的log级别??也就是说,如何知道一个应用程序的log级别(比如,crit,warning,info,等等。)
发表于 2004-2-2 17:01:18 | 显示全部楼层
man syslog.conf
 楼主| 发表于 2004-2-3 14:16:22 | 显示全部楼层
谢谢回复,但是还是不太明白呀,那就是,我如何知道我要做日志的应用程序的facility和priority呢?就拿最简单的ping而言,它的facility和priority分别是什么呢?怎么得知的??
谢谢
发表于 2004-2-3 15:44:24 | 显示全部楼层
据我所知,ping是不会往系统日志写东西的,一般只有守护进程才会写日志.

如果一定要往日志里写,可以用logger命令,如:
echo foo | logger

详细信息请看:
man logger
 楼主| 发表于 2004-2-3 16:30:23 | 显示全部楼层
哦,原来是这样,那,比如我自己写了一个守护进程,我想为这个进程做日志记录,那由如何办呢??如何确定自己编写的这个守护进程的facility和priority??请继续关注
发表于 2004-2-3 16:56:46 | 显示全部楼层
man 3 syslog
 楼主| 发表于 2004-2-3 17:31:00 | 显示全部楼层
是不是说,非要显示的调用写日志的函数库才能往指定的文件写日志?
发表于 2004-2-3 17:36:12 | 显示全部楼层
是的,间接的调用函数库也可以(比如在脚本中调用logger程序).

调用相关函数只是把日志信息送给syslogd,至于这些信息最终写到哪个文件可以通过/etc/syslog.conf来配置.

一般的Unix编程书都会讲日志函数的使用,随便找本看看就清楚了,这种问题不是在论坛上发几个帖子能说明白的.
 楼主| 发表于 2004-2-3 17:38:54 | 显示全部楼层
多谢指点!!非常感谢!!
 楼主| 发表于 2004-2-4 11:20:51 | 显示全部楼层
我现在明白了一点,我自己写了个程序,调用了syslog(),运行一下,结果信息写到了/var/log/messages,同时也写到了/var/log/ping中,我查了查/etc/syslog.conf发现,在这个文件中,有一条是:*.info xxxxxxx /var/log/messages还有一条是:user.*  /var/log/messages。看来用户自己写的程序的facility是属于LOG_USER了。但是,现在有点不是很明白,facility中还有local0~~local7这8个给自定义程序使用,怎么利用它们呢?能否将他们其中的一个(未被使用的)分配给我的那个程序使用?请继续关注,谢谢。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表