로우 레벨 디스커버리
개요
로우 레벨 디스커버리(LLD)는 호스트에서 엔티티(예: 파일 시스템, 네트워크 인터페이스)를 자동으로 검색하고, 각각에 대한 수동 설정 없이 해당 아이템, 트리거, 그래프를 생성합니다.
LLD를 사용하려면 엔티티를 설명하는 JSON 데이터를 수집하는 디스커버리 규칙과, 각 엔티티에 대한 프로토타입(아이템, 트리거, 그래프)을 만들어야 합니다.
규칙이 반환하는 JSON은 객체의 배열이어야 하며, 각 객체는 키-값 쌍을 사용해 검색된 하나의 엔티티를 나타냅니다. 예를 들어, net.if.discovery를 사용하는 디스커버리 규칙은 다음과 같이 반환할 수 있습니다.
[
{"{#IFNAME}": "lo"},
{"{#IFNAME}": "eth0"}
]
이후 프로토타입으로부터 인터페이스(lo, eth0)별로 하나씩 대응하는 아이템, 트리거, 그래프 세트가 생성됩니다.
객체가 {#MACRO} 형식의 키를 포함하는 경우 해당 매크로는 프로토타입에 바로 사용됩니다. 그렇지 않거나 추가/사용자 정의 매크로가 필요한 경우, 수동으로 매크로를 정의하고 JSONPath를 사용해 JSON 필드에 매핑할 수 있습니다.
LLD는 호스트 생성도 지원하며(예: 하이퍼바이저에서 검색된 가상 머신), 다단계 디스커버리를 위한 중첩 디스커버리 규칙도 지원합니다.
더 이상 검색되지 않는 엔티티는 자동으로 비활성화하거나 삭제할 수 있습니다.
로우 레벨 디스커버리 구성하기
파일 시스템 디스커버리 예시를 기반으로 로우 레벨 디스커버리를 설명하겠습니다.
디스커버리를 구성하려면 다음을 수행합니다.
- 데이터 수집 > 템플릿 또는 호스트로 이동합니다.
- 해당 템플릿/호스트 행에서 디스커버리를 클릭합니다.

- 화면 우측 상단의 디스커버리 규칙 생성을 클릭합니다.
- 필요한 세부 정보로 디스커버리 규칙 양식을 작성합니다.
디스커버리 규칙
디스커버리 규칙 양식에는 디스커버리 과정 중 데이터 흐름을 왼쪽부터 오른쪽 순으로 나타내는 5개의 탭이 있습니다.
- 디스커버리 규칙 - 가장 중요하게는, 디스커버리 데이터를 가져올 내장 아이템이나 사용자 정의 스크립트를 지정합니다.
- 전처리 - 검색된 데이터에 일부 전처리를 적용합니다.
- LLD 매크로 - 검색된 아이템, 트리거 등에 사용할 매크로 값을 추출할 수 있게 합니다.
- 필터 - 검색된 값을 필터링할 수 있게 합니다.
- 오버라이드 - 특정 검색된 객체에 적용할 때 아이템, 트리거, 그래프 또는 호스트 프로토타입을 수정할 수 있게 합니다.
디스커버리 규칙 탭에는 디스커버리에 사용할 아이템 키(그리고 몇 가지 일반적인 디스커버리 규칙 속성)가 포함되어 있습니다.

모든 필수 입력 필드는 빨간색 별표로 표시되어 있습니다.
| 매개변수 | 설명 |
|---|---|
| 이름 | 디스커버리 규칙의 이름입니다. |
| 유형 | 디스커버리를 수행할 체크 유형입니다. 이 예시에서는 Zabbix 에이전트 아이템 유형을 사용합니다. 디스커버리 규칙은 일반 아이템에 의존하는 종속 아이템일 수도 있습니다. 다른 디스커버리 규칙에는 종속될 수 없습니다. 종속 아이템의 경우 해당 유형(종속 아이템)을 선택하고 'Master item' 필드에 마스터 아이템을 지정합니다. 마스터 아이템은 존재해야 합니다. |
| 키 | 디스커버리 아이템 키를 입력합니다(최대 2048자). 예를 들어, 내장 "vfs.fs.discovery" 아이템 키를 사용하면 컴퓨터에 존재하는 파일 시스템 목록과 그 유형, 마운트 옵션을 담은 JSON 문자열을 반환받을 수 있습니다. 파일 시스템 디스커버리의 또 다른 방법으로, "vfs.fs.get" 에이전트 키를 이용한 디스커버리 결과를 사용할 수도 있습니다(예시 참조). |
| 업데이트 주기 | 이 필드는 Zabbix가 디스커버리를 수행하는 빈도를 지정합니다. 파일 시스템 디스커버리를 처음 설정할 때는 짧은 주기로 설정하고 싶을 수 있지만, 정상 작동을 확인한 후에는 파일 시스템이 자주 바뀌지 않으므로 30분 이상으로 설정할 수 있습니다. 시간 접미사를 지원합니다. 예: 30s, 1m, 2h, 1d. 사용자 매크로를 지원합니다. 참고: 업데이트 주기는 값이 0이 아닌 사용자 정의 간격이 존재하는 경우에만 '0'으로 설정할 수 있습니다. '0'으로 설정되어 있고 값이 0이 아닌 사용자 정의 간격(유연 또는 예약)이 존재하면, 아이템은 해당 사용자 정의 간격 동안 폴링됩니다. 새 디스커버리 규칙은 생성 후 60초 이내에 체크됩니다. 단, 예약형 또는 유연형 업데이트 주기를 사용하고 업데이트 주기가 0으로 설정된 경우는 예외입니다. 참고로 기존 디스커버리 규칙의 경우 지금 실행 버튼을 눌러 즉시 디스커버리를 수행할 수 있습니다. |
| 사용자 정의 간격 | 아이템을 체크하기 위한 사용자 정의 규칙을 만들 수 있습니다. 유연 - 업데이트 주기에 대한 예외(다른 빈도의 간격)를 생성합니다. 예약 - 사용자 정의 폴링 일정을 생성합니다. 자세한 내용은 사용자 정의 간격을 참조하세요. |
| 타임아웃 | 디스커버리 체크 타임아웃을 설정합니다. 타임아웃 옵션을 선택합니다. 전역 - 프록시/전역 타임아웃이 사용됩니다(회색으로 표시된 타임아웃 필드에 표시됨). 재정의 - 타임아웃 필드에 설정된 사용자 정의 타임아웃이 사용됩니다(허용 범위: 1~600초). 시간 접미사(예: 30s, 1m)와 사용자 매크로를 지원합니다. 타임아웃 링크를 클릭하면 프록시 타임아웃 또는 (프록시를 사용하지 않는 경우) 전역 타임아웃을 구성할 수 있습니다. 타임아웃 링크는 Administration > General 또는 Administration > Proxies 프론트엔드 섹션에 대한 권한이 있는 Super admin 유형의 사용자에게만 표시됩니다. |
| 사라진 리소스 삭제 | 디스커버리 상태가 "더 이상 검색되지 않음"이 된 후 검색된 엔티티가 삭제되기까지의 시간을 지정합니다. 안 함 - 삭제되지 않습니다. 즉시 - 즉시 삭제됩니다. 지정 시간 후 - 지정된 기간 후에 삭제됩니다. 이 값은 사라진 리소스 비활성화 값보다 커야 합니다. 시간 접미사(예: 2h, 1d)를 지원합니다. 사용자 매크로를 지원합니다. 참고: "즉시"를 사용하는 것은 권장하지 않습니다. 필터를 잘못 편집하면 엔티티가 모든 이력 데이터와 함께 삭제될 수 있기 때문입니다. 수동으로 비활성화된 리소스는 로우 레벨 디스커버리에 의해 삭제되지 않습니다. |
| 사라진 리소스 비활성화 | 디스커버리 상태가 "더 이상 검색되지 않음"이 된 후 검색된 엔티티가 비활성화되기까지의 시간을 지정합니다. 안 함 - 비활성화되지 않습니다. 즉시 - 즉시 비활성화됩니다. 지정 시간 후 - 지정된 기간 후에 비활성화됩니다. 이 값은 디스커버리 규칙의 업데이트 주기보다 커야 합니다. 자동으로 비활성화된 리소스는 로우 레벨 디스커버리에 의해 다시 검색되면 다시 활성화됩니다. 수동으로 비활성화된 리소스는 다시 검색되어도 다시 활성화되지 않습니다. 사라진 리소스 삭제가 "즉시"로 설정된 경우 이 필드는 표시되지 않습니다. 시간 접미사(예: 2h, 1d)를 지원합니다. 사용자 매크로를 지원합니다. |
| 설명 | 설명을 입력합니다. |
| 활성화 | 체크되어 있으면 규칙이 처리됩니다. |
디스커버리 규칙 이력은 보존되지 않습니다.
전처리
전처리 탭은 디스커버리 결과에 적용할 변환 규칙을 정의할 수 있게 합니다. 이 단계에서는 하나 또는 여러 개의 변환이 가능합니다. 변환은 정의된 순서대로 실행됩니다. 모든 전처리는 Zabbix 서버가 수행합니다.
참고 항목:

| 유형 | < | < |
|---|---|---|
| 변환 | 설명 | |
| 텍스트 | < | < |
| < | 정규 표현식 | 받은 값을 <pattern> 정규 표현식과 매칭시키고, 추출된 <output>으로 값을 대체합니다. 정규 표현식은 \N 시퀀스로 최대 10개의 캡처 그룹 추출을 지원합니다. 매개변수: pattern - 정규 표현식 output - 출력 형식 템플릿. \N(N=1…9) 이스케이프 시퀀스는 N번째로 매칭된 그룹으로 대체됩니다. \0 이스케이프 시퀀스는 매칭된 텍스트로 대체됩니다. 실패 시 사용자 정의 체크박스를 표시하면, 값을 버리거나, 지정된 값을 설정하거나, 지정된 오류 메시지를 설정하는 등 사용자 정의 오류 처리 옵션을 지정할 수 있습니다. |
| ^ | 바꾸기 | 검색 문자열을 찾아 다른 문자열(또는 아무것도 없음)로 바꿉니다. 검색 문자열이 나타나는 모든 위치가 대체됩니다. 매개변수: search string - 찾아서 바꿀 문자열, 대소문자 구분(필수) replacement - 검색 문자열을 대체할 문자열. 대체 문자열은 비워둘 수도 있으며, 이 경우 검색 문자열을 찾았을 때 삭제하는 효과가 있습니다. 줄바꿈, 캐리지 리턴, 탭, 공백을 검색하거나 대체하기 위해 이스케이프 시퀀스 "\n \r \t \s"를 사용할 수 있으며, 백슬래시는 "\\"로 이스케이프할 수 있고 이스케이프 시퀀스 자체도 "\\n"처럼 이스케이프할 수 있습니다. 줄바꿈, 캐리지 리턴, 탭의 이스케이프 처리는 로우 레벨 디스커버리 중에 자동으로 수행됩니다. |
| 구조화된 데이터 | < | < |
| < | JSONPath | JSONPath 기능을 사용해 JSON 데이터에서 값 또는 조각을 추출합니다. 실패 시 사용자 정의 체크박스를 표시하면, 값을 버리거나, 지정된 값을 설정하거나, 지정된 오류 메시지를 설정하는 등 사용자 정의 오류 처리 옵션을 지정할 수 있습니다. |
| < | XML XPath | XPath 기능을 사용해 XML 데이터에서 값 또는 조각을 추출합니다. 이 옵션이 작동하려면 Zabbix 서버가 libxml 지원과 함께 컴파일되어 있어야 합니다. 예시: number(/document/item/value)는 <document><item><value>10</value></item></document>에서 10을 추출합니다.number(/document/item/@attribute)는 <document><item attribute="10"></item></document>에서 10을 추출합니다./document/item은 <document><item><value>10</value></item></document>에서 <item><value>10</value></item>을 추출합니다.네임스페이스는 지원되지 않습니다. 실패 시 사용자 정의 체크박스를 표시하면, 값을 버리거나, 지정된 값을 설정하거나, 지정된 오류 메시지를 설정하는 등 사용자 정의 오류 처리 옵션을 지정할 수 있습니다. |
| < | CSV to JSON | CSV 파일 데이터를 JSON 형식으로 변환합니다. 자세한 내용은 CSV to JSON 전처리를 참조하세요. |
| ^ | XML to JSON | XML 형식의 데이터를 JSON으로 변환합니다. 자세한 내용은 직렬화 규칙을 참조하세요. 실패 시 사용자 정의 체크박스를 표시하면, 값을 버리거나, 지정된 값을 설정하거나, 지정된 오류 메시지를 설정하는 등 사용자 정의 오류 처리 옵션을 지정할 수 있습니다. |
| SNMP | < | < |
| SNMP walk value | 지정된 OID/MIB 이름으로 값을 추출하고 서식 옵션을 적용합니다. 변경 안 함 - Hex-STRING을 이스케이프하지 않은 16진수 문자열로 반환합니다(참고: 표시 힌트는 그대로 적용됩니다). UTF-8 from Hex-STRING - Hex-STRING을 UTF-8 문자열로 변환합니다. MAC from Hex-STRING - Hex-STRING을 MAC 주소 문자열로 변환합니다( ' '가 ':'로 대체됨).Integer from BITS - 16진수 문자로 표현된 비트 문자열(예: "1A 2B 3C 4D")의 처음 8바이트를 64비트 부호 없는 정수로 변환합니다. 8바이트보다 긴 비트 문자열에서는 이후 바이트가 무시됩니다. 실패 시 사용자 정의 체크박스를 표시하면, 값을 버리거나, 지정된 값을 설정하거나, 지정된 오류 메시지를 설정하는 등 사용자 정의 오류 처리 옵션을 지정할 수 있습니다. |
|
| SNMP walk to JSON | SNMP 값을 JSON으로 변환합니다. JSON의 필드 이름과 해당하는 SNMP OID 경로를 지정합니다. 필드 값은 지정된 SNMP OID 경로의 값으로 채워집니다. 이 전처리 단계는 SNMP OID 디스커버리에 사용할 수 있습니다. SNMP walk value 단계와 유사한 값 서식 옵션을 사용할 수 있습니다. 실패 시 사용자 정의 체크박스를 표시하면, 값을 버리거나, 지정된 값을 설정하거나, 지정된 오류 메시지를 설정하는 등 사용자 정의 오류 처리 옵션을 지정할 수 있습니다. |
|
| SNMP get value | SNMP get 값에 서식 옵션을 적용합니다. UTF-8 from Hex-STRING - Hex-STRING을 UTF-8 문자열로 변환합니다. MAC from Hex-STRING - Hex-STRING을 MAC 주소 문자열로 변환합니다( ' '가 ':'로 대체됨).Integer from BITS - 16진수 문자로 표현된 비트 문자열(예: "1A 2B 3C 4D")의 처음 8바이트를 64비트 부호 없는 정수로 변환합니다. 8바이트보다 긴 비트 문자열에서는 이후 바이트가 무시됩니다. 실패 시 사용자 정의 체크박스를 표시하면, 값을 버리거나, 지정된 값을 설정하거나, 지정된 오류 메시지를 설정하는 등 사용자 정의 오류 처리 옵션을 지정할 수 있습니다. |
|
| 사용자 정의 스크립트 | < | < |
| < | JavaScript | 매개변수 필드나 그 옆의 연필 아이콘을 클릭하면 열리는 모달 편집기에 JavaScript 코드를 입력합니다. 사용 가능한 JavaScript 길이는 사용 중인 데이터베이스에 따라 달라집니다. 자세한 내용은 Javascript 전처리를 참조하세요. |
| 검증 | < | < |
| < | 정규 표현식과 일치하지 않음 | 값이 일치하지 않아야 하는 정규 표현식을 지정합니다. 예: Error:(.*?)\.실패 시 사용자 정의 체크박스를 표시하면, 값을 버리거나, 지정된 값을 설정하거나, 지정된 오류 메시지를 설정하는 등 사용자 정의 오류 처리 옵션을 지정할 수 있습니다. |
| ^ | JSON에서 오류 확인 | JSONPath에 위치한 애플리케이션 수준 오류 메시지를 확인합니다. 성공하고 메시지가 비어 있지 않으면 처리를 중단하고, 그렇지 않으면 이 전처리 단계 이전의 값으로 계속 처리합니다. 이러한 외부 서비스 오류는 전처리 단계 정보를 추가하지 않고 사용자에게 그대로 보고됩니다. 예: $.errors. {"errors":"e1"}과 같은 JSON을 받으면 다음 전처리 단계는 실행되지 않습니다.실패 시 사용자 정의 체크박스를 표시하면, 값을 버리거나, 지정된 값을 설정하거나, 지정된 오류 메시지를 설정하는 등 사용자 정의 오류 처리 옵션을 지정할 수 있습니다. |
| ^ | XML에서 오류 확인 | Xpath에 위치한 애플리케이션 수준 오류 메시지를 확인합니다. 성공하고 메시지가 비어 있지 않으면 처리를 중단하고, 그렇지 않으면 이 전처리 단계 이전의 값으로 계속 처리합니다. 이러한 외부 서비스 오류는 전처리 단계 정보를 추가하지 않고 사용자에게 그대로 보고됩니다. 잘못된 XML을 파싱하지 못한 경우에는 오류가 보고되지 않습니다. 실패 시 사용자 정의 체크박스를 표시하면, 값을 버리거나, 지정된 값을 설정하거나, 지정된 오류 메시지를 설정하는 등 사용자 정의 오류 처리 옵션을 지정할 수 있습니다. |
| < | 정규 표현식과 일치 | 값이 일치해야 하는 정규 표현식을 지정합니다. 실패 시 사용자 정의 체크박스를 표시하면, 값을 버리거나, 지정된 값을 설정하거나, 지정된 오류 메시지를 설정하는 등 사용자 정의 오류 처리 옵션을 지정할 수 있습니다. |
| 스로틀링 | < | < |
| < | 하트비트로 변경되지 않은 값 버리기 | 정의된 기간(초 단위) 동안 값이 변경되지 않으면 해당 값을 버립니다. 초를 지정하는 양의 정수 값을 지원합니다(최소 1초). 이 필드에는 시간 접미사를 사용할 수 있습니다(예: 30s, 1m, 2h, 1d). 이 필드에는 사용자 매크로와 로우 레벨 디스커버리 매크로를 사용할 수 있습니다.디스커버리 아이템에는 하나의 스로틀링 옵션만 지정할 수 있습니다. 예: 1m. 60초 이내에 동일한 텍스트가 이 규칙에 두 번 전달되면 버려집니다.참고: 아이템 프로토타입을 변경해도 스로틀링은 재설정되지 않습니다. 스로틀링은 전처리 단계가 변경될 때만 재설정됩니다. |
| Prometheus | < | < |
| < | Prometheus to JSON | 필요한 Prometheus 메트릭을 JSON으로 변환합니다. 자세한 내용은 Prometheus 체크를 참조하세요. |
디스커버리 규칙이 템플릿을 통해 호스트에 적용된 경우, 이 탭의 내용은 읽기 전용이 됩니다.
사용자 정의 매크로
LLD 매크로 탭은 사용자 정의 로우 레벨 디스커버리 매크로를 지정할 수 있게 합니다.
사용자 정의 매크로는 반환된 JSON에 필요한 매크로가 이미 정의되어 있지 않은 경우에 유용합니다. 예를 들어:
- 파일 시스템 디스커버리를 위한 기본
vfs.fs.discovery키는 {#FSNAME}, {#FSTYPE}와 같이 미리 정의된 LLD 매크로가 포함된 JSON을 반환합니다. 이 매크로는 아이템, 트리거 프로토타입(페이지의 이후 섹션 참조)에서 바로 사용할 수 있으며, 사용자 정의 매크로를 정의할 필요가 없습니다. vfs.fs.get에이전트 아이템도 파일 시스템 데이터가 포함된 JSON을 반환하지만, 미리 정의된 LLD 매크로는 없습니다. 이 경우 직접 매크로를 정의하고 JSONPath를 사용해 JSON의 값에 매핑할 수 있습니다.

추출된 값은 검색된 아이템, 트리거 등에서 사용할 수 있습니다. 값은 디스커버리 결과와 지금까지의 전처리 단계 결과로부터 추출된다는 점에 유의하세요.
| 매개변수 | 설명 |
|---|---|
| LLD 매크로 | 다음 문법을 사용하는 로우 레벨 디스커버리 매크로의 이름입니다: {#MACRO}. |
| JSONPath | JSONPath 문법을 사용해 LLD 행에서 LLD 매크로 값을 추출하는 경로입니다. 반환된 JSON에서 추출된 값은 아이템, 트리거 등 프로토타입 필드의 LLD 매크로를 대체하는 데 사용됩니다. JSONPath는 점 표기법 또는 대괄호 표기법으로 지정할 수 있습니다. $['unicode + special chars #1']['unicode + special chars #2']처럼 특수 문자와 유니코드가 있는 경우 대괄호 표기법을 사용해야 합니다.예를 들어, $.foo는 다음 JSON에서 "bar"와 "baz"를 추출합니다: [{"foo":"bar"}, {"foo":"baz"}]$.foo는 다음 JSON에서도 "bar"와 "baz"를 추출합니다: {"data":[{"foo":"bar"}, {"foo":"baz"}]}. 이는 단일 "data" 객체가 자동으로 처리되기 때문입니다(Zabbix 4.2 이전 버전의 로우 레벨 디스커버리 구현과의 하위 호환성을 위함). |
필터
필터는 기준에 맞는 엔티티에 대해서만 실제 아이템, 트리거, 그래프를 생성하는 데 사용할 수 있습니다. 필터 탭에는 디스커버리 값을 필터링할 수 있게 하는 디스커버리 규칙 필터 정의가 포함되어 있습니다.

| 매개변수 | 설명 |
|---|---|
| 계산 유형 | 다음과 같은 필터 계산 옵션을 사용할 수 있습니다. And - 모든 필터를 통과해야 합니다. Or - 하나의 필터만 통과해도 충분합니다. And/Or - 서로 다른 매크로 이름에는 And를, 같은 매크로 이름에는 Or를 사용합니다. 사용자 정의 표현식 - 필터의 사용자 정의 계산을 정의할 수 있습니다. 수식에는 목록의 모든 필터가 포함되어야 합니다. 255자로 제한됩니다. |
| 필터 | 다음과 같은 필터 조건 연산자를 사용할 수 있습니다: 일치, 불일치, 존재함, 존재하지 않음. 일치와 불일치 연산자는 Perl 호환 정규 표현식(PCRE)을 필요로 합니다. 정규 표현식 필드에 정규 표현식을 직접 입력하거나 전역 정규 표현식을 참조할 수 있습니다. 존재함과 존재하지 않음 연산자는 응답에 지정된 LLD 매크로가 있는지 여부를 기준으로 엔티티를 필터링할 수 있게 합니다. 필터의 매크로가 응답에 없으면, "존재하지 않음" 조건이 이 매크로에 지정되어 있지 않은 한 검색된 엔티티는 무시됩니다. 매크로의 부재가 표현식 결과에 영향을 미치는 경우 경고가 표시됩니다. 예를 들어, {#B}가 없는 경우:{#A} matches 1 and {#B} matches 2 - 경고가 표시됨{#A} matches 1 or {#B} matches 2 - 경고 없음. |
예를 들어 C:, D:, E: 파일 시스템에만 관심이 있다면 매크로 필드에 {#FSNAME}을, 정규 표현식 필드에 ^C|^D|^E를 입력하면 됩니다.
{#FSTYPE} 매크로(예: ^ext|^reiserfs)를 사용한 파일 시스템 유형별 필터링과, {#FSDRIVETYPE} 매크로(예: fixed, Windows 에이전트에서만 지원)를 사용한 드라이브 유형별 필터링도 가능합니다.
정규 표현식을 테스트하려면 grep -E를 사용할 수 있습니다. 예:
for f in ext2 nfs reiserfs smbfs;
do echo $f | grep -E '^ext|^reiserfs' || echo "SKIP: $f";
done
LLD 규칙에 사용된 정규 표현식의 실수나 오타(예: 잘못된 "File systems for discovery" 정규 표현식)는 여러 호스트에 걸쳐 수천 개의 구성 요소, 이력 값, 이벤트가 삭제되는 결과를 초래할 수 있습니다.
대소문자만 다른 파일 시스템 이름을 올바르게 검색하려면 MySQL의 Zabbix 데이터베이스가 대소문자를 구분하도록 생성되어야 합니다.
오버라이드
오버라이드 탭은 주어진 기준에 맞는 검색된 객체에 대해 아이템, 트리거, 그래프, 호스트, 디스커버리 프로토타입 목록이나 그 속성을 수정하는 규칙을 설정할 수 있게 합니다.

오버라이드(있는 경우)는 순서를 변경할 수 있는 드래그 앤 드롭 목록으로 표시되며 정의된 순서대로 실행됩니다. 새 오버라이드의 세부 정보를 구성하려면 오버라이드 블록에서
를 클릭합니다.
기존 오버라이드를 편집하려면 오버라이드 이름을 클릭합니다.
오버라이드 규칙의 세부 정보를 편집할 수 있는 팝업 창이 열립니다.

모든 필수 매개변수는 빨간색 별표로 표시되어 있습니다.
| 매개변수 | 설명 |
|---|---|
| 이름 | (LLD 규칙별로) 고유한 오버라이드 이름입니다. |
| 필터가 일치하는 경우 | 필터 조건이 충족되었을 때 다음 오버라이드를 처리할지 여부를 정의합니다. 오버라이드 계속 - 이후의 오버라이드가 계속 처리됩니다. 처리 중지 - (있는 경우) 이전 오버라이드와 이 오버라이드의 작업이 실행되고, 일치한 LLD 행에 대해서는 이후 오버라이드가 무시됩니다. |
| 필터 | 오버라이드를 적용할 검색된 엔티티를 결정합니다. 오버라이드 필터는 디스커버리 규칙 필터 이후에 처리되며 동일한 기능을 가집니다. |
| 작업 | 오버라이드 작업은 다음 세부 정보와 함께 표시됩니다. 조건 - 객체 유형과 객체 이름에 대해 충족되어야 하는 조건. 예: Trigger prototype does not equal Disk space is low (used > 50%). 작업 - 작업을 편집하거나 제거하는 링크가 표시됩니다. |
작업 구성하기
새 작업의 세부 정보를 구성하려면 Operations 블록에서
를 클릭합니다.
기존 작업을 편집하려면 작업 옆의
를 클릭합니다.
작업 세부 정보를 편집할 수 있는 팝업 창이 열립니다.

| 매개변수 | < | < | 설명 |
|---|---|---|---|
| 객체 | < | < | 다섯 가지 유형의 객체를 사용할 수 있습니다. Item prototype Trigger prototype Graph prototype Host prototype Discovery prototype |
| 조건 | < | < | 작업을 적용할 엔티티를 필터링할 수 있게 합니다. |
| 연산자 | < | 지원되는 연산자: equals - 이 프로토타입에 적용 does not equal - 이것을 제외한 모든 프로토타입에 적용 contains - 프로토타입 이름에 이 문자열이 포함되어 있으면 적용 does not contain - 프로토타입 이름에 이 문자열이 포함되어 있지 않으면 적용 matches - 프로토타입 이름이 정규 표현식과 일치하면 적용 does not match - 프로토타입 이름이 정규 표현식과 일치하지 않으면 적용 |
|
| ^ | 패턴 | < | 검색할 정규 표현식 또는 문자열입니다. |
| ^ | 객체: Item prototype | < | < |
| ^ | Create enabled | 체크박스가 표시되면, 원본 아이템 프로토타입 설정을 재정의할 수 있는 버튼이 나타납니다. Yes - 아이템이 활성화 상태로 추가됩니다. No - 아이템이 검색된 엔티티에 추가되지만 비활성화 상태입니다. |
|
| ^ | ^ | Discover | 체크박스가 표시되면, 원본 아이템 프로토타입 설정을 재정의할 수 있는 버튼이 나타납니다. Yes - 아이템이 추가됩니다. No - 아이템이 추가되지 않습니다. |
| ^ | ^ | Update interval | 체크박스가 표시되면, 아이템에 다른 간격을 설정할 수 있는 두 가지 옵션이 나타납니다. Delay - 아이템 업데이트 주기입니다. 사용자 매크로, LLD 매크로, 시간 접미사(예: 30s, 1m, 2h, 1d)를 지원합니다(LLD 매크로 지원은 Zabbix 7.4.11에서 복원됨). Custom interval을 사용하는 경우 0으로 설정해야 합니다. Custom interval - 유연/예약 간격을 지정하려면 를 클릭합니다. 자세한 내용은 사용자 정의 간격을 참조하세요. |
| ^ | ^ | History | 체크박스가 표시되면, 아이템에 대해 다른 이력 저장 기간을 설정할 수 있는 버튼이 나타납니다. Do not store - 선택 시 이력이 저장되지 않습니다. Store up to - 선택 시 오른쪽에 저장 기간을 지정하는 입력 필드가 나타납니다. 사용자 매크로와 LLD 매크로를 지원합니다(LLD 매크로 지원은 Zabbix 7.4.11에서 복원됨). |
| ^ | ^ | Trends | 체크박스가 표시되면, 아이템에 대해 다른 트렌드 저장 기간을 설정할 수 있는 버튼이 나타납니다. Do not store - 선택 시 트렌드가 저장되지 않습니다. Store up to - 선택 시 오른쪽에 저장 기간을 지정하는 입력 필드가 나타납니다. 사용자 매크로와 LLD 매크로를 지원합니다(LLD 매크로 지원은 Zabbix 7.4.11에서 복원됨). |
| ^ | ^ | Tags | 체크박스가 표시되면, 태그-값 쌍을 지정할 수 있는 새 블록이 나타납니다. 사용자 매크로와 LLD 매크로를 지원합니다. 이 태그들은 태그 이름이 같더라도 아이템 프로토타입에 지정된 태그에 추가됩니다. |
| ^ | 객체: Trigger prototype | < | < |
| ^ | Create enabled | 체크박스가 표시되면, 원본 트리거 프로토타입 설정을 재정의할 수 있는 버튼이 나타납니다. Yes - 트리거가 활성화 상태로 추가됩니다. No - 트리거가 검색된 엔티티에 추가되지만 비활성화 상태입니다. |
|
| ^ | ^ | Discover | 체크박스가 표시되면, 원본 트리거 프로토타입 설정을 재정의할 수 있는 버튼이 나타납니다. Yes - 트리거가 추가됩니다. No - 트리거가 추가되지 않습니다. |
| ^ | ^ | Severity | 체크박스가 표시되면, 트리거 심각도를 수정할 수 있는 버튼이 나타납니다. |
| ^ | ^ | Tags | 체크박스가 표시되면, 태그-값 쌍을 지정할 수 있는 새 블록이 나타납니다. 사용자 매크로와 LLD 매크로를 지원합니다. 이 태그들은 태그 이름이 같더라도 트리거 프로토타입에 지정된 태그에 추가됩니다. |
| ^ | 객체: Graph prototype | < | < |
| ^ | Discover | 체크박스가 표시되면, 원본 그래프 프로토타입 설정을 재정의할 수 있는 버튼이 나타납니다. Yes - 그래프가 추가됩니다. No - 그래프가 추가되지 않습니다. |
|
| ^ | 객체: Host prototype | < | < |
| ^ | Create enabled | 체크박스가 표시되면, 원본 호스트 프로토타입 설정을 재정의할 수 있는 버튼이 나타납니다. Yes - 호스트가 활성화 상태로 생성됩니다. No - 호스트가 비활성화 상태로 생성됩니다. |
|
| ^ | ^ | Discover | 체크박스가 표시되면, 원본 호스트 프로토타입 설정을 재정의할 수 있는 버튼이 나타납니다. Yes - 호스트가 검색됩니다. No - 호스트가 검색되지 않습니다. |
| ^ | ^ | Link templates | 체크박스가 표시되면, 템플릿을 지정할 수 있는 입력 필드가 나타납니다. 템플릿 이름을 입력하기 시작하거나 필드 옆의 Select를 클릭해 팝업 창의 목록에서 템플릿을 선택합니다. 이 오버라이드의 템플릿은 호스트 프로토타입에 이미 연결된 모든 템플릿에 추가됩니다. |
| ^ | ^ | Tags | 체크박스가 표시되면, 태그-값 쌍을 지정할 수 있는 새 블록이 나타납니다. 사용자 매크로와 LLD 매크로를 지원합니다. 이 태그들은 태그 이름이 같더라도 호스트 프로토타입에 지정된 태그에 추가됩니다. |
| ^ | ^ | Host inventory | 체크박스가 표시되면, 호스트 프로토타입에 대해 다른 인벤토리 모드를 선택할 수 있는 버튼이 나타납니다. Disabled - 호스트 인벤토리를 채우지 않습니다. Manual - 세부 정보를 수동으로 입력합니다. Automated - 수집된 메트릭을 기반으로 호스트 인벤토리 데이터를 자동으로 채웁니다. |
| ^ | 객체: Discovery prototype | < | < |
| ^ | Create enabled | 체크박스가 표시되면, 원본 디스커버리 프로토타입 설정을 재정의할 수 있는 버튼이 나타납니다. Yes - 디스커버리 규칙이 활성화 상태로 추가됩니다. No - 디스커버리 규칙이 비활성화 상태로 추가됩니다. |
|
| ^ | ^ | Discover | 체크박스가 표시되면, 원본 디스커버리 프로토타입 설정을 재정의할 수 있는 버튼이 나타납니다. Yes - 디스커버리 규칙이 추가됩니다. No - 디스커버리 규칙이 추가되지 않습니다. |
| ^ | ^ | Update interval | 체크박스가 표시되면, 디스커버리 규칙에 다른 간격을 설정할 수 있는 두 가지 옵션이 나타납니다. Delay - 규칙 업데이트 주기입니다. 사용자 매크로, LLD 매크로, 시간 접미사(예: 30s, 1m, 2h, 1d)를 지원합니다. Custom interval을 사용하는 경우 0으로 설정해야 합니다. Custom interval - 유연/예약 간격을 지정하려면 를 클릭합니다. 자세한 내용은 사용자 정의 간격을 참조하세요. |
양식 버튼
양식 하단의 버튼을 통해 여러 작업을 수행할 수 있습니다.
![]() |
디스커버리 규칙을 추가합니다. 이 버튼은 새 디스커버리 규칙에만 사용할 수 있습니다. |
![]() |
디스커버리 규칙의 속성을 업데이트합니다. 이 버튼은 기존 디스커버리 규칙에만 사용할 수 있습니다. |
![]() |
현재 디스커버리 규칙의 속성을 기반으로 다른 디스커버리 규칙을 생성합니다. |
![]() |
디스커버리 규칙을 기반으로 즉시 디스커버리를 수행합니다. 디스커버리 규칙이 이미 존재해야 합니다. 자세한 내용을 참조하세요. 참고: 즉시 디스커버리를 수행할 때 구성 캐시는 업데이트되지 않으므로, 결과에는 디스커버리 규칙 구성에 대한 최근 변경 사항이 반영되지 않습니다. |
![]() |
디스커버리 규칙 구성을 테스트합니다. 이 버튼을 사용해 변경 사항을 영구적으로 적용하지 않고도 구성 설정(연결성 및 매개변수 정확성 등)을 검증할 수 있습니다. |
![]() |
디스커버리 규칙을 삭제합니다. |
![]() |
디스커버리 규칙 속성 편집을 취소합니다. |
검색된 엔티티
아래 스크린샷은 검색된 아이템, 트리거, 그래프가 호스트 구성에서 어떻게 보이는지 보여줍니다. 검색된 엔티티는 그 출처가 되는 디스커버리 규칙에 대한 주황색 링크가 앞에 붙습니다.

동일한 고유성 기준을 가진 엔티티(예: 동일한 키를 가진 아이템이나 동일한 이름을 가진 그래프)가 이미 존재하는 경우, 검색된 엔티티는 생성되지 않는다는 점에 유의하세요. 이 경우 프론트엔드에는 로우 레벨 디스커버리 규칙이 특정 엔티티를 생성할 수 없었다는 오류 메시지가 표시됩니다. 하지만 일부 엔티티를 생성하지 못해 건너뛰어야 했다고 해서 디스커버리 규칙 자체가 지원되지 않는 상태로 바뀌지는 않습니다. 디스커버리 규칙은 계속해서 다른 엔티티를 생성/업데이트합니다.
검색된 엔티티(호스트, 파일 시스템, 인터페이스 등)가 더 이상 검색되지 않거나(또는 더 이상 필터를 통과하지 못하면) 이를 기반으로 생성된 엔티티는 자동으로 비활성화되고 결국 삭제될 수 있습니다.
사라진 리소스는 사라진 리소스 비활성화 매개변수 값에 따라 자동으로 비활성화될 수 있습니다. 이는 사라진 호스트, 아이템, 트리거에 영향을 줍니다.
사라진 리소스는 사라진 리소스 삭제 매개변수 값에 따라 자동으로 삭제될 수 있습니다. 이는 사라진 호스트, 호스트 그룹, 아이템, 트리거, 그래프에 영향을 줍니다.
검색된 엔티티가 '더 이상 검색되지 않음' 상태가 되면, 엔티티 목록에 수명 표시기가 표시됩니다. 마우스 포인터를 위에 올리면 상태 세부 정보를 나타내는 메시지가 표시됩니다.

엔티티가 삭제 대상으로 표시되었지만 예상 시간에 삭제되지 않은 경우(디스커버리 규칙이나 아이템 호스트가 비활성화됨), 디스커버리 규칙이 다음 번 처리될 때 삭제됩니다.
삭제 대상으로 표시된 다른 엔티티를 포함하는 엔티티는 디스커버리 규칙 수준에서 변경되어도 업데이트되지 않습니다. 예를 들어, 삭제 대상으로 표시된 아이템을 포함하는 LLD 기반 트리거는 업데이트되지 않습니다.


기타 디스커버리 유형
기본 제공되는 다른 유형의 디스커버리에 대한 자세한 내용과 사용법은 다음 섹션에서 확인할 수 있습니다.
- 네트워크 인터페이스 디스커버리
- CPU 및 CPU 코어 디스커버리
- SNMP OID 디스커버리
- JMX 객체 디스커버리;
- ODBC SQL 쿼리를 사용한 디스커버리
- Windows 서비스 디스커버리
- Zabbix의 호스트 인터페이스 디스커버리
디스커버리 아이템의 JSON 형식과 Perl 스크립트로 직접 파일 시스템 디스커버러를 구현하는 예시에 대한 자세한 내용은 사용자 정의 LLD 규칙 만들기를 참조하세요.






