Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Log 이벤트 핸들러는 라인당 하나의 알람 이벤트로 지정된 로그 파일에 기록합니다. 지정된 로그 파일이 없는 경우, 해당 파일이 생성되고 작성됩니다.

Expand
titlelog 이벤트 핸들러를 Cloud Portal이 아닌 CLI 환경에서 kapacitor 명령어를 통해 세팅해야 할 경우 참고하세요.

Option

핸들러 파일(default는 kapacitor.conf) 혹은 TICKscript에서 .log()를 설정할 때 사용할 수 있습니다.

이름

유형

기술

path

string

로그 파일의 절대 경로입니다.

mode

int

파일을 만들 때 사용할 파일 모드 및 권한 기본값은 0600입니다. 앞자리 0은 8진수를 해석하는데 필요합니다.

Log 이벤트 핸들러 사용하기

Log 이벤트 핸들러는 TICKscript 및 핸들러 파일 모두에서 Log와 메시지를 기록하는데 사용할 수 있습니다.

TICKscript에서 메시지기록

다음 TICKscript는 유휴 CPU 사용량이 10%미만으로 떨어질 때마다 .log()이벤트 핸들러를 사용하여 메시지를 /tmp/alerts.log로그 파일에 기록합니다.

log-cpu-alert.tick

Code Block
stream
  |from()
    .measurement('cpu')
  |alert()
    .crit(lambda: "usage_idle" < 10)
    .message('{{ .Time }}: CPU usage over 90%')
    .log('/tmp/alerts.log')

핸들러를 정의하여 로그 메시지 전송하기

다음 설정은 cpu항목을 구독하고, {{.Time}} : CPU 사용량이 90% 이상입니다.라는 메시지와 함께 cpu항목에 알람을 보냅니다 . cpu항목을 구독하고 새 메시지가 전송될 때마다 메시지를  /tmp/alerts.log로그파일에 기록 하는 로그 핸들러가 추가 됩니다.

항목에 알람 메시지를 전송하는 TICKscript를 작성하세요. 아래의 TICKscript는 유휴 CPU 사용량이 10%미만으로 떨어질 때마다 cpu항목에 알람 메시지를 보냅니다 .

cpu_alert.tick

Code Block
stream
  |from()
    .measurement('cpu')
  |alert()
    .crit(lambda: "usage_idle" < 10)
    .message('{{ .Time }}: CPU usage over 90%')
    .topic('cpu')

TICKscript를 추가하고 활성화하세요.

Code Block
kapacitor define cpu_alert -tick cpu_alert.tick
kapacitor enable cpu_alert

cpu를 구독하고 로그 이벤트 핸들러를 사용하여 메세지를 /tmp/alerts.log로그파일에 기록하는 핸들러 파일을 작성하세요.

log_cpu_handler.yaml

Code Block
id: log-cpu-alert
topic: cpu
kind: log
options:
  path: '/tmp/alerts.log'

이벤트 핸들러를 추가하세요.

Code Block
kapacitor define-topic-handler log_cpu_handler.yaml

log 이벤트 핸들러 사용하기

  1. 왼쪽 사이드 내비게이션에서 Alert → Alert Setting 탭을 클릭하여 페이지를 이동합니다.

    Image Added

  2. 오른쪽 상단의 + Build Alert Rule 버튼을 클릭합니다.

    Image Added

  3. 알람 규칙의 이름을 “log idle cpu usage alert“으로 지정하고, Alert type은 Threshold(임계치)로 설정합니다.

    Image Added

  4. Time Series는 telegraf.autogen → cpu → usage_idle로 설정합니다. Condition은 현재 알람 규칙의 실행 조건을 결정하는 단계입니다. usage_idle이 100%미만 일 때 이벤트 핸들러가 실행됩니다. (100%는 테스트를 위한 값입니다. 실제 적용시 상황에 알맞게 사용하여야합니다.)

    Image Added

  5. log 이벤트 핸들러의 입력창에 some.log 파일을 입력합니다. 테스트를 위해 /tmp/alert-log.log를 입력합니다. 또한, 로그 파일에 기록될 Message도 입력해주세요.

    Image Added

  6. 오른쪽 상단의 Save Rule 버튼을 클릭하여 알람 규칙을 저장합니다.

    Image Added

  7. CLI 환경에서 아래의 명령어를 입력해주세요.

    Code Block
    $ sudo cat /tmp/alert-log.log 
    //혹은
    $ sudo cat /tmp/alert-log.log | jq

  8. alert-log.log 파일 확인하기

    Image Added

...

Slack

Slack은 팀에게 인기 있는 메시지 앱입니다. Cloudhub Portal은 기존 Slack Channer, DM(Direct Message)으로 알람을 보내도록 구성할 수 있습니다. 아래 섹션에서는 각 구성 옵션을 설명합니다.

...