FREEDOM. FRIENDS. FEATURES. FIRST. 페도라 한국 사용자 모임

Kernel Log Engine(klogd)+ syslogd + metalog

게시판 Tech/Tip Kernel Log Engine(klogd)+ syslogd + metalog

  • This topic has 2개 답변, 2명 참여, and was last updated 15 years, 4 months 전에 by
    인베인. This post has been viewed 1690 times
  • #12045
    인베인
    참가자
      게시글147 댓글411 총합558
    @leemgs
     


    1. Kernel Log Engine(klogd)
    */proc/kmesg를 읽거나 sys_syslog 호출 후 메시지가 들어오기를 기다리면서 sleep 함.
    Kernel Message가 /proc/kmsg 에 들어가고 klogd가 이것을 분석해서 syslogd로 보내주어
    syslogd가 처리해주는 구조로 되어 있다. syslogd와 klogd가 실행중이라면 메시지는
    /var/log/messages에 추가 된다.

    로그관련 라이브러리나 함수들이 그렇듯이 printk도 우선순위(priority)를 가진다. 모두 8단계의 우선순위를 가지며
    <1> KERN_ALERT 와 같은 방식으로 결정할 수 있다. 이들 우선순위에 대한 선언정보는
    ./linux/kernel.h에서 확인할 수 있다. 만약 우선순위를 정하기 귀찮거나 정할 수 없다면 기본 우선순위
    DEFAULT_MESSAGE_LOGLEVEL을 사용하면 된다.

    * 장/단점
    단점 : 앞의 메시지를 읽어가지 않으면 잃어버릴 가능성 있음.
    장점 : 고정된 양의 메모리로 커널 메시지 처리 가능.

    *동작
    . klogd는 읽은 커널 메시지(/proc/kmesg)를 syslogd로 전달.
    . syslogd는 /etc/syslog.conf를 참조하여 메시지를 처리함.
    .메시지 종류 : 커널 or 사용자 프로세스 메시지
    .우선순위 : printk에서 사용한 우선 순위.
    . klogd가 실행되지 않으면 커널 메시지는 fifo 순서로 잃게 됨.
    fc6#> /sbin/klogd &
    fc6#> cat /var/log/messages
    or
    fc6#> klogd -o -f ./krnl.msg
    fc6#> klogd -c 4
    fc6#> kill -USR2 $(cat /var/run/klogd.pid)

    * klogd(커널 버전 1.3 이상)는 oops 메시지를 해석할 수 있음
    .시작 시 “-k /usr/src/linux/System.map” 인자를 주어야 함.
    .단점 : 모듈에 있는 심볼에 대해서는 해석을 하지 않는다. 최신 버전에서는 지원됨

    * BusyBox ver 0.60.5 이후부터 klogd 포함됨.
     ./busybox-1.2.2.1/sysklogd/klogd.c
     ./busybox-1.2.2.1/sysklogd/syslogd.c

    2. klogd/syslogd 시작시 화면
    Starting kernel log daemon: klogd.
    Starting system log daemon: syslogd.

    #>vi /etc/syslog.conf
    #> cat /var/log/messages
    #> cat /var/log/syslog

    3. 사용방법 도움말
    fc6#> man klogd

    4. syslogd, klogd 를 대체하는 metalog  Project( May 6, 2007)
    Metalog 는 syslogd 와 klogd 의 기능을 대체할 최신 로그 시스템이다.
    로그 메세지는 각 특성별로 분류되어 정리할 수 있으며, 로그 파일이 일정한 크기나 기간에 도달하게되면
    자동으로 바꿀 수 있도록 하는 기능도 제공한다.

    http://metalog.sourceforge.net/
    http://metalog.cvs.sourceforge.net/metalog/metalog/

    fc6#> ./configure
    fc6#> make install-strip
    fc6#> vi /etc/metalog.conf
    fc6#> /usr/local/sbin/metalog &
    fc6#> kill -USR2 $(cat /var/run/metalog.pid)

    * 오픈소스는 Open Innovationa & 윈윈전략을 도모할 지언정 절대 공짜(무료)임을 뜻하지 않는다.치

1 답변 글타래를 보이고 있습니다
    • #12602
      ELem
      참가자
        게시글74 댓글709 총합783
      @Bardisch
       

      로그 읽는것도 시간때우기엔 좋죠[응?]

       
    • #12603
      인베인
      참가자
        게시글147 댓글411 총합558
      @leemgs
       

      맞습니다. 시간 잘갑니다. ㅎㅎ 로그의 정확한 해석을 하려면 서서히 리눅스 커널의 세계로 들어가게 되죠.. 그때 부터 어둠은 시작되고....ㅋㅋ

       

      * 오픈소스는 Open Innovationa & 윈윈전략을 도모할 지언정 절대 공짜(무료)임을 뜻하지 않는다.치

       
1 답변 글타래를 보이고 있습니다
  • 답변은 로그인 후 가능합니다.

지금 이 순간


안녕하세요 새로운 한주 월요일 입니다.
[방화벽] 특정 아이피와 포트의 접속 제한하기
페도라 F37 베타 시험기간이지만, 실제 네트워크를 통한 설치는 무난하게 잘됩니다.
새로운 RHEL Clone 배포판 출시가 될 것 같습니다.
vmware에 페도라11을 깔았는데요.... 루트 권한으로 어떻게 접속하나요..
beesu, zenity 업데이트 후 사용 불가
rm -rf / 따위
유니콘에 대해서…
페도라 리눅스..
트랜스미션에서 트래커 리스트 무더기로 추가하는법 질문