Versions Compared

Key

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

...

사용자 정의 HTTP body 구성을 위한 Row template입니다. Row template은 한 번에 한 행을 사용하기때문에 httpPost 노드 파이프라인과 노드가 함께 사용됩니다.

row-template-file

행 템플릿 Row template 파일의 절대 경로경로입니다. 행 임시로 건너뛰기

Absolute path to a row template file. Skip to row templating.

환경 변수를 사용하여 구성 옵션 정의하기

endpointurl 및 headers 구성 옵션은 환경 변수로 정의할 수 있습니다.

...

Code Block
[[httppost]]
  endpoint = "endpoint1"
  url = "http://example-1.com/path"
  # ...

[[httppost]]
  endpoint = "endpoint2"
  url = "http://example-2.com/path"
  # ...

환경 변수를 사용하여 여러 HTTP POST 엔드 포인트 엔드포인트 구성을 추가 할 수도 있습니다. 변수 값은 각 변수 키의 숫자를 사용하여 그룹화됩니다.

...

Code Block
|alert()
  // ...  
  // Using the 'example' endpoint configured in the kapacitor.conf
  .post()
    .endpoint('example')
예: TICKscript -

...

Post 옵션 "인라인"정의
Code Block
|alert()
  // ...
  // Defining post options "inline"
  .post('https://example.com/path')
    .header('Example1', 'example1')
    .header('Example2', 'example2')
    .captureResponse()
    .timeout(10s)
    .skipSSLVerification()

...

Code Block
stream
  |from()
    .measurement('cpu')
  |alert()
    .crit(lambda: "usage_idle" < 10)
    .message('Hey, check your CPU')
    .post('https://example.com/path')
      .header('Example1', 'example1')
      .header('Example2', 'example2')
      .captureResponse()
      .timeout(10s)
      .skipSSLVerification()
Post alerts from a defined handler

The following setup sends an alert to the cpu topic with the message, “Hey, check your CPU”. A post handler is added that subscribes to the cpu topic and posts all alert messages to the url and endpoint defined in the kapacitor.conf.

...

정의된 핸들러에서 Post 알람보내기

다음 설정은“Hey, check your CPU”라는 메시지와 함께 알람을 cpu 항목에 전송합니다. cpu 항목을 구독하고 모든 알람 메시지를 kapacitor.conf에 정의된 URL 및 엔드포인트에 전송하는 Post 이벤트 핸들러가 추가됩니다.

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

cpu_alert.tick

Code Block
stream
  |from()
    .measurement('cpu')
  |alert()
    .crit(lambda: "usage_idle" < 10)
    .message('Hey, check your CPU')
    .topic('cpu')

Add and enable the TICKscriptTICKscript 추가 및 실행하기 :

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

Create a handler file that subscribes to the cpu topic and uses the post event handler to post alerts to an HTTP endpointcpu항목에 등록하고 이벤트 핸들러를 사용하여 HTTP 엔드포인트에 알람을 전송하는 핸들러 파일을 작성하세요.

post_cpu_handler.yaml

Code Block
id: post-cpu-alert
topic: cpu
kind: post
options:
  url: 'http://example.com/path'
  headers:
    'From': 'alert@mydomain.com'

Add the handler핸들러 추가하기:

Code Block
kapacitor define-topic-handler post_cpu_handler.yaml

Post templating

The post event handler allows you to customize the content and structure of POSTs with alert and row templatesPost 이벤트 핸들러를 사용하면 알람 및 Row template를 사용하여 POST의 컨텐츠 및 구조를 사용자 정의 할 수 있습니다.

Alert templates

Alert templates are used to construct a custom HTTP body. They are only used with post alert handlers as they consume alert data. Templates are defined either inline in the kapacitor.conf using the alert-template configuration or in a separate file and referenced using the alert-template-file config.Alert templates use Golang Template and have access to the following fieldstemplate는 사용자 정의 HTTP body를 구성하는 데 사용됩니다. 알람 데이터를 사용할 때 post 알람 관리자와 사용됩니다. 템플릿은 alert-template 구성을 사용하여 kapacitor.conf에 인라인으로 정의되거나 별도의 파일로 정의되며 alert-template-file 구성을 사용하여 참조됩니다.

알람 템플릿은 Golang Template 을 사용하며 다음 필드에 액세스 할 수 있습니다:

Field

Description

.IDThe unique

ID for the alert.알람의 고유 ID

.MessageThe message of the alert.

알람 메시지

.DetailsThe details of the alert.

알람의 세부 사항

.TimeThe time the alert event occurred.

알람 이벤트가 발생한 시간

.Duration

The duration of the alert event.

.Level

The level of the alert, i.e INFO, WARN, or CRITICAL.

.Data

The data that triggered the alert.

.PreviousLevel

The previous level of the alert, i.e INFO, WARN, or CRITICAL.

.Recoverable

Indicates whether or not the alert is auto-recoverable알람 이벤트의 지속 기간

.Level

알람의 레벨 (예 : INFO, WARN 또는 CRITICAL)

.Data

알람을 트리거 한 데이터

.PreviousLevel

알람 이전 수준 (예 : INFO, WARN 또는 CRITICAL)

.Recoverable

알람이 자동 복구 가능한지 여부를 나타냅니다.

Inline alert template

kapacitor.conf

...

Field

Description

.Name

The measurement name of the data stream

.Tags

A map of tags on the data.

.Values

A list of values; each a map containing a “time” key for the time of the point and keys for all other fields on the point.

Inline row

...

template

kapacitor.conf

Code Block
[[httppost]]
  endpoint = "example"
  url = "http://example.com/path"
  row-template = '{{.Name}} host={{index .Tags "host"}}{{range .Values}} {{index . "time"}} {{index . "value"}}{{end}}'

...

Code Block
{{.Name}} host={{index .Tags \"host\"}}{{range .Values}} {{index . "time"}} {{index . "value"}}{{end}}

Kafka

Kafka 알람 엔드 포엔트를 엔드포엔트를 설정하는 방법입니다.

  1. Configure Kapacitor Connection 페이지에서 Kafka 탭을 클릭합니다.

  2. 다음을 입력하세요.

    • ID: Kafka 클러스터에 대한 유일한 식별자입니다. 기본은 localhost입니다.

    • Brokershost:port 형식을 사용하는 Kafka broker 주소 목록입니다.

    • Timeout: 불완전한 배치를 플러시하기 전에 대기할 최대 시간입니다. 기본값은 10초 입니다.

    • Batch Size: Kafka에 보내기 전에 일괄 처리된 메시지 수입니다. 기본값은 100입니다.

    • Batch Timeout: 일괄 처리 시간의 제한 기간입니다 기본값은 1초입니다.

    • Use SSL: SSL 통신을 사용하려면 이 항목을 선택합니다.

    • SSL CA: SSL CA(인증 기관, certificate authority) 파일의 경로입니다.

    • SSL Cert: SSL 호스트 인증서의 경로입니다.

    • SSL Key: SSL 인증서 개인 키(private key) 파일의 경로입니다.

    • Insecure Skip Verify: SSL을 사용하지만 체인 및 호스트 확인을 건너뛰려면 선택하세요. 자체 서명된 인증서를 사용하는지 여부를 묻습니다.

  3. Save Changes를 클릭하여 구성 설정을 저장합니다.

  4. Send Test Alert을 클릭하여 구성을 확인합니다.

...

TCP 이벤트 핸들러는 TICKscripts 또는 핸들러 파일을 활용하여 사용할 수 있으며, TCP 엔드 포인트로 엔드포인트로 알람 데이터를 전송합니다.

TICKscript에서 TCP 엔드포인트로 알람 데이터 전송하기

...

Code Block
stream
  |from()
    .measurement('cpu')
  |alert()
    .crit(lambda: "usage_idle" < 10)
    .message('Hey, check your CPU')
    .tcp('127.0.0.1:7777')
정의된 핸들러에서 TCP 엔드 포인트로 엔드포인트로 알람 데이터 전송

다음 설정은 "Hey, check your CPU"라는 메시지와 함께 cpu 항목에 알람을 보냅니다. cpu 항목을 구독하고 모든 알람 메시지를 TCP 엔드 포인트로 엔드포인트로 보내는 TCP 핸들러가 추가됩니다.

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

...

cpu 항목을 구독하고 TCP 이벤트 핸들러를 사용하여 알람 데이터를 TCP 엔드 포인트로 엔드포인트로 보내는 핸들러 파일을 생성하세요.

tcp_cpu_handler.yaml

...