Skip to content

배포 및 유지보수 / 자체 모니터링 데이터 업로드

이 문서에서는 DataFlux Func의 자체 모니터링 데이터 업로드를 구성하는 방법을 소개합니다.

1. 서문

기본적으로 DataFlux Func의 자체 모니터링 데이터는 로컬 Redis 및 MySQL에 저장됩니다.

DataFlux Func를 과도하게 사용한 후에는 메트릭, 로그 등의 데이터 양이 상당히 방대해질 수 있습니다. 로컬 메모리와 디스크 사용을 제한하기 위해 로컬에 저장되는 시스템 메트릭과 작업 기록 로그는 축소되고, 저장 총량도 제한됩니다.

배포 및 유지보수 / 시스템 메트릭 및 작업 기록 / 로컬 함수 작업 기록 비활성화를 참조하여 「로컬 함수 작업 기록」을 비활성화하면 MySQL 저장 부담을 줄일 수 있습니다.

DataFlux Func에서 생성된 시스템 메트릭 및 작업 기록 로그를 완전히 기록해야 하는 경우 시스템 설정을 통해 데이터를 데이터 플랫폼에 업로드할 수 있습니다.

2. 「자체 모니터링 데이터 업로드」 활성화

업로드된 작업 로그는 완전한 로그이며 축소되지 않습니다.

관리 / 시스템 설정 / 자체 모니터링 데이터 업로드에서 사용자는 「자체 모니터링 데이터 업로드」를 활성화할 수 있습니다.

URL 주소에는 DataWay 또는 DataKit 업로드 주소를 입력할 수 있습니다.

Text Only
1
http://openway.ip-or-domain.com?token=tkn_xxxxx
Text Only
1
http://datakit.ip-or-domain:9529

또한, 일반적으로 현재 DataFlux Func의 용도를 표시하기 위해 사이트 이름을 입력하는 것도 권장됩니다(예: 「테스트용 Func」).

「자체 모니터링 데이터 업로드」를 활성화한 후에는 「로컬 함수 작업 기록」을 동시에 비활성화하여 로컬 DataFlux Func 저장 부담을 줄일 수 있습니다.

setup-guance-data-upload.png

3. 데이터 플랫폼에서 시스템 메트릭, 작업 기록 로그 확인

「자체 모니터링 데이터 업로드」를 올바르게 구성하면 데이터 플랫폼에서 업로드된 시스템 메트릭과 작업 로그를 확인할 수 있습니다.

dff-metric-in-guance.png

4. 업로드 데이터 설명

DataFlux Func는 문제 해결을 위해 다양한 데이터를 업로드합니다.

자체 모니터링은 수시로 조정될 수 있습니다.

자체 모니터링 데이터는 실제 상황에 따라 버전 업데이트와 함께 수시로 조정됩니다. 본 문서는 최신 버전의 자체 모니터링 데이터 설명만 제공합니다.

service 필터를 추가하여 쿼리 효율을 높일 수 있습니다

최신 버전에서는 모든 Logging 자체 모니터링 데이터에 service Tag가 추가되며, 값은 Logging의 source와 동일합니다. ScopeDB의 service 파티션 저장에 맞추기 위한 것입니다.

따라서 Func의 Logging 자체 모니터링 데이터를 조회할 때 필터 조건 source:xxxxxservice:xxxxx를 추가하면 쿼리 효율을 크게 높일 수 있습니다.

지연 큐(Metric)

아직 트리거 시간에 도달하지 않은 작업 큐

메트릭 셋: DFF_delay_queue

필드 유형 설명 예시 값
queue Tag "8"
length Field 큐 길이 100

작업 큐(Metric)

트리거 시간에 도달한 작업 큐

메트릭 셋: DFF_worker_queue

필드 유형 설명 예시 값
queue Tag "8"
length Field 큐 길이 100
worker_count Field 큐를 모니터링하는 작업 단위 수 5
process_count Field 큐를 모니터링하는 프로세스 수 25

함수 트리거 카운트(Metric)

메트릭 셋: DFF_func_trigger

필드 유형 설명 예시 값
func_id Tag 함수 ID "demo__test.run"
trigger_count_per_minute Field 분당 트리거 수 100

함수 실행 카운트(Metric)

메트릭 셋: DFF_func_run

필드 유형 설명 예시 값
func_id Tag 함수 ID "demo__test.run"
run_count_per_minute Field 분당 실행 수 100

함수 실행 상태 카운트(Metric)

메트릭 셋: DFF_func_status

필드 유형 설명 예시 값
status Tag 함수 실행 상태 "success"
status_count_per_minute Field 분당 상태 수 100

함수 실행 소요 시간(Metric)

메트릭 셋: DFF_func_cost

필드 유형 설명 예시 값
wait_cost_sum_per_minute Field 분당 대기 소요 시간 합계(밀리초) 10000
queue_cost_sum_per_minute Field 분당 큐 대기 소요 시간 합계(밀리초) 10000
run_cost_sum_per_minute Field 분당 실행 소요 시간 합계(밀리초) 10000
total_cost_sum_per_minute Field 분당 총 소요 시간 합계(밀리초) 10000
cpu_cost_sum_per_minute Field 분당 CPU 소요 시간 합계(밀리초) 10000
non_cpu_cost_sum_per_minute Field 분당 비 CPU 소요 시간 합계(밀리초) 10000

캐시 데이터베이스(Metric)

메트릭 셋: DFF_cache_db

필드 유형 설명 예시 값
server Tag 대상 데이터베이스(HOST:PORT/DB) "127.0.0.1:6379/5"
keys Field Key 수 100
used_memory Field 메모리 사용량(바이트) 10000
connected_clients Field 연결된 클라이언트 수 100
uptime Field 서비스 가동 시간(초) 60

데이터베이스 테이블(Metric)

메트릭 셋: DFF_db_table

필드 유형 설명 예시 값
server Tag 대상 데이터베이스(HOST:PORT/DB) "127.0.0.1:3306/dataflux_func"
name Tag 테이블 이름 "biz_main_func_api"
rows Field 행 수 10
data_size Field 데이터 크기(바이트) 100
index_size Field 인덱스 크기(바이트) 100
total_size Field 총 크기(바이트) 200
avg_row_size Field 평균 행당 크기(바이트) 100

예약 작업 계획(Metric)

메트릭 셋: DFF_cron_job_scheduled

필드 유형 설명 예시 값
scheduled_count_per_week Field 주당 예약 실행 수 604800
scheduled_count_per_day Field 일별 예약 실행 수 86400
scheduled_count_per_hour Field 시간별 예약 실행 수 3600
scheduled_count_per_minute Field 분당 예약 실행 수 60
scheduled_count_per_second Field 초당 예약 실행 수 1

비즈니스 엔티티(Metric)

메트릭 셋: DFF_entity

필드 유형 설명 예시 값
entity Tag 비즈니스 엔티티 "funcAPI"
count Field 100
enabled_count Field 활성화된 수 99

자체 모니터링 데이터 업로드 Panic 레벨(Metric)

메트릭 셋: DFF_self_monitor_upload_panic_level

필드 유형 설명 예시 값
panic_level Field Panic 레벨 10

Func 서비스 정보(Logging)

메트릭 셋: DFF_service_info

필드 유형 설명 예시 값
name Tag 서비스 이름 "server", "worker", "beat"
version Tag 버전 번호 "7.1.11"
edition Tag 버전 "GSE"
hostname Tag 호스트명 "web001"
pid Tag 프로세스 PID 1234
uptime Field 서비스 가동 시간(초) 60

시스템 작업 기록 / 함수 작업 기록(Logging)

DataFlux Func는 내부 시스템 작업 또는 함수 작업을 실행한 후 해당 작업 로그를 업로드하며, 로그 뷰어를 통해 확인할 수 있습니다.

메트릭 셋 설명
DFF_task_record 시스템 작업 기록
DFF_task_record_func 함수 작업 기록
필드 설명 시스템 작업 기록 함수 작업 기록
source 데이터 소스 고정: DFF_task_record 고정: DFF_task_record_func
site_name 사이트명
id 작업 ID
name 작업명
queue 소속 큐
task_status 작업 상태, 가능한 값은 아래 참조
root_task_id 루트 작업 ID
script_set_id 소속 스크립트 세트 ID
script_id 소속 스크립트 ID
func_id 함수 ID
func_name 함수명
origin 출처, 가능한 값은 아래 참조
origin_id 출처 ID
예: 예약 작업 ID
script_set_title 소속 스크립트 세트 제목
script_title 소속 스크립트 제목
func_title 함수 제목
cron_job_exec_mode 예약 작업 실행 모드 예약 작업 전용
func_call_kwargs 함수 전달 인자
cron_expr 예약 작업 Crontab 표현식 예약 작업 전용
call_chain 호출 체인
return_value Return 반환 값
message 작업 로그
kwargs 작업 매개변수
eta 예상 실행 시간
delay 지연 실행 시간(초)
timeout 타임아웃 시간(초)
expires 만료 시간(초)
ignore_result 결과 무시 여부
result 결과 내용
exception_from 예외 출처
exception_type 예외 유형
exception 예외 내용
origin_exception_type 원본 예외 유형
origin_exception 원본 예외 내용
traceback 오류 스택
trigger_time_iso 트리거 시간(ISO 날짜 형식)
start_time_iso 시작 시간(ISO 날짜 형식)
end_time_iso 종료 시간(ISO 날짜 형식)
wait_cost 대기 시간(밀리초)
run_cost 실행 소요 시간(밀리초)
total_cost 총 소요 시간(밀리초)
cpu_cost CPU 소요 시간(밀리초)
cpu_cost_percent CPU 소요 시간 비율
non_cpu_cost 비 CPU 소요 시간(밀리초)
non_cpu_cost_percent 비 CPU 소요 시간 비율
sys_db_query_count 시스템 DB 쿼리 횟수
sys_db_query_details 시스템 DB 쿼리 상세
sys_cache_db_query_count 시스템 캐시 쿼리 횟수
sys_cache_db_query_details 시스템 캐시 쿼리 상세
status 로그 상태, 가능한 값은 아래 참조
workspace_uuid 워크스페이스 ID 부속 버전 Func의 모니터 함수에만 해당
df_monitor_checker_id 모니터 ID 부속 버전 Func의 모니터 함수에만 해당
df_monitor_id 알람 정책 ID 부속 버전 Func의 모니터 함수에만 해당
df_wksp_id 2026-08-05워크스페이스 ID 부속 버전 Func에서 wksp_xxxxx 필드를 포함하는 함수에만 해당
df_rul_id 2026-08-05모니터 / 메트릭 생성 규칙 ID 부속 버전 Func에서 rul_xxxxx 필드를 포함하는 함수에만 해당

5. 관련 필드 상세 설명

일부 필드 상세 설명은 다음과 같습니다.

task_statusstatus 필드

DataFlux Func 업로드 로그에서 task_statusstatus는 일대일 관계를 가지며, task_status는 작업 상태 설명이고, status는 데이터 플랫폼 규격을 충족하는 상태 값입니다.

구체적인 대응표는 다음과 같습니다.

task_status 값 status 값 설명
success ok 성공
failure critical 실패
skip warning 작업 건너뜀

originorigin_id 필드

originorigin_id 필드는 함수 작업의 실행 출처를 표시하는 데 사용됩니다. 구체적인 값은 다음과 같습니다.

origin 값 설명 origin_id 값 의미 비고
funcAPI 함수 API 함수 API ID
cronJob 예약 작업 예약 작업 ID
direct 직접 함수 호출
예: 데이터 플랫폼 Studio에서 클러스터 내 호출
direct로 고정
integration 스크립트 세트 통합으로 트리거됨 {통합 유형}.{시작 방식}-{함수 ID}
구버전 syncAPI 동기 API 동기 API ID 최신 버전에서 funcAPI로 대체됨
구버전 asyncAPI 비동기 API 비동기 API ID 최신 버전에서 funcAPI로 대체됨
구버전 authLink 인증 링크 인증 링크 ID 최신 버전에서 syncAPI로 대체됨
구버전 crontab 자동 트리거 설정 자동 트리거 설정 ID 최신 버전에서 cronJob로 대체됨
구버전 batch 일괄 처리 일괄 처리 ID 최신 버전에서 asyncAPI로 대체됨