MetricInfo - 범위가 지정됨, 전역
MetricInfo API는 메트릭이 데이터베이스에 있는지 MetricBase 확인하고 있는 경우 보존 정책을 보고하는 메서드를 제공합니다. 보존 정책은 분 단위로 보고됩니다.
범위가 지정된 스크립트와 전역 서버 스크립트에서 이 클래스를 호출할 수 있습니다. MetricInfo 클래스를 사용하는 경우 sn_clotho 네임스페이스 식별자를 사용합니다.
이 클래스는 MetricBase 신청.
MetricInfo – MetricInfo(문자열 테이블, 문자열 메트릭)
MetricInfo 클래스의 인스턴스를 만듭니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 테이블 | 문자열 | 시계열 메트릭 [sys_metric] 테이블에 나열된 메트릭 테이블 이름입니다. |
| 메트릭 | 문자열 | 시계열 메트릭 [sys_metric] 테이블에 나열된 메트릭 필드 이름입니다. 이 필드 이름은 테이블 이름에 매핑되어야 합니다. |
다음 예제에서는 Drones [mb_demo_drone] 테이블과 연결된 고도(mb_demo_mt_altitude) 메트릭을 사용하여 MetricInfo 개체를 생성하는 방법을 보여 줍니다.
var metricInfo = new sn_clotho.MetricInfo('mb_demo_drone','mb_demo_mt_altitude');
MetricInfo – getRetentionSchedulesInMinutes()
지정된 메트릭의 보존 정책 일정을 가져옵니다.
다른 살펴볼 내용 MetricBase 보존 정책.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 객체 | 보존 정책 [sys_metric_retention_policy] 테이블에 나열된 지정된 메트릭에 대한 보존 정책 일정(분)을 나타내는 키-값 쌍을 포함하는 JSON 객체입니다. 메트릭에 속하는 각 보존 정책 일정의 경우, 객체에는 보존 기간을 샘플링 기간에 매핑하는 해당 키-값 쌍이 포함됩니다.
|
다음 예제에서는 보존 정책 일정을 반복하고 로그 메시지를 컴파일하는 방법을 보여 줍니다. 메시지에는 해당 샘플링 기간과 함께 몇 분에서 며칠로 변환된 보존 기간이 포함되어 있습니다.
// Function to convert minutes to days
function toDays(minutes) {
return minutes / 60 / 24;
};
var metricInfo = new sn_clotho.MetricInfo('mb_demo_drone','mb_demo_mt_altitude');
var schedules = metricInfo.getRetentionSchedulesInMinutes();
var log = '';
// Compiles a log message with retention schedules
for (var duration in schedules) {
log += "Retention duration is: " + toDays(duration) +
" days, Sampling period is: " + schedules[duration] + " minutes\n";
}
gs.info(log);
출력:
Retention duration is: 8 days, Sampling period is: 1 minutes
Retention duration is: 94 days, Sampling period is: 10 minutes
Retention duration is: 397 days, Sampling period is: 60 minutes
MetricInfo – isValid()
지정된 메트릭이 MetricInfo 개체에 정의된 테이블에 매핑되는지 여부를 나타냅니다.
| 이름 | 유형 | 설명 |
|---|---|---|
| 없음 |
| 유형 | 설명 |
|---|---|
| 부울 | MetricInfo 개체에 지정된 메트릭이 지정된 테이블에 매핑되는지 여부를 나타내는 플래그입니다. 유효한 값은 다음과 같습니다.
|
다음 예제에서는 고도(mb_demo_mt_altitude) 메트릭이 드론 [mb_demo_drone] 테이블에 있는지 확인하고 있는 경우 보존 일정을 반환하는 방법을 보여줍니다. 예제 출력은 간격 샘플링 기간에 매핑된 정책 기간(분)을 반영합니다.
var metricInfo = new sn_clotho.MetricInfo('mb_demo_drone','mb_demo_mt_altitude');
if (metricInfo.isValid())
{
var retentionSchedules = metricInfo.getRetentionSchedulesInMinutes();
gs.info(JSON.stringify(retentionSchedules, null, 2));
}
else
{
gs.info("metricInfo is invalid");
}
출력:
{
"11520": 1,
"135360": 10,
"571680": 60
}