콘텐츠로 이동

Trino

Trino 메트릭 정보를 수집합니다.

설치 설정

Trino는 Java로 작성된 애플리케이션으로, jmx 방식으로 메트릭 정보를 가져올 수 있습니다.

JMX Exporter는 Java 애플리케이션의 JMX(Java Management Extensions)메트릭을 Prometheus 형식의 측정 데이터로 내보내는 오픈 소스 도구입니다.

JMX Exporter를 통해 Trino 메트릭 정보를 가져오고, DataKit의 prom 수집기를 활성화하여 jmx 메트릭 정보를 수집합니다.

JMX Exporter 다운로드

다운로드 주소 https://github.com/prometheus/jmx_exporter/releases

Coordinator 노드

coordinatorTrino의 한 Server 유형으로, 구문 분석, 쿼리 계획 수립, worker 관리 역할을 담당합니다.

  • jmx_config.yaml 작성
rules:
- pattern: ".*"
  • 시작 명령 조정
...
-javaagent:/opt/apache/trino/lib/jmx_prometheus_javaagent-0.19.0.jar=3900:/opt/apache/trino/etc/jmx_config.yaml \
-Dnode.environment=test \
-Dnode.id=trino-coordinator \
...

여기서 3900은 외부에 노출되는 포트이며, 시작 후 http://localhost:3900를 통해 메트릭 정보를 확인할 수 있습니다.

DataKit 수집기 설정

Trino는 JMX Exporter를 통해 metrics URL을 직접 노출할 수 있으므로, prom 수집기로 바로 수집할 수 있습니다.

다음 작업을 수행합니다:

cd datakit/conf.d/samples
cp prom.conf.sample trino.conf

trino.conf 내용을 다음과 같이 조정합니다:

  urls = ["http://localhost:3900"]

  source = "trino"

  [inputs.prom.tags]
    component="trino"
  interval = "10s"

기타 설정은 필요에 따라 조정

, 조정 파라미터 설명:

  • urls:prometheus 메트릭 주소, 여기에는 해당 구성 요소가 노출하는 메트릭 url을 입력합니다.
  • source:수집기 별칭, 구분되도록 사용하는 것을 권장합니다.
  • interval:수집 간격

DataKit 재시작

DataKit 재시작

메트릭

메트릭 세트 Trino

메트릭 설명
memory_ClusterMemoryPool_Nodes 클러스터 노드 수
memory_ClusterMemoryPool_BlockedNodes 메모리 클러스터 메모리 풀에서 차단된 노드
memory_ClusterMemoryPool_FreeDistributedBytes 클러스터 메모리 풀에서 할당되지 않은 사용 가능 메모리
memory_ClusterMemoryPool_TotalDistributedBytes 클러스터 메모리의 총 메모리
memory_ClusterMemoryPool_ReservedDistributedBytes 클러스터 메모리 풀에서 할당되지 않은 사용 가능 메모리
memory_ClusterMemoryManager_ClusterMemoryBytes 클러스터 메모리 크기
memory_ClusterMemoryManager_QueriesKilledDueToOutOfMemory OOM으로 종료된 쿼리 총수
execution_QueryManager_RunningQueries 현재 실행 중인 쿼리 수
execution_QueryManager_QueuedQueries 대기 중인 쿼리 수
execution_QueryManager_SubmittedQueries_OneMinute_Count 분당 제출된 쿼리 수
execution_QueryManager_CompletedQueries_OneMinute_Count 분당 완료된 쿼리 수
execution_QueryManager_CompletedQueries_TotalCount 쿼리 완료 총수
execution_QueryManager_FailedQueries_OneMinute_Count 분당 실패한 쿼리 수
execution_QueryManager_FailedQueries_FiveMinute_Count 5분 내 실패한 쿼리 수
execution_QueryManager_UserErrorFailures_OneMinute_Count 분당 예외로 인해 실패한 쿼리 수
execution_QueryManager_UserErrorFailures_FiveMinute_Count 5분 내 예외로 인해 실패한 쿼리 수
execution_QueryManager_UserErrorFailures_TotalCount 예외로 인해 실패한 쿼리 총수
execution_QueryManager_InternalFailures_OneMinute_Count 분당 서비스 내부 예외로 인해 실패한 쿼리 수
execution_QueryManager_InternalFailures_FiveMinute_Count 5분 내 서비스 내부 예외로 인해 실패한 쿼리 수
execution_QueryManager_InternalFailures_TotalCount 서비스 내부 예외로 인해 실패한 쿼리 총수
execution_SqlTaskManager_InputDataSize_OneMinute_Count 분당 Task 입력 데이터량
execution_SqlTaskManager_InputDataSize_FiveMinute_Count 5분 Task 입력 데이터량
execution_SqlTaskManager_InputDataSize_TotalCount Task 입력 데이터량
execution_SqlTaskManager_InputPositions_OneMinute_Count 분당 Task 입력 데이터 행 수
execution_SqlTaskManager_InputPositions_FiveMinute_Count 5분 Task 입력 데이터 행 수
execution_SqlTaskManager_InputPositions_TotalCount Task 입력 데이터 행 총수
execution_SqlTaskManager_OutputDataSize_OneMinute_Count 분당 Task 출력 데이터량
execution_SqlTaskManager_OutputDataSize_FiveMinute_Count 5분 Task 출력 데이터량
execution_SqlTaskManager_OutputDataSize_TotalCount Task 출력 데이터량
execution_SqlTaskManager_OutputPositions_OneMinute_Count 분당 Task 출력 데이터 행 수
execution_SqlTaskManager_OutputPositions_FiveMinute_Count 5분 Task 출력 데이터 행 수
execution_SqlTaskManager_OutputPositions_TotalCount Task 출력 데이터 행 총수
execution_SqlTaskManager_FailedTasks_OneMinute_Count 분당 실패한 Task 수
execution_SqlTaskManager_FailedTasks_FiveMinute_Count 5분 실패한 Task 수
execution_SqlTaskManager_FailedTasks_TotalCount Task 출력 데이터 행 총수
execution_executor_TaskExecutor_Tasks 태스크 실행기에 등록된 모든 태스크 수
execution_executor_TaskExecutor_TotalSplits 태스크 실행기의 총 splits 수
execution_executor_TaskExecutor_RunningSplits 태스크 실행기에서 실행 중인 splits 수
execution_executor_TaskExecutor_WaitingSplits 태스크 실행기에서 대기 중인 splits 수
memory_ClusterMemoryManager_TotalAvailableProcessors 클러스터 CPU 수

메트릭 세트 Java

메트릭 설명
lang_Runtime_Uptime 가동 시간
lang_G1_Concurrent_GC_CollectionCount gc 횟수
lang_Memory_HeapMemoryUsage_used 힙 사용 중인 메모리
lang_Memory_HeapMemoryUsage_init 힙 초기 메모리
lang_Memory_HeapMemoryUsage_max 힙 최대 메모리
lang_Memory_HeapMemoryUsage_committed 힙 커밋된 메모리
lang_Memory_NonHeapMemoryUsage_used 비힙 사용 중인 메모리
lang_Memory_NonHeapMemoryUsage_init 비힙 초기 메모리
lang_Memory_NonHeapMemoryUsage_max 비힙 최대 메모리
lang_Memory_NonHeapMemoryUsage_committed 비힙 커밋된 메모리

문서 평가

이 페이지가 도움이 되었나요?