Telegraf는 원하는 지표들을 수집하고 프로세싱하여 지정한 곳으로 전송해주는 에이전트 입니다. Telegraf는 최소한의 메모리 공간 점유를 목표로 개발되고 있는 오픈소스 프로젝트이며 현재 기준(1.13버전 기준) Telegraf로 지표를 수집할 수 있는 시스템 또는 서비스의 개수가 172개 (Telegraf Input Plugin 리스트)입니다. 와탭 SaaS 모니터링 서비스를 통해 Telegraf에서 전송하는 모든 데이터를 수집할 수 있고 이를 기반으로 와탭에서 데이터 조회, 모니터링 알림을 설정, 커스텀 대시보드를 생성을 할 수 있습니다.
Telegraf 설치, 설정 방법에 관한 것은 Apache, Nginx 웹서버 모니터링(Telegraf, Whatap)글에서 확인할 수 있습니다. 와탭과 Telegraf 연동이 끝난 후 수집된 데이터를 기반으로 하는 모니터링 알림 설정 방법을 알아보겠습니다.
Telegraf를 와탭과 연동하면 와탭은 태그 카운트라는 이름의 Key:Value 테이터 구조로 데이터를 수집, 관리 합니다.
Telegraf로 수집되는 데이터들을 조회 하려면 와탭의 프로젝트에서 사이트맵 > 태그 카운트 조회 페이지로 가면 태그 카운트를 조회할 수 있습니다.
태그 카운트 조회 페이지에서 Telegraf로부터 수집된 데이터의 시간을 정해 조회할 수 있습니다. 와탭은 태그 카운트 구조로 수집된 데이터는 카테고리라는 이름으로 1차 분류를 하는데 Telegraf를 통해 수집된 데이터의 경우 input plugin의 Measurement name을 기반으로 Telegraf_{Measurement name}이라는 이름으로 카테고리를 생성합니다. 생성된 카테고리에는 Telegraf의 태그와 필드가 있습니다. 태그의 경우 Metric을 구분하기 위한 키와 String 값이 수집되는데 와탭에서 에이전트를 구분하기 위한 고유값들을 추가해 데이터를 저장합니다.
카테고리를 선택하고 검색 버튼을 클릭하면 telegraf로부터 수집된 데이터 전체를 조회할 수 있습니다.
이제 이 데이터를 기반으로 알림 설정하는 방법을 알아보겠습니다.
사이트맵 > 태그 카운트 알림 페이지로 이동하면 태그 카운트 알림을 생성할 수 있습니다. 태그 카운트 알림은 기존의 와탭 알림 정책보다 좀 더 세부적인 알림을 생성할 수 있습니다. 알림 규칙 추가 버튼을 눌러 아래와 같은 순서로 알림을 생성할 수 있습니다.
위와 같은 방식으로 Telegraf Docker input plugin을 이용한 컨테이너 개수 모니터링 알림을 설정하면 아래와 같이 됩니다.
telegraf docker input plugin을 이용하여 컨테이너 개수가 10개 미만일때 현재 작동중인 컨테이너 수와 일시중지된 컨테이너 수에 대한 정보를 메세지 내용에 포함시켜 알림을 발생시키는 태그 카운트 알림을 만들었습니다. 세부 조건으로는 알림 필터링을 통해 호스트 이름이 phpdemo-test1이거나 phpdemo로 시작하는 서버만 대상으로 하였고 1분 동안 한 번만 발생해도 알림이 발생됩니다.
Telegraf는 메모리 경량화된 에이전트로써 쉽게 설치할 수 있고 140여개가 넘는 플러그인들을 이용해 대부분의 Metric들을 수집할 수 있습니다. Telegraf에서 수집된 데이터를 관리하기란 쉽지 않은데 Telegraf Whatap output plugin을 이용해 와탭으로 데이터를 전송하고 관리하면 해당 데이터 기반의 대시보드, 데이터 조회, 알림 설정을 쉽게 할 수 있습니다.