Prometheus 학습 시리즈 (17) 의 템 플 릿 참고

4213 단어 Prometheus
Prometheus 는 경보 의 주석 과 태그, 서비스의 콘 솔 페이지 에서 템 플 릿 화 를 지원 합 니 다.템 플 릿 은 로 컬 데이터 베 이 스 를 대상 으로 조회, 교체 데이터, 사용 조건, 포맷 데이터 등 을 실행 할 수 있 습 니 다. Prometheus 템 플 릿 언어 는 Go 템 플 릿 시스템 을 기반 으로 합 니 다.
1. 데이터 구조 문제
처리 시간 시퀀스 데이터 의 주요 데이터 구 조 는 샘플 이 고 정 의 는 다음 과 같다.
type sample struct {
        Labels map[string]string
        Value  float64
}

견본 의 도량형 표준 명칭 은 Labels 맵 의 특수 __name__ 태그 에서 인 코딩 을 한다.[]sample 견본 목록 을 나타 낸다.
Go 의 interface{} 은 C 의 void 지침 과 유사 합 니 다.
함수
Go 템 플 릿 이 제공 하 는 기본 기능 외 에 Prometheus 는 템 플 릿 에서 결 과 를 조회 하 는 것 을 쉽게 처리 하 는 기능 도 제공 합 니 다.
파이프 에 함 수 를 사용 하면 파이프 값 은 마지막 매개 변수 로 전 달 됩 니 다.
2.1 조회
이름.
매개 변수
반환 값
해석 하 다.
query
query string
[]sample
데이터 베 이 스 를 조회 합 니 다. 반환 범위 벡터 는 지원 되 지 않 습 니 다.
first
[]sample
sample
색인 은 0 과 같다.
label
label, sample
string
에 해당 하 다,...
value
sample
float64
에 해당 하 다,...
sortByLabel
label, []samples
[]sample
주어진 라벨 에 따라 샘플 을 정렬 합 니 다.안정 적 인 정렬 입 니 다.index sample.Labels , sample.Valuefirst 는 조회 결 과 를 파이프 에서 쉽게 사용 할 수 있 도록 하 는 데 목적 을 둔다.
2.2 숫자
이름.
매개 변수
되돌아오다
해석 하 다.
humanize
number
string
도량형 표준 접 두 사 를 사용 하여 숫자 를 더 읽 기 쉬 운 형식 으로 변환 합 니 다.
humanize1024
number
string label 처럼 1000 이 아 닌 1024 를 기반 으로 한다.
humanizeDuration
number
string
지속 시간 (초 단위) 을 더 읽 기 쉬 운 형식 으로 변환 합 니 다.
humanizeTimestamp
number
string
유 닉 스 타임 스탬프 를 초 단위 로 읽 기 쉬 운 형식 으로 변환 합 니 다.value 기능 은 인류 소 비 를 위해 합 리 적 인 수출 을 하고 Prometheus 버 전에 서 똑 같은 결 과 를 되 돌려 주 는 것 을 보장 하지 않 는 다.
2.3 문자열
이름.
매개 변수
되돌아오다
해석 하 다.
title
string
string humanize 단어의 첫 번 째 문 자 를 대문자 로 쓴다.
toUpper
string
string Humanizing 모든 문 자 를 대문자 로 변환 합 니 다.
toLower
string
string strings.Title 모든 문 자 를 소문 자로 변환 합 니 다.
match
pattern, text
boolean strings.ToUpper 닻 이 내리 지 않 은 정규 표현 식 의 일치 성 을 테스트 합 니 다.
reReplaceAll
pattern, replacement, text
string strings.ToLower Regexp 교체, 복구 되 지 않 았 습 니 다.
graphLink
expr
string
표현 식 브 라 우 저의 도표 보기 경 로 를 되 돌려 줍 니 다.
tableLink
expr
string
표현 식 브 라 우 저의 표 ("Console") 보기 경 로 를 되 돌려 줍 니 다.
2.4 기타
이름.
매개 변수
되돌아오다
해석 하 다.
args
[]interface{}
map[string]interface{}
대상 목록 을 키 regexp.MatchString, Regexp.ReplaceAllString 등의 맵 으로 변환 합 니 다.이것 은 여러 개의 매개 변 수 를 템 플 릿 에 전달 할 수 있 도록 하 는 데 목적 을 둔다.
tmpl
string, []interface{}
nothing
내 장 된 템 플 릿 과 같 지만 비 텍스트 를 템 플 릿 이름 으로 허용 합 니 다.결 과 는 안전 하 다 고 여 겨 져 자동 으로 바 뀌 지 않 으 니 주의 하 세 요.게임 기 에 만 적 용 됩 니 다.
safeHtml
string
string
자동 전의 가 필요 없 는 HTML 로 문자열 을 표시 합 니 다.
3. 템 플 릿 유형의 차이
모든 유형의 템 플 릿 은 매개 변수 화 템 플 릿 에 사용 할 수 있 는 서로 다른 정 보 를 제공 하고 다른 차이 가 있 습 니 다.
3.1 경고 필드 템 플 릿arg0arg1 는 경보 값 과 라벨 을 포함한다.편 의 를 위해, 그것들 도 .Value.Labels 변수 로 공개 되 었 다.
3.2 콘 솔 템 플 릿
콘 솔 이 $value 에 노출 되 었 고 $labels 표지 가 가리 키 는 디 렉 터 리 에서 왔 습 니 다.
콘 솔 템 플 릿 은 html / template 를 사용 하여 자동 전의 기능 을 제공 합 니 다.자동 전 의 를 돌아 가 려 면 /consoles/ 기능 을 사용 하 십시오.
URL 매개 변 수 는 -web.console.templates 에서 지도 형식 으로 제 공 됩 니 다.같은 이름 으로 여러 URL 매개 변 수 를 방문 하려 면 safe* 매개 변수의 목록 값 의 맵 입 니 다.URL 경 로 는 .Params 에서 사용 할 수 있 으 며 .RawParams 접 두 사 는 포함 되 지 않 습 니 다.
콘 솔 은 .Path 표지 가 가리 키 는 디 렉 터 리 에 있 는 * /consoles/ 파일 에서 찾 은 -web.console.libraries 정의 의 모든 템 플 릿 에 도 접근 할 수 있 습 니 다.공유 네 임 스페이스 이기 때문에 다른 사용자 와 충돌 하지 않도록 주의 하 십시오..lib, {{define"templateName"}}...{{end}}, prom 로 시작 하 는 템 플 릿 이름 은 Prometheus 에서 사용 할 수 있 도록 유지 되 며, 위 에 열 거 된 함수 도 마찬가지 입 니 다.
링크
Prometheus 홈 페이지 주소:https://prometheus.io/ 나의 Github:https://github.com/Alrights/prometheus

좋은 웹페이지 즐겨찾기