...
사용자 정의 HTTP body 구성을 위한 Row template입니다. Row template은 한 번에 한 행을 사용하기때문에 httpPost 노드 파이프라인과 노드가 함께 사용됩니다.
row-template-file
행 템플릿 Row template 파일의 절대 경로경로입니다. 행 임시로 건너뛰기
Absolute path to a row template file. Skip to row templating.
환경 변수를 사용하여 구성 옵션 정의하기
endpoint
, url
및 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 알람 엔드 포엔트를 엔드포엔트를 설정하는 방법입니다.
Configure Kapacitor Connection 페이지에서 Kafka 탭을 클릭합니다.
다음을 입력하세요.
ID: Kafka 클러스터에 대한 유일한 식별자입니다. 기본은
localhost
입니다.Brokers:
host: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을 사용하지만 체인 및 호스트 확인을 건너뛰려면 선택하세요. 자체 서명된 인증서를 사용하는지 여부를 묻습니다.
Save Changes를 클릭하여 구성 설정을 저장합니다.
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
...