Cacti는 스크립트를 사용하여 어떻게 데이터를 수집하나요?

Cacti는 스크립트를 사용하여 어떻게 데이터를 수집하나요?

우리는 Cacti가 SNMP를 사용하여 데이터를 쿼리하고 수집한다는 것을 알고 있습니다. 내가 아는 한 SNMP 관리자는 개체 ID(OID)를 사용하여 특정 개체에 대해 쿼리하고 해당 OID와 관련된 SNMP 에이전트로부터 응답을 얻습니다.

perlCacti가 예를 들어 또는 python스크립트를 사용하여 데이터를 수집하는 방식이 저를 혼란스럽게 합니다 . 그러면 SNMP를 사용합니까? 그렇다면 프로토콜은 어떻게 작동합니까?

답변1

당신 은 CactiSNMP 쿼리에만 국한되지 않습니다.

데이터 입력 방법으로 자신만의 스크립트를 실행하도록 선택할 수 있습니다. Perl, PHP, 또는 무엇 Python이든 될 수 있습니다 Bash. 스크립트/명령 입력 유형을 선택하세요.

여기에 이미지 설명을 입력하세요

스크립트는 하나 이상의 값을 출력해야 합니다. 이 값은 내부의 출력 필드에 첨부되고 Cacti나중에 최종 그래프를 생성하는 데 사용됩니다.

12출력 필드가 하나만 필요한 경우 다른 항목( 예: , ) 없이 값을 있는 그대로 인쇄합니다 (예 ms: %).

#!/bin/sh
ping -c1 host | grep rtt | cut -d"=" -f2 | cut -d"/" -f2

여러 값을 검색해야 하는 경우 출력 형식은 다음과 같아야 합니다.

field1:value1 field2:value2 field3:value3

그런 다음 각 필드가 출력 필드에 연결됩니다.

#!/bin/sh
result=$(ping -c1 host | grep rtt | cut -d"=" -f2)
min=$(echo $result | cut -d"/" -f1)
avg=$(echo $result | cut -d"/" -f2)
max=$(echo $result | cut -d"/" -f3)
echo "min:$min avg:$avg max:$max"

여기에서 추가 설명과 예를 찾을 수 있습니다.

관련 정보