트리거

Zabbix v7.4번역일: 2026-08-20원본 보기

개요

트리거는 아이템이 수집한 데이터를 "평가"하여 현재 시스템 상태를 나타내는 논리 표현식입니다.

아이템은 시스템 데이터를 수집하는 데 사용되지만, 경고가 필요하거나 주의를 기울여야 하는 조건이 나타날 때까지 이 데이터를 계속 지켜보는 것은 매우 비현실적입니다. 데이터를 "평가"하는 작업은 트리거 표현식에 맡길 수 있습니다.

트리거 표현식을 사용하면 데이터가 어떤 상태일 때 "허용 가능"한지에 대한 임계값을 정의할 수 있습니다. 따라서 들어오는 데이터가 허용 가능한 상태를 넘어서면 트리거가 "발생"하며, 즉 상태가 PROBLEM으로 변경됩니다.

트리거는 다음과 같은 상태를 가질 수 있습니다:

상태 설명
OK 정상적인 트리거 상태입니다.
Problem 무언가 발생했습니다. 예를 들어, 프로세서 부하가 너무 높습니다.
Unknown 트리거 값을 계산할 수 없습니다. 알 수 없음 상태를 참조하세요.

간단한 트리거에서는 예를 들어 CPU 부하와 같은 데이터의 5분 평균에 임계값을 설정할 수 있습니다. 이는 다음과 같은 트리거 표현식을 정의하여 구현합니다:

  • 아이템 키로 수신한 값에 'avg' 함수를 적용합니다
  • 평가 기간으로 5분을 사용합니다
  • 임계값을 '2'로 설정합니다
    avg(/host/key,5m)>2

이 트리거는 5분 평균이 2를 초과하면 "발생"합니다(PROBLEM 상태가 됩니다).

더 복잡한 트리거에서는 표현식에 여러 함수와 여러 임계값의 조합을 포함할 수 있습니다. 다음도 참조하세요: 트리거 표현식.

바이너리 데이터 타입의 값을 반환하는 아이템에 대해서는 트리거를 생성할 수 없습니다.

트리거를 활성화한 후(구성 상태를 Disabled에서 Enabled로 변경한 후), 트리거 표현식은 표현식에 포함된 아이템이 값을 수신하거나 날짜 및 시간 및/또는 nodata() 함수를 처리할 시점이 되는 즉시 평가됩니다.

대부분의 트리거 함수는 아이템 값 히스토리 데이터를 기반으로 평가되지만, 장기 분석을 위한 일부 트리거 함수(예: trendavg(), trendcount() 등)는 트렌드 데이터를 사용합니다.

계산 시점

트리거는 Zabbix 서버가 표현식에 포함된 새 값을 수신할 때마다 재계산됩니다. 새 값이 수신되면 표현식에 포함된 각 함수가 재계산됩니다(새 값을 수신한 함수만이 아닙니다).

또한 표현식에 날짜 및 시간 및/또는 nodata() 함수가 사용된 경우, 트리거는 새 값이 수신될 때 그리고 30초마다 재계산됩니다.

날짜 및 시간 및/또는 nodata() 함수는 Zabbix 히스토리 싱커 프로세스에 의해 30초마다 재계산됩니다.

트렌드 함수만 참조하는 트리거는 표현식에서 가장 작은 시간 기간마다 한 번씩 평가됩니다. 트렌드 함수도 참조하세요.

평가 기간

평가 기간은 아이템 히스토리를 참조하는 함수에서 사용됩니다. 이를 통해 관심 있는 구간을 지정할 수 있습니다. 시간 기간(30s, 10m, 1h) 또는 값 범위(#5 - 최근 5개 값)로 지정할 수 있습니다.

평가 기간은 "now"까지를 기준으로 측정되며, 여기서 "now"는 트리거의 가장 최근 재계산 시점입니다(위의 계산 시점 참조). "now"는 서버의 "현재" 시각이 아닙니다.

평가 기간은 다음 중 하나를 지정합니다:

  • "now - 시간 기간"과 "now" 사이의 모든 값(또는 시간 시프트가 적용된 경우 "now - 시간 시프트 - 시간 기간"과 "now - 시간 시프트" 사이의 값).
  • "now"까지 과거의 지정된 개수만큼의 값.

지정한 평가 기간에 데이터가 없으면 이 함수를 사용하는 트리거 또는 계산형 아이템은 지원되지 않는 상태가 됩니다.

다음 사항에 유의하세요:

  • 트리거에서 (데이터 히스토리를 참조하는) 함수를 하나만 사용하는 경우, "now"는 항상 가장 최근에 수신한 값입니다. 예를 들어 마지막 값을 한 시간 전에 수신했다면, 평가 기간은 한 시간 전의 최신 값까지로 간주됩니다.
  • 새 트리거는 첫 번째 값을 수신하는 즉시 계산됩니다(히스토리 함수). 날짜 및 시간과 nodata() 함수의 경우 30초 이내에 계산됩니다. 따라서 트리거가 생성된 이후 설정된 평가 기간(예: 한 시간)이 아직 지나지 않았더라도 트리거는 계산됩니다. 또한 평가 범위가 예를 들어 최근 10개 값으로 설정되어 있더라도 첫 번째 값 이후에 트리거가 계산됩니다.

알 수 없음 상태

다음의 경우 트리거 표현식에 알 수 없는 피연산자가 나타날 수 있습니다:

  • 지원되지 않는 아이템이 사용된 경우
  • 지원되는 아이템에 대한 함수 평가가 오류를 반환한 경우

이 경우 트리거는 일반적으로 "알 수 없음"으로 평가됩니다(다만 일부 예외가 있습니다). 자세한 내용은 알 수 없는 피연산자가 포함된 표현식을 참조하세요.

알 수 없음 상태의 트리거에 대해 알림을 받을 수 있습니다.