2 아이템 값 전처리

원본 보기

2 아이템 값 전처리

개요

전처리는 수신한 아이템 값을 데이터베이스에 저장하기 전에 변환을 적용할 수 있게 해줍니다. 이러한 변환/전처리 단계는 Zabbix server 또는 proxy(아이템이 proxy에 의해 모니터링되는 경우)에서 수행됩니다.

이 기능은 다음과 같은 다양한 사용 사례를 지원합니다:

  • 바이트를 비트로 변환(예: 네트워크 트래픽 값에 "8"을 곱하기);
  • 점진적으로 증가하는 값에 대한 초당 통계 계산;
  • 정규 표현식을 적용하여 값 추출 또는 수정;
  • 값에 대한 사용자 정의 스크립트 실행;
  • 변경되지 않은 값을 폐기하여 데이터베이스 저장소 최적화.

하나의 아이템에 대해 하나 이상의 전처리 단계를 구성할 수 있습니다. 이러한 단계는 구성된 순서대로 실행됩니다.

전처리 단계가 실패하면 아이템이 지원되지 않음 상태가 됩니다. 이는 실패 시 사용자 정의 오류 처리(대부분의 변환에서 사용 가능)를 통해 방지할 수 있으며, 값을 폐기하거나 사용자 정의 값을 설정할 수 있습니다.

로그 아이템의 경우, 로그 메타데이터(값 없음)는 항상 아이템의 지원되지 않음 상태를 재설정하여 다시 지원되도록 만듭니다. 이는 agent에서 로그 값을 수신한 후 초기 오류가 발생한 경우에도 발생합니다.

전처리에 전달된 모든 값은 처음에 문자열로 처리됩니다. 원하는 값 유형(아이템 구성에서 정의된 대로)으로의 변환은 전처리 파이프라인 끝에서 수행됩니다. 그러나 특정 전처리 단계에서 필요한 경우 더 이른 변환을 트리거할 수 있습니다. 자세한 기술 정보는 전처리 세부사항을 참조하세요.

전처리 구성이 예상대로 작동하는지 확인하려면 테스트할 수 있습니다.

참조: 전처리 예제

설정

전처리 단계는 아이템 설정 양식의 전처리 탭에서 정의됩니다.

추가를 클릭하여 지원되는 변환을 선택하세요.

정보 유형 필드는 최소 하나의 전처리 단계가 정의되었을 때 탭 하단에 표시됩니다. 필요한 경우 전처리 탭을 떠나지 않고도 정보 유형을 변경할 수 있습니다. 자세한 매개변수 설명은 아이템 생성을 참조하세요.

Supported transformations

All supported transformations are listed below. Click on the transformation name to see full details about it.

Name Description Type
Regular expression Match the value to the regular expression and replace with the required output. Text
Replace Find the search string and replace it with another (or nothing).
Trim Remove specified characters from the beginning and end of the value.
Right trim Remove specified characters from the end of the value.
Left trim Remove specified characters from the beginning of the value.
XML XPath Extract value or fragment from XML data using XPath functionality. Structured data
JSON Path Extract value or fragment from JSON data using JSONPath functionality.
CSV to JSON Convert CSV file data into JSON format.
XML to JSON Convert data in XML format to JSON.
SNMP walk value Extract value by the specified OID/MIB name and apply formatting options. SNMP
SNMP walk to JSON Convert SNMP values to JSON.
SNMP get value Apply formatting options to the SNMP get value.
Custom multiplier Multiply the value by the specified integer or floating-point value. Arithmetic
Simple change Calculate the difference between the current and previous value. Change
Change per second Calculate the value change (difference between the current and previous value) speed per second.
Boolean to decimal Convert the value from boolean format to decimal. Numeral systems
Octal to decimal Convert the value from octal format to decimal.
Hexadecimal to decimal Convert the value from hexadecimal format to decimal.
JavaScript Enter JavaScript code. Custom scripts
In range Define a range that a value should be in. Validation
Matches regular expression Specify a regular expression that a value must match.
Does not match regular expression Specify a regular expression that a value must not match.
Check for error in JSON Check for an application-level error message located at JSONPath.
Check for error in XML Check for an application-level error message located at XPath.
Check for error using a regular expression Check for an application-level error message using a regular expression.
Check for not supported value Check if no item value could be retrieved.
Discard unchanged Discard a value if it has not changed. Throttling
Discard unchanged with heartbeat Discard a value if it has not changed within the defined time period.
Prometheus pattern Use the following query to extract the required data from Prometheus metrics. Prometheus
Prometheus to JSON Convert the required Prometheus metrics to JSON.

Note that for Change and Throttling preprocessing steps, Zabbix has to remember the last value to calculate/compare the new value as required. These previous values are handled by the preprocessing manager. If Zabbix server or proxy is restarted or there is any change made to preprocessing steps, the last value of the corresponding item is reset, resulting in:

  • for Simple change, Change per second steps - the next value will be ignored because there is no previous value to calculate the change from;
  • for Discard unchanged, Discard unchanged with heartbeat steps - the next value will never be discarded, even if it should have been because of discarding rules.
Regular expression

Match the value to the regular expression and replace with the required output.

Parameters:

  • pattern - the regular expression;
  • output - the output formatting template. An \N (where N=1…9) escape sequence is replaced with the Nth matched group. A \0 escape sequence is replaced with the matched text.

Comments:

  • A failure to match the input value will make the item unsupported;
  • The regular expression supports extraction of maximum 10 captured groups with the \N sequence;
  • If you mark the Custom on fail checkbox, it is possible to specify custom error-handling options: either to discard the value, set a specified value, or set a specified error message. In case of a failed preprocessing step, the item will not become unsupported if the option to discard the value or set a specified value is selected.
  • Please refer to regular expressions section for some existing examples.
Replace

검색 문자열을 찾아서 다른 문자열(또는 빈 문자열)로 바꿉니다.

매개변수:

  • search string - 찾아서 바꿀 문자열, 대소문자 구분 (필수);
  • replacement - 검색 문자열을 대체할 문자열입니다. 대체 문자열은 빈 문자열일 수도 있으며, 이 경우 검색 문자열을 찾았을 때 효과적으로 삭제할 수 있습니다.

주석:

  • 검색 문자열의 모든 항목이 바뀝니다;
  • 줄바꿈, 캐리지 리턴, 탭, 공백을 검색하거나 바꾸기 위해 이스케이프 시퀀스 "\n \r \t \s"를 사용할 수 있습니다; 백슬래시는 "\\"로 이스케이프할 수 있고 이스케이프 시퀀스는 "\\n"로 이스케이프할 수 있습니다;
  • 줄바꿈, 캐리지 리턴, 탭의 이스케이프 처리는 저수준 탐지 중에 자동으로 수행됩니다.
Trim

값의 시작과 끝에서 지정된 문자를 제거합니다.

Right trim

값의 끝에서 지정된 문자를 제거합니다.

Left trim

값의 시작 부분에서 지정된 문자를 제거합니다.

XML XPath

Extract value or fragment from XML data using XPath functionality.

Comments:

  • For this option to work, Zabbix server (or Zabbix proxy) must be compiled with libxml support;
  • Namespaces are not supported;
  • If you mark the Custom on fail checkbox, it is possible to specify custom error-handling options: either to discard the value, set a specified value, or set a specified error message. In case of a failed preprocessing step, the item will not become unsupported if the option to discard the value or set a specified value is selected.

Examples:

number(/document/item/value) #will extract '10' from <document><item><value>10</value></item></document>
number(/document/item/@attribute) #will extract '10' from <document><item attribute="10"></item></document>
/document/item #will extract '<item><value>10</value></item>' from <document><item><value>10</value></item></document>
JSON Path

Extract value or fragment from JSON data using JSONPath functionality.

If you mark the Custom on fail checkbox, it is possible to specify custom error-handling options: either to discard the value, set a specified value, or set a specified error message. In case of a failed preprocessing step, the item will not become unsupported if the option to discard the value or set a specified value is selected.

CSV to JSON

Convert CSV file data into JSON format.

For more information, see: CSV to JSON preprocessing.

XML to JSON

XML 형식의 데이터를 JSON으로 변환합니다.

자세한 정보는 다음을 참조하세요: 직렬화 규칙.

Custom on fail 체크박스를 선택하면 사용자 정의 오류 처리 옵션을 지정할 수 있습니다: 값을 버리거나, 지정된 값을 설정하거나, 지정된 오류 메시지를 설정할 수 있습니다. 전처리 단계가 실패한 경우, 값을 버리거나 지정된 값을 설정하는 옵션을 선택하면 항목이 지원되지 않는 상태가 되지 않습니다.

SNMP walk 값

지정된 OID/MIB 이름으로 값을 추출하고 형식 옵션을 적용합니다:

  • 변경 안함 - hex-string을 이스케이프되지 않은 hex 문자열로 반환합니다 (참고: 디스플레이 힌트는 여전히 적용됩니다);
  • hex-STRING에서 UTF-8로 - hex-string을 UTF-8 문자열로 변환합니다;
  • hex-STRING에서 MAC으로 - hex-string을 MAC 주소로 검증하고 적절한 MAC 주소 문자열을 반환합니다 (' '':'로 대체됩니다);
  • BITS에서 정수로 - hex 문자 시퀀스로 표현된 비트 문자열의 처음 8바이트(예: "1A 2B 3C 4D")를 64비트 부호 없는 정수로 변환합니다. 8바이트보다 긴 비트 문자열에서는 뒤따르는 바이트들은 무시됩니다.

실패 시 사용자 정의 체크박스를 선택하면 사용자 정의 오류 처리 옵션을 지정할 수 있습니다: 값을 폐기하거나, 지정된 값을 설정하거나, 지정된 오류 메시지를 설정할 수 있습니다. 전처리 단계가 실패한 경우, 값을 폐기하거나 지정된 값을 설정하는 옵션을 선택하면 해당 항목은 지원되지 않는 상태가 되지 않습니다.

SNMP walk to JSON

Convert SNMP values to JSON.

Specify a field name in the JSON and the corresponding SNMP OID path. Field values will be populated by values in the specified SNMP OID path.

Comments:

  • Similar value formatting options as in the SNMP walk value step are available;
  • You may use this preprocessing step for SNMP OID discovery;
  • If you mark the Custom on fail checkbox, it is possible to specify custom error-handling options: either to discard the value, set a specified value, or set a specified error message. In case of a failed preprocessing step, the item will not become unsupported if the option to discard the value or set a specified value is selected.
SNMP get value

Apply formatting options to the SNMP get value:

  • UTF-8 from Hex-STRING - convert hex-string to UTF-8 string;
  • MAC from Hex-STRING - validate hex-string as MAC address and return a proper MAC address string (where ' ' are replaced by ':');
  • Integer from BITS - convert the first 8 bytes of a bit string expressed as a sequence of hex characters (e.g., "1A 2B 3C 4D") into a 64-bit unsigned integer. In bit strings longer than 8 bytes, consequent bytes will be ignored.

If you mark the Custom on fail checkbox, it is possible to specify custom error-handling options: either to discard the value, set a specified value, or set a specified error message. In case of a failed preprocessing step, the item will not become unsupported if the option to discard the value or set a specified value is selected.

사용자 정의 승수

지정된 정수 또는 부동 소수점 값으로 값을 곱합니다.

주의사항:

  • 이 옵션을 사용하여 KB, MBps 등으로 받은 값을 B, Bps로 변환하세요. 그렇지 않으면 Zabbix가 접두사(K, M, G 등)를 올바르게 설정할 수 없습니다.
  • 아이템의 정보 유형이 숫자(부호 없음)인 경우, 사용자 정의 승수가 적용되기 전에 소수 부분이 있는 수신 값은 잘립니다(즉, '0.9'는 '0'이 됩니다).
  • 정보 유형이 숫자(부호 없음)으로 설정된 아이템에 대해 사용자 정의 승수를 사용하거나 초당 변화량으로 값을 저장할 때, 결과 계산 값이 실제로는 부동 소수점 수인 경우에도 소수 부분을 잘라내고 정수로 저장하여 올바른 값으로 받아들여집니다.
  • 지원되는 형식: 과학적 표기법(예: 1e+70); 사용자 매크로 및 LLD 매크로; 매크로를 포함하는 문자열(예: {#MACRO}e+10, {$MACRO1}e+{$MACRO2}). 매크로는 정수 또는 부동 소수점 수로 해석되어야 합니다.
  • 실패 시 사용자 정의 체크박스를 선택하면 사용자 정의 오류 처리 옵션을 지정할 수 있습니다: 값 버리기, 지정된 값 설정, 또는 지정된 오류 메시지 설정. 전처리 단계가 실패한 경우, 값 버리기 또는 지정된 값 설정 옵션이 선택되면 아이템은 지원되지 않음 상태가 되지 않습니다.
단순 변화

현재 값과 이전 값 사이의 차이를 계산합니다.

설명:

  • 이 단계는 지속적으로 증가하는 값을 측정하는 데 유용할 수 있습니다;
  • value-prev_value로 계산됩니다. 여기서 value는 현재 값이고, prev_value는 이전에 받은 값입니다;
  • 항목당 하나의 변화 작업("단순 변화" 또는 "초당 변화")만 허용됩니다;
  • 현재 값이 이전 값보다 작으면, Zabbix는 그 차이를 폐기하고(아무것도 저장하지 않음) 다른 값을 기다립니다;
  • Custom on fail 체크박스를 선택하면, 사용자 정의 오류 처리 옵션을 지정할 수 있습니다: 값을 폐기하거나, 지정된 값을 설정하거나, 지정된 오류 메시지를 설정할 수 있습니다. 전처리 단계가 실패한 경우, 값을 폐기하거나 지정된 값을 설정하는 옵션을 선택하면 항목이 지원되지 않음 상태가 되지 않습니다.
초당 변화량

초당 값 변화량(현재 값과 이전 값 간의 차이) 속도를 계산합니다.

참고사항:

  • 이 단계는 지속적으로 증가하는 값의 초당 속도를 계산하는 데 유용합니다;
  • 이 계산은 부동소수점 숫자를 생성할 수 있으므로, 들어오는 원시 값이 정수라 하더라도 '정보 유형'을 Numeric (float)로 설정하는 것이 권장됩니다. 이는 소수 부분이 중요한 작은 숫자에 특히 관련이 있습니다. 부동소수점 값이 크고 'float' 필드 길이를 초과할 수 있어 전체 값이 손실될 수 있는 경우, 실제로는 Numeric (unsigned)를 사용하여 소수 부분만 자르는 것이 권장됩니다.
  • (value-prev_value)/(time-prev_time)으로 평가되며, 여기서 value는 현재 값, prev_value는 이전에 받은 값, time은 현재 타임스탬프, prev_time은 이전 값의 타임스탬프입니다;
  • 항목당 하나의 변화 연산("Simple change" 또는 "Change per second")만 허용됩니다;
  • 현재 값이 이전 값보다 작으면, Zabbix는 그 차이를 버리고(아무것도 저장하지 않음) 다른 값을 기다립니다. 이는 예를 들어 32비트 SNMP 카운터의 래핑(오버플로)과 같은 상황에서 올바르게 작동하는 데 도움이 됩니다.
  • Custom on fail 체크박스를 표시하면, 사용자 정의 오류 처리 옵션을 지정할 수 있습니다: 값을 버리거나, 지정된 값을 설정하거나, 지정된 오류 메시지를 설정할 수 있습니다. 전처리 단계가 실패한 경우, 값을 버리거나 지정된 값을 설정하는 옵션이 선택되면 항목이 지원되지 않는 상태가 되지 않습니다.
Boolean을 십진수로

값을 boolean 형식에서 십진수로 변환합니다.

설명:

  • 텍스트 표현은 0 또는 1로 변환됩니다. 따라서 'TRUE'는 1로 저장되고 'FALSE'는 0으로 저장됩니다. 모든 값은 대소문자를 구분하지 않고 일치됩니다. 현재 인식되는 값은 TRUE의 경우 - true, t, yes, y, on, up, running, enabled, available, ok, master이고, FALSE의 경우 - false, f, no, n, off, down, unused, disabled, unavailable, err, slave입니다. 또한 0이 아닌 모든 숫자 값은 TRUE로 간주되고 0은 FALSE로 간주됩니다.
  • Custom on fail 체크박스를 체크하면 사용자 정의 오류 처리 옵션을 지정할 수 있습니다: 값을 버리거나, 지정된 값을 설정하거나, 지정된 오류 메시지를 설정할 수 있습니다. 전처리 단계가 실패할 경우, 값을 버리거나 지정된 값을 설정하는 옵션을 선택하면 해당 아이템이 지원되지 않는 상태가 되지 않습니다.
8진법에서 10진법으로

8진법 형식의 값을 10진법으로 변환합니다.

실패 시 사용자 정의 체크박스를 선택하면 사용자 정의 오류 처리 옵션을 지정할 수 있습니다: 값을 폐기하거나, 지정된 값을 설정하거나, 지정된 오류 메시지를 설정할 수 있습니다. 전처리 단계가 실패한 경우, 값을 폐기하거나 지정된 값을 설정하는 옵션이 선택되면 해당 항목은 미지원 상태가 되지 않습니다.

16진수를 10진수로

16진수 형식의 값을 10진수로 변환합니다.

실패 시 사용자 정의 체크박스를 선택하면 사용자 정의 오류 처리 옵션을 지정할 수 있습니다: 값을 폐기하거나, 지정된 값을 설정하거나, 지정된 오류 메시지를 설정할 수 있습니다. 전처리 단계가 실패한 경우, 값을 폐기하거나 지정된 값을 설정하는 옵션을 선택하면 해당 아이템은 지원되지 않음 상태가 되지 않습니다.

JavaScript

매개변수 필드를 클릭하거나 옆의 연필 아이콘을 클릭할 때 열리는 모달 편집기에서 JavaScript 코드를 입력하세요.

전처리 JavaScript에서 선언되지 않은 할당을 사용하지 마세요. 지역 변수를 선언할 때는 var를 사용하세요.

참고사항:

범위 내

최소/최대 값을 지정하여(포함) 값이 있어야 하는 범위를 정의합니다.

참고사항:

  • 숫자 값이 허용됩니다(임의의 자릿수, 선택적 소수 부분과 지수 부분, 음수 값 포함);
  • 최소값은 최대값보다 작아야 합니다;
  • 적어도 하나의 값이 존재해야 합니다;
  • 사용자 매크로와 저수준 탐지 매크로를 사용할 수 있습니다;
  • 실패 시 사용자 지정 체크박스를 선택하면 사용자 지정 오류 처리 옵션을 지정할 수 있습니다: 값을 버리거나, 지정된 값을 설정하거나, 지정된 오류 메시지를 설정할 수 있습니다. 전처리 단계가 실패한 경우, 값을 버리거나 지정된 값을 설정하는 옵션을 선택하면 항목이 지원되지 않음 상태가 되지 않습니다.
정규 표현식 일치

값이 일치해야 하는 정규 표현식을 지정합니다.

실패 시 사용자 정의 체크박스를 선택하면 사용자 정의 오류 처리 옵션을 지정할 수 있습니다: 값을 버리거나, 지정된 값을 설정하거나, 지정된 오류 메시지를 설정할 수 있습니다. 전처리 단계가 실패한 경우, 값을 버리거나 지정된 값을 설정하는 옵션을 선택하면 항목이 지원되지 않음 상태가 되지 않습니다.

정규 표현식과 일치하지 않음

값이 일치하지 않아야 하는 정규 표현식을 지정합니다.

Custom on fail 체크박스를 선택하면 사용자 정의 오류 처리 옵션을 지정할 수 있습니다: 값을 삭제하거나, 지정된 값을 설정하거나, 지정된 오류 메시지를 설정할 수 있습니다. 전처리 단계가 실패한 경우, 값을 삭제하거나 지정된 값을 설정하는 옵션을 선택하면 아이템이 지원되지 않는 상태가 되지 않습니다.

JSON 에러 확인

JSONPath에 위치한 애플리케이션 수준의 에러 메시지를 확인합니다. 성공하고 메시지가 비어있지 않으면 처리를 중단하고, 그렇지 않으면 이 전처리 단계 이전의 값으로 계속 처리합니다.

주석:

  • 이러한 외부 서비스 에러는 전처리 단계 정보를 추가하지 않고 그대로 사용자에게 보고됩니다;
  • 유효하지 않은 JSON 파싱에 실패한 경우에는 에러가 보고되지 않습니다;
  • 실패 시 사용자 정의 체크박스를 표시하면 사용자 정의 에러 처리 옵션을 지정할 수 있습니다: 값을 삭제하거나, 지정된 값을 설정하거나, 지정된 에러 메시지를 설정할 수 있습니다. 전처리 단계가 실패한 경우, 값을 삭제하거나 지정된 값을 설정하는 옵션을 선택하면 항목이 지원되지 않는 상태가 되지 않습니다.
XML에서 오류 확인

XPath에 위치한 애플리케이션 수준의 오류 메시지를 확인합니다. 성공하고 메시지가 비어있지 않은 경우 처리를 중단하고, 그렇지 않은 경우 이 전처리 단계 이전의 값으로 처리를 계속합니다.

주석:

  • 이러한 외부 서비스 오류는 전처리 단계 정보를 추가하지 않고 사용자에게 그대로 보고됩니다;
  • 유효하지 않은 XML 파싱에 실패한 경우에는 오류가 보고되지 않습니다;
  • Custom on fail 체크박스를 선택하면 사용자 정의 오류 처리 옵션을 지정할 수 있습니다: 값을 삭제하거나, 지정된 값을 설정하거나, 지정된 오류 메시지를 설정할 수 있습니다. 전처리 단계가 실패한 경우, 값을 삭제하거나 지정된 값을 설정하는 옵션을 선택하면 항목이 지원되지 않는 상태가 되지 않습니다.
정규 표현식을 사용한 오류 확인

정규 표현식을 사용하여 애플리케이션 수준의 오류 메시지를 확인합니다. 성공하고 메시지가 비어있지 않으면 처리를 중단하고, 그렇지 않으면 이 전처리 단계 이전의 값으로 처리를 계속합니다.

매개변수:

  • pattern - 정규 표현식;
  • output - 출력 형식 템플릿. \N (여기서 N=1…9) 이스케이프 시퀀스는 N번째 일치하는 그룹으로 대체됩니다. \0 이스케이프 시퀀스는 일치하는 텍스트로 대체됩니다.

참고사항:

  • 이러한 외부 서비스 오류는 전처리 단계 정보를 추가하지 않고 사용자에게 그대로 보고됩니다;
  • Custom on fail 체크박스를 체크하면 사용자 정의 오류 처리 옵션을 지정할 수 있습니다: 값을 폐기하거나, 지정된 값을 설정하거나, 지정된 오류 메시지를 설정할 수 있습니다. 전처리 단계가 실패한 경우, 값을 폐기하거나 지정된 값을 설정하는 옵션을 선택하면 항목이 지원되지 않는 상태가 되지 않습니다.
지원되지 않는 값 확인

아이템 값을 검색할 수 없는지 확인합니다. 반환된 오류 메시지를 검사하여 실패를 어떻게 처리할지 지정합니다.

매개변수:

  • scope - 오류 처리 범위를 선택합니다:
    any error - 모든 오류;
    error matches - pattern에 지정된 정규 표현식과 일치하는 오류만;
    error does not match - pattern에 지정된 정규 표현식과 일치하지 않는 오류만
  • pattern - 오류와 일치시킬 정규 표현식입니다. scope 매개변수에서 any error가 선택된 경우 이 필드는 표시되지 않습니다. 표시되는 경우 이 필드는 필수입니다.

주석:

  • 일반적으로 값이 없거나 검색에 실패하면 아이템이 지원되지 않음 상태가 됩니다. 이 전처리 단계를 사용하면 이러한 동작을 수정할 수 있습니다. Custom on fail 체크박스를 선택하면(이 전처리 단계에서는 항상 선택되고 회색으로 표시됨) 사용자 정의 오류 처리 옵션을 지정할 수 있습니다: 값을 삭제하거나, 지정된 값을 설정하거나, 지정된 오류 메시지를 설정할 수 있습니다. 전처리 단계가 실패한 경우, 값을 삭제하거나 지정된 값을 설정하는 옵션이 선택되면 아이템이 지원되지 않음 상태가 되지 않습니다.
  • 이 전처리 단계는 아이템 값을 검색할 수 없는지만 확인합니다. 예를 들어 검색된 값의 유형(예: 문자열)이 아이템의 정보 유형(예: 숫자)과 일치하는지는 확인하지 않습니다. 자세한 내용은 전처리 예제를 참조하세요. 유형 불일치가 있는 경우 모든 전처리 단계가 실행된 후에도 아이템이 지원되지 않음 상태가 될 수 있습니다. 유형 불일치를 확인하려면 예를 들어 Custom multiplier 전처리 단계를 사용할 수 있습니다. 전처리 예제를 참조하세요.
  • 정규 표현식 그룹 캡처는 Set value to 또는 Set error to 필드에서 지원됩니다. \N(여기서 N=1…9)을 사용하여 N번째 일치하는 그룹을 검색하고, \0을 사용하여 일치하는 텍스트를 검색합니다;
  • 이 단계들은 항상 첫 번째 전처리 단계로 실행되며, 아이템 변경 사항을 저장한 후 다른 모든 단계들보다 위에 배치됩니다;
  • 여러 개의 Check for not supported value 단계가 지정된 순서대로 지원됩니다. any error에 대한 단계는 이 그룹에서 마지막 단계로 자동 배치됩니다.
변경되지 않은 값 폐기

값이 변경되지 않았다면 폐기합니다.

참고사항:

  • 값이 폐기되면 데이터베이스에 저장되지 않으며 Zabbix 서버는 해당 값이 수신되었다는 것을 알 수 없습니다. 트리거 표현식이 평가되지 않으므로 관련 트리거에 대한 문제가 생성/해결되지 않습니다. 함수는 데이터베이스에 실제로 저장된 데이터를 기반으로만 작동합니다. 트렌드는 데이터베이스의 데이터를 기반으로 구축되므로, 한 시간 동안 저장된 값이 없으면 해당 시간에 대한 트렌드 데이터도 없게 됩니다.
  • 아이템당 하나의 스로틀링 옵션만 지정할 수 있습니다.
하트비트로 변경되지 않은 값 폐기

정의된 시간 기간(초) 내에서 값이 변경되지 않은 경우 해당 값을 폐기합니다.

주의사항:

  • 초를 지정하는 양의 정수 값이 지원됩니다 (최소 - 1초);
  • 시간 접미사를 사용할 수 있습니다 (예: 30s, 1m, 2h, 1d);
  • 사용자 매크로 및 low-level discovery 매크로를 사용할 수 있습니다;
  • 값이 폐기되면 데이터베이스에 저장되지 않으며 Zabbix 서버는 이 값이 수신되었다는 것을 알지 못합니다. 트리거 표현식이 평가되지 않으므로 관련 트리거에 대한 문제가 생성/해결되지 않습니다. 함수는 실제로 데이터베이스에 저장된 데이터를 기반으로만 작동합니다. 트렌드는 데이터베이스의 데이터를 기반으로 구축되므로, 한 시간 동안 저장된 값이 없으면 해당 시간에 대한 트렌드 데이터도 없게 됩니다.
  • 아이템당 하나의 스로틀링 옵션만 지정할 수 있습니다.
Prometheus 패턴

Prometheus 메트릭에서 필요한 데이터를 추출하려면 다음 쿼리를 사용하세요.

자세한 내용은 Prometheus 검사를 참조하세요.

Prometheus to JSON

필요한 Prometheus 메트릭을 JSON으로 변환합니다.

자세한 내용은 Prometheus 검사를 참조하세요.

매크로 지원

사용자 매크로와 컨텍스트가 있는 사용자 매크로는 다음에서 지원됩니다:

  • JavaScript 코드를 포함한 전처리 단계 매개변수
  • 사용자 정의 오류 처리 매개변수 (Set value toSet error to 필드).

매크로가 해당 값으로 대체될 때 매크로 컨텍스트는 무시됩니다. 매크로 값은 코드에 그대로 삽입되며, JavaScript 코드에 값을 배치하기 전에 추가 이스케이핑을 추가할 수 없습니다. 이로 인해 경우에 따라 JavaScript 오류가 발생할 수 있음을 알려드립니다.

테스팅

전처리 테스팅을 참조하세요.

다음 단계는?