커피닉스, 시스템 엔지니어의 쉼터
  syslog의 Priority와 Facility 값 작성일 : 2012/01/09 18:36
 
  • 글쓴이 : 좋은진호 ( http://coffeenix.net/ )
  • 조회수 : 7372
     
    제  목 : syslog의 Priority와 Facility 값
    작성자 : 좋은진호(truefeel, http://coffeenix.net/ )
    작성일 : 2012.1.9(월)

    /usr/include/sys/syslog.h (FreeBSD는 /usr/include/syslog.h)파일을 보고 값을 계산했다.
    로깅 설정시 숫자로 설정해야할 경우에 사용

     
    /* priorities (these are ordered) */
    #define LOG_EMERG       0       /* system is unusable */
    #define LOG_ALERT       1       /* action must be taken immediately */
    #define LOG_CRIT        2       /* critical conditions */
    #define LOG_ERR         3       /* error conditions */
    #define LOG_WARNING     4       /* warning conditions */
    #define LOG_NOTICE      5       /* normal but significant condition */
    #define LOG_INFO        6       /* informational */
    #define LOG_DEBUG       7       /* debug-level messages */
     


    LOG_EMERG  = 0
    LOG_ALERT  = 1
    LOG_CRIT   = 2
    LOG_ERR    = 3
    LOG_WARNING = 4
    LOG_NOTICE = 5
    LOG_INFO   = 6
    LOG_DEBUG  = 7

     
    /* facility codes */
    #define LOG_KERN        (0<<3)  /* kernel messages */
    #define LOG_USER        (1<<3)  /* random user-level messages */
    #define LOG_MAIL        (2<<3)  /* mail system */
    #define LOG_DAEMON      (3<<3)  /* system daemons */
    #define LOG_AUTH        (4<<3)  /* security/authorization messages */
    #define LOG_SYSLOG      (5<<3)  /* messages generated internally by syslogd */
    #define LOG_LPR         (6<<3)  /* line printer subsystem */
    #define LOG_NEWS        (7<<3)  /* network news subsystem */
    #define LOG_UUCP        (8<<3)  /* UUCP subsystem */
    #define LOG_CRON        (9<<3)  /* clock daemon */
    #define LOG_AUTHPRIV    (10<<3) /* security/authorization messages (private) */
    #define LOG_FTP         (11<<3) /* ftp daemon */

    /* other codes through 15 reserved for system use */
    #define LOG_LOCAL0      (16<<3) /* reserved for local use */
    #define LOG_LOCAL1      (17<<3) /* reserved for local use */
    #define LOG_LOCAL2      (18<<3) /* reserved for local use */
    #define LOG_LOCAL3      (19<<3) /* reserved for local use */
    #define LOG_LOCAL4      (20<<3) /* reserved for local use */
    #define LOG_LOCAL5      (21<<3) /* reserved for local use */
    #define LOG_LOCAL6      (22<<3) /* reserved for local use */
    #define LOG_LOCAL7      (23<<3) /* reserved for local use */
     


    위에서 <<3은 왼쪽으로 3번 shift하라는 것이다.
    예를들어 LOG_LOCAL1의 17<<3 은 17(2진수 10001)을 왼쪽으로 3번 shift한다. 즉 2진수 10001000 = 136

    LOG_KERN   = 0
    LOG_USER   = 8
    LOG_MAIL   = 16
    LOG_DAEMON = 24
    LOG_AUTH   = 32
    LOG_SYSLOG = 40
    LOG_LPR    = 48
    LOG_NEWS   = 56
    LOG_UUCP   = 64
    LOG_CRON   = 72
    LOG_AUTHPRIV =  80
    LOG_FTP    =  88
    LOG_LOCAL0 = 128
    LOG_LOCAL1 = 136
    LOG_LOCAL2 = 144
    LOG_LOCAL3 = 152
    LOG_LOCAL4 = 160
    LOG_LOCAL5 = 168
    LOG_LOCAL6 = 176
    LOG_LOCAL7 = 184

     
    /*
    * Option flags for openlog.
    *
    * LOG_ODELAY no longer does anything.
    * LOG_NDELAY is the inverse of what it used to be.
    */
    #define LOG_PID         0x01    /* log the pid with each message */
    #define LOG_CONS        0x02    /* log on the console if errors in sending */
    #define LOG_ODELAY      0x04    /* delay open until first syslog() (default) */
    #define LOG_NDELAY      0x08    /* don't delay open */
    #define LOG_NOWAIT      0x10    /* don't wait for console forks: DEPRECATED */
    #define LOG_PERROR      0x20    /* log to stderr as well */
     


    LOG_PID    = 1
    LOG_CONS   = 2
    LOG_ODELAY = 4
    LOG_NDELAY = 8
    LOG_NOWAIT = 16
    LOG_PERROR = 32


    커피닉스, 시스템 엔지니어의 쉼터 / URL : http://coffeenix.net/board_view.php?bd_code=1729