Write Resources API

Write Resources API

이 기능은 실험적 기능이라 프로덕션 환경에서는 사용을 권장하지 않아요. 기능 진행 상황에 대한 업데이트나 피드백이 있으면 OpenSearch 포럼에서 토론에 참여해 주세요.

외부 데이터 소스에서 리소스를 생성하거나 수정해요. 현재는 Prometheus Alertmanager에서 알림 침묵(silences)을 생성하는 것을 지원해요.

이 API를 사용하기 전에 먼저 데이터 소스를 구성해야 해요. 데이터 소스 구성 방법은 Data sources 문서를 참고하세요.

출처: 문서

본문

엔드포인트 (Endpoint)

POST /_plugins/_directquery/_resources/{dataSource}/alertmanager/api/v2/{resourceType}

경로 파라미터 (Path parameters)

다음 표는 사용 가능한 경로 파라미터를 나열해요.

Parameter Data type Description
dataSource String 구성된 데이터 소스의 이름이에요. 필수예요.
resourceType String 생성할 리소스의 유형이에요. 현재는 silences만 지원돼요. 필수예요.

Alertmanager 침묵 요청 본문 필드

요청 본문은 외부 데이터 소스 API로 전달돼요. 다음 필드는 Alertmanager 침묵을 생성할 때 적용돼요.

Field Data type Description
matchers Array 침묵이 적용되는 알림을 결정하는 라벨 일치 규칙 배열이에요. 필수예요.
matchers[].name String 일치시킬 라벨 이름이에요. 필수예요.
matchers[].value String 일치시킬 라벨 값이에요. 필수예요.
matchers[].isRegex Boolean 값이 정규 표현식인지 여부예요. 기본값은 false예요. 선택 사항이에요.
matchers[].isEqual Boolean 같은 값을 일치시킬지(true), 다른 값을 일치시킬지(false) 여부예요. 기본값은 true예요. 선택 사항이에요.
startsAt String 침묵의 시작 시간으로, ISO 8601 형식이에요. 필수예요.
endsAt String 침묵의 종료 시간으로, ISO 8601 형식이에요. 필수예요.
createdBy String 침묵의 작성자예요. 필수예요.
comment String 침묵의 이유를 설명하는 주석이에요. 필수예요.

예시 요청: 알림 침묵 생성하기

POST /_plugins/_directquery/_resources/my_prometheus/alertmanager/api/v2/silences
{
  "matchers": [
    {
      "name": "alertname",
      "value": "HighMemoryUsage",
      "isRegex": false,
      "isEqual": true
    },
    {
      "name": "instance",
      "value": "server1:9100",
      "isRegex": false,
      "isEqual": true
    }
  ],
  "startsAt": "2024-01-01T12:00:00.000Z",
  "endsAt": "2024-01-01T14:00:00.000Z",
  "createdBy": "admin",
  "comment": "Scheduled maintenance window"
}

예시 응답

{
  "silenceID": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}

응답 본문 필드 (Response body fields)

다음 표는 모든 응답 본문 필드를 나열해요.

Field Data type Description
silenceID String 생성된 침묵의 고유 식별자예요.

더 알아보기 (Learn more)