当前位置--> 首 页 --> 文 章 -->Linux Develop

※阅读文章※

Linux程式设计- 6.syslog


作者:不祥 [文章出自: www.fanqiang.com]

在Linux下有个syslogd的Daemon程式,syslog是个系统管理员必看的档案。因此,如果您的程式有除错或安全讯息要显示,写到syslog是个很好的选择。 
syslog有三个函数,使用上,一般您只需要用syslog(...)这个函数即可,一般使用状况下,openlog/closelog是可有可无的。 

syslog()中的priority是facility及level的组合,其後参数的用法与printf无异。 

例:
#include  
#include  
#include  
#include  
void main(void) 

  if (fork()==0) { 
    for (;;) { 
      syslog(LOG_USER|LOG_INFO,"syslog programming test\n"); 
      sleep(10); 
    } 
  } 


检验:
tail -f /var/log/messages 
Mar 22 01:42:51 foxman log: syslog programming test 
Mar 22 01:43:31 foxman last message repeated 4 times 
Mar 22 01:44:31 foxman last message repeated 6 times 
Mar 22 01:45:31 foxman last message repeated 6 times 
Mar 22 01:46:21 foxman last message repeated 5 times 



--------------------------------------------------------------------------------

void openlog( char *ident, int option, int  facility) 
void syslog( int priority, char *format, ...) 
void closelog( void ) 
option 
       用於openlog()的option参数可以是以下几个的组合: 

       LOG_CONS : 如果送到system logger时发生问题,直接写入系统console。 
       LOG_NDELAY : 立即开启连接(通常,连接是在第一次写入讯息时才打开的)。 
       LOG_PERROR :  将讯息也同时送到stderr 
       LOG_PID :  将PID含入所有讯息中 

   facility 
       facility参数用来指定何种程式在记录讯息,这可让设定档来设定何种讯息如何处理。 

       LOG_AUTH : 安全/授权讯息(别用这个,请改用LOG_AUTHPRIV) 
       LOG_AUTHPRIV : 安全/授权讯息 
       LOG_CRON : 时间守护神专用(cron及at) 
       LOG_DAEMON : 其它系统守护神 
       LOG_KERN : 核心讯息 
       LOG_LOCAL0到LOG_LOCAL7 : 保留 
       LOG_LPR : line printer次系统 
       LOG_MAIL : mail次系统 
       LOG_NEWS : USENET news次系统 
       LOG_SYSLOG : syslogd内部所产生的讯息 
       LOG_USER(default) : 一般使用者等级讯息 
       LOG_UUCP : UUCP次系统 

   level 
       决定讯息的重要性.  以下的等级重要性逐次递减: 

       LOG_EMERG : 系统无法使用 
       LOG_ALERT : 必须要立即采取反应行动 
       LOG_CRIT : 重要状况发生 
       LOG_ERR : 错误状况发生 
       LOG_WARNING : 警告状况发生 
       LOG_NOTICE : 一般状况,但也是重要状况 
       LOG_INFO : 资讯讯息 
       LOG_DEBUG : 除错讯息 



文章加入时间: 2004-11-17 14:56:32 责任编辑: w9   (2885 人次查阅)
 
Copyright © 1998-2004 中国PHP联盟 All rights reserved.