콘텐츠로 이동

애플리케이션 서비스 구성 항목 가이드

개요

이 문서는 launcher의 "애플리케이션 설정 수정" 기능을 통해 관련 구성을 변경하여 자체 환경에 더 잘 적응하고, 구성을 최적화하며 개인화된 설정을 충족시키는 것을 목표로 합니다.

launcher 작업 절차

  1. 브라우저에서 launcher 콘솔에 접속합니다.

  2. 오른쪽 상단을 선택하여 애플리케이션 설정 수정 화면으로 들어갑니다.

  1. 해당 구성 파일을 수정하려면 설정 수정 옵션을 선택하여 수정 가능하게 합니다.

  2. 설정 수정을 완료한 후, 페이지 하단 오른쪽의 설정 수정 후 관련 서비스 자동 재시작을 선택한 다음 설정 수정을 클릭하여 확인합니다.

서비스의 일반적인 구성 설명

Studio 백엔드 서비스

구성 파일 위치

  • Namespace: forethought-core
  • Launcher의 구성 이름: Core
  • Kubernetes의 Configmap 이름: core

구성 파일 예시

# Guance 콘솔 주소 액세스 프로토콜
protocol: "http"
# Guance 콘솔 주소
hostname: "console.cloudcare.cn"

# 관리 백엔드 사이트 액세스 주소
managementHostname: "management.cloudcare.cn"

# 현재 사이트 이름
envName: Guance 배포 플랜

# 시스템 디버그 모드 활성화 여부, 일반적으로 비활성화
debug: false
# 시스템 기본 언어
defaultLanguage: "zh"

# 프론트엔드 액세스 주소 접두사, 처음 두 개의 중괄호는 protocol과 hostname으로 대체되며, 통합된 2차 주소를 구성하려면 이 설정을 직접 조정할 수 있습니다.
frontServerUrlPrefixFormat: "{}://{}"

# ExternalAPI 서비스 구성
external:
  # 각 요청 서명의 유효 기간, 단위: 초
  timeliness: 60
  # 구버전 단일 계정 AK/SK 구성; 히스토리 환경 호환을 위해 유지, privilege=w인 읽기/쓰기 계정과 동일
  accessKey: ""
  secretKey: ""
  # 인터페이스 작업에서 계정으로 사용되는 이메일 이름
  email: ""
  # ExternalAPI 다중 계정 구성, 읽기/쓰기 계정과 읽기 전용 계정 분리 지원; 비어 있을 경우 위의 구버전 단일 계정 구성만 사용
  # 필드 설명:
  #   name: 계정 식별자, 로그, 관측 및 문제 해결에만 사용; default와 같은 의미 없는 이름은 사용하지 마십시오
  #   accessKey: 요청 헤더 X-Df-Access-Key에 사용되는 AK
  #   secretKey: 현재 AK에 해당하는 서명 SK, 로그에 기록되지 않음
  #   privilege: 계정 권한, w는 읽기/쓰기 계정으로 privilege=r/w 인터페이스에 액세스 가능; r은 읽기 전용 계정으로 privilege=r 인터페이스에만 액세스 가능
  #   email: 현재 ExternalAPI 계정이 요청 컨텍스트에 표시하는 이메일; 비어 있을 경우 external.email로 대체
  #   enabled: 계정 활성화 여부, false인 경우 인증에 사용할 수 없음
  accounts: []
  # accounts:
  #   - name: "primary-write"
  #     accessKey: ""
  #     secretKey: ""
  #     privilege: "w"
  #     email: ""
  #     enabled: true
  #   - name: "security-readonly"
  #     accessKey: ""
  #     secretKey: ""
  #     privilege: "r"
  #     email: ""
  #     enabled: true

# 알림 정책 멤버 유형 선택 가능한 알림 방식
alertPolicyFixedNotifyTypes:
  email:
    enable: true

# Token 기본 만료 시간 설정
token_exp_set:
  # 웹 기본 설정 4시간
  front_web: 14400
  # 관리 백엔드 token 기본 만료 시간
  manage: 7200


# API 문서 활성화 여부, 기본 비활성화, true인 경우 활성화. API 문서 경로 기본값은 /v1/doc; inner API 기본 주소는 /v1/inner.doc
apiDocPageSwitch:
  # 관리 백엔드
  admin: false
  # 프론트엔드
  front: false
  # inner 서비스
  inner: false
  # openapi 서비스
  openapi: false
  center: false
  # external 서비스
  external: false


# query_view에서 트레이스의 시간 범위 오프셋, 단위: 초
BusinessQueryViewTimeOffset: 900

# 동일 조직 내 워크스페이스 간 Trace 조회 구성, 기본 비활성화
SameOrgTraceQuerySet:
  # 동일 조직 내 현재 워크스페이스가 아닌 Trace 데이터 조회 허용 여부
  enable: false
  # 단일 조회 또는 워크스페이스 목록 필터링에서 허용되는 최대 워크스페이스 UUID 수
  maxWorkspaceCount: 20
  # 단일 Trace 조회 시 limit을 명시적으로 전달할 때 허용되는 최대값
  maxLimit: 1000
  # 단일 Trace 조회에서 허용되는 최대 시간 창, 단위: 시간
  maxTimeRangeHours: 24
  # 동일 조직 워크스페이스 단순화 목록 인터페이스에서 허용되는 최대 페이지 크기
  workspaceListPageSizeMax: 100



# Guance의 데이터베이스 구성
database:
  connection:
  pool_size: 20
  max_overflow: 100
  echo: false
  pool_timeout: 30
  # 이 설정은 지정된 시간(초)이 지나면 풀이 연결을 재활용하도록 합니다. 기본값은 -1 또는 타임아웃 없음입니다. 예를 들어 3600으로 설정하면 연결이 1시간 후에 재활용됩니다. MySQL은 8시간 동안 연결에서 활동이 감지되지 않으면 자동으로 연결을 끊습니다(MySQLDB 연결 자체 및 서버 구성을 통해 구성 가능).
  pool_recycle: 3600
  # 부울 값, True인 경우 연결 풀 "ping 사전 확인" 기능을 활성화하여 각 체크아웃 시 연결의 활성 상태를 테스트합니다.
  pool_pre_ping: true
  # 연결 검색 시 LIFO(후입선출) QueuePool을 사용하고 FIFO(선입선출)를 사용하지 않습니다. LIFO를 사용하면 서버 측 타임아웃 체계로 인해 사용량이 적은 시간에 사용되는 연결 수를 줄일 수 있습니다. 서버 측 타임아웃을 계획할 때는 pool_recycle 또는 pool_pre_ping 전략을 사용하여 오래된 연결을 적절히 처리해야 합니다.
  pool_use_lifo: true


# Logger 구성
logger:
  filename: /logdata/business.log
  level: info
  # 각 로그 파일의 최대 크기
  max_bytes: 52428800
  # 로그 파일 롤링 총 개수
  backup_count: 3
  # 로그 출력 방식 제어, 기본값은 파일 출력 및 stdout 출력
  output_mode_switch:
    file: true
    stdout: true

# GunLogger-access, 위와 동일
g_access_logger:
  filename: /logdata/g_access.log
  mode: a
  level: info
  max_bytes: 52428800
  backup_count: 3
  # 로그 출력 방식 제어, 기본값은 파일 출력 및 stdout 출력
  output_mode_switch:
    file: true
    stdout: true


# 새 워크스페이스 생성 시 기본 대용량 로그 분할 단위, 단위: byte
workspaceLoggingCutSizeSet:
  es: 10240
  sls: 2048
  beaver: 2048
  doris: 10240

# 새 워크스페이스 생성 시 기본 데이터 보존 정책
workspaceVersionSet:
  unlimited:
    # 배포 플랜 새 워크스페이스의 기본 정책 구성
    durationSet:
      rp: 30d
      logging: 14d
      keyevent: 14d
      tracing: 7d
      profiling: 7d
      rum: 7d
      # 배포 플랜에만 session_replay의 별도 구성이 존재함
      session_replay: 7d
      network: 2d
      security: 90d
      backup_log: 180d

# 워크스페이스 기본 상태 설정
WorkspaceDefaultStatsConfig:
  isOpenLogMultipleIndex:  true     # 기본 워크스페이스 생성 시, 사용자 정의 로그 인덱스 미활성화
  logMultipleIndexCount:  6         # 기본 워크스페이스 생성 시, 사용자 정의 로그 인덱스 수
  loggingCutSize: 10240             # 기본 워크스페이스 생성 시, 대용량 로그 카운트 단위 10KB
  maxSearchResultCount: 0           # 기본 워크스페이스 생성 시, 최대 쿼리 수 0

# es/doris 인덱스 구성 기본 정보
WorkspaceDefaultesIndexSettings:
  number_of_shards: 1               # 기본 워크스페이스 생성 시, 기본 샤드 수 es
  number_of_replicas: 1             # 기본 워크스페이스 생성 시, 복제본 활성화 여부 es | doris
  rollover_max_size: 30             # 기본 워크스페이스 생성 시, 샤드 크기    es
  hot_retention: 24                 # 기본 워크스페이스 생성 시, 핫 데이터 기간   es | doris


# openapi 속도 제한 설정
openapiCurrentLimitingSet:
  # 속도 제한 스위치, 기본 비활성화, 사용하려면 true로 설정
  isOpen: false
  crontabSet:
    # 매분 실행되는 속도 제한 횟수
    hour: "*"
    minute: "*/1"
  frequency:
    # ak 수준 호출 속도 제한 100회/분
    ak: 100
    # 워크스페이스 수준 호출 속도 제한 300회/분
    workspace: 300

# Studio 백엔드 CORS Origin 화이트리스트 구성
CorsAllowOriginSet:
  # CORS Origin 화이트리스트 활성화 여부, 기본 비활성화하여 호환성 유지; 활성화 시 화이트리스트 브라우저 Origin에 대해서만 Access-Control-Allow-Origin 반환
  enabled: false
  # 정확히 일치하는 프론트엔드 도메인 목록, 데이터 형식은 문자열 배열, 프로토콜, 도메인 및 선택적 포트를 포함해야 함
  # 예시: ["https://console.example.com", "https://uat-console.example.com:8443"]
  allowedOrigins: []
  # 제어된 와일드카드 규칙 목록, 데이터 형식은 문자열 배열, Origin 문자열에 대해 와일드카드 매칭 수행
  # 예시: ["https://*.example.com"]; 여러 하위 도메인을 허용해야 하는 경우에만 구성, "*" 사용은 권장하지 않음
  allowedOriginPatterns: []
  # 브라우저가 자격 증명을 포함한 CORS 요청을 허용할지 여부
  allowCredentials: true
  # 허용된 CORS 요청 메서드
  allowMethods: "GET,POST,HEAD,PATCH,PUT,OPTIONS,DELETE"

# 배포 플랜 로그인 제한
LoginLimitSet:
  # 동일 사용자 이름 연속 로그인 오류 재시도 횟수
  retry_times: 5
  # 연속 로그인 실패 retry_times 회 후 로그인 제한 시간, 기본 15분
  exp: 900

...

구성 항목 상세 설명

구성 항목 하위 항목 유형 기본값 설명
protocol 문자열 http Guance 콘솔 주소 액세스 프로토콜
hostname 문자열 console.cloudcare.cn Guance 콘솔 주소
managementHostname 문자열 management.cloudcare.cn 관리 백엔드 사이트 액세스 주소
envName 문자열 Guance 현재 사이트 이름
debug 부울 false debug 모드 스위치
frontServerUrlPrefixFormat 문자열 {}://{} 프론트엔드 액세스 주소 접두사, 처음 두 개의 중괄호는 protocol과 hostname으로 대체됨, 통합된 2차 주소를 구성하려면 이 설정을 직접 조정
enableApmServiceTopology 부울 false "APM > 서비스 > 서비스 맵"의 워크스페이스 간 조회 진입점 활성화 여부. 배포 플랜에서 활성화하면 프론트엔드는 권한 및 버전 조건을 충족할 때 공간 범위 선택기를 표시함; 이 스위치는 kodo-innerservicemap.cross_workspace_on과 독립적이며 시나리오에 따라 함께 사용 가능
external timeliness 숫자 60 각 요청 서명의 유효 기간, 단위: 초
accessKey 문자열 구버전 단일 계정 AK 구성; 히스토리 환경 호환을 위해 유지, privilege=w인 읽기/쓰기 계정과 동일. 새 환경에서는 accounts 구성을 우선 사용 권장
secretKey 문자열 구버전 단일 계정 SK 구성; accessKey와 함께 사용, 로그에 기록되지 않음
email 문자열 ExternalAPI 요청 컨텍스트에 표시되는 기본 이메일; accounts[].email이 비어 있으면 이 구성으로 대체
accounts 목록 [] ExternalAPI 다중 계정 구성 목록, 읽기/쓰기 계정과 읽기 전용 계정 분리 지원; 비어 있으면 구버전 accessKey/secretKey 구성만 사용
accounts[].name 문자열 계정 식별자, 로그, 관측 및 문제 해결에만 사용; 새 구조에서는 필수, default는 사용 불가, primary-write, security-readonly 등 용도를 나타내는 이름 사용 권장
accounts[].accessKey 문자열 현재 계정 요청 헤더 X-Df-Access-Key에 사용되는 AK
accounts[].secretKey 문자열 현재 계정에 해당하는 서명 SK, 서버 측 서명 확인에만 사용, 로그에 기록되지 않음
accounts[].privilege 문자열 w 현재 계정 권한. w는 읽기/쓰기 계정으로 privilege=r/w 인터페이스에 액세스 가능; r은 읽기 전용 계정으로 privilege=r 인터페이스에만 액세스 가능
accounts[].email 문자열 현재 계정이 ExternalAPI 요청 컨텍스트에 표시하는 이메일; 비어 있으면 external.email로 대체
accounts[].enabled 부울 true 현재 계정 활성화 여부; false로 설정하면 인증에 사용할 수 없음
defaultLanguage 문자열 zh 시스템 기본 언어, 새 워크스페이스에서 언어를 지정하지 않은 경우 이 구성 값 사용
token_exp_set front_web 숫자 14400 Studio 브라우징 사용자 로그인 유효 기간, 단위: 초
manage 숫자 7200 관리 백엔드 브라우징 사용자 로그인 유효 기간, 단위: 초
apiDocPageSwitch admin 부울 false 관리 백엔드 API 인터페이스 문서 공개 스위치
front 부울 false Studio 백엔드 API 인터페이스 문서 공개 스위치
inner 부울 false Inner 서비스 API 인터페이스 문서 공개 스위치
openapi 부울 false OpenAPI 인터페이스 문서 공개 스위치
external 부울 false External API 인터페이스 문서 공개 스위치
BusinessQueryViewTimeOffset 숫자 900 RUM Resource에 해당하는 트레이스 데이터 조회 시 시간 전후 오프셋 범위, 단위: 초
SameOrgTraceQuerySet enable 부울 false 동일 조직 내 워크스페이스 간 Trace 조회 허용 여부. 비활성화 시 동일 조직 워크스페이스 단순화 정보 목록 인터페이스는 계속 사용 가능하지만 Trace 조회 인터페이스는 현재 워크스페이스만 조회 가능
maxWorkspaceCount 숫자 20 단일 동일 조직 Trace 조회 및 워크스페이스 목록 필터링에서 허용되는 최대 워크스페이스 UUID 수
maxLimit 숫자 1000 단일 동일 조직 Trace 조회 시 limit을 명시적으로 전달할 때 허용되는 최대값
maxTimeRangeHours 숫자 24 단일 동일 조직 Trace 조회에서 허용되는 최대 시간 창, 단위: 시간
workspaceListPageSizeMax 숫자 100 동일 조직 워크스페이스 단순화 정보 목록 인터페이스에서 허용되는 최대 페이지 크기
database connection 문자열 데이터베이스 연결 문자열
pool_size 숫자 20 단일 Worker 연결 풀 연결 수 기본 크기
max_overflow 숫자 100 단일 Worker 연결 풀 연결 최대 초과 수
pool_timeout 숫자 30 데이터베이스 연결 타임아웃 시간, 단위: 초
pool_recycle 숫자 3600 연결 풀 연결 재활용 시간 제어, 연결 생성 후 지정된 시간 이후 재활용됨. 단위: 초. 일반적으로 pool_pre_ping, pool_use_lifo와 함께 사용해야 하며 pool_use_lifo는 true여야 함. 연결 재활용 메커니즘은 데이터베이스 연결이 사용될 때만 트리거됨.
pool_pre_ping 부울 true 연결 풀 "ping 사전 확인" 기능을 활성화하여 사용 시마다 연결의 활성 상태를 테스트함
pool_use_lifo 부울 true 연결 검색 시 LIFO(후입선출) QueuePool 사용, FIFO(선입선출) 미사용
logger filename 문자열 /logdata/business.log 로그 파일
level 문자열 info 로그 최소 수준
max_bytes 숫자 52428800 각 로그 파일의 최대 크기, 단위: 바이트
backup_count 숫자 3 로그 파일 롤링 총 개수
output_mode_switch.file true 로그 출력 방식 제어 스위치, 파일 출력 지원
output_mode_switch.stdout true 로그 출력 방식 제어 스위치, stdout 출력 지원
g_access_logger gunicorn 로그 구성, 관련 하위 구성 항목은 logger와 동일
workspaceLoggingCutSizeSet es 숫자 10240 새 워크스페이스 생성 시 기본 대용량 로그 분할 단위, 단위: byte, 스토리지 유형: elasticsearch/OpenSearch
sls 숫자 2048 새 워크스페이스 생성 시 기본 대용량 로그 분할 단위, 단위: byte, 스토리지 유형: Alibaba Cloud SLS
beaver 숫자 2048 새 워크스페이스 생성 시 기본 대용량 로그 분할 단위, 단위: byte, 스토리지 유형: LogEasy
doris 숫자 10240 새 워크스페이스 생성 시 기본 대용량 로그 분할 단위, 단위: byte, 스토리지 유형: doris
WorkspaceDefaultStatsConfig.unlimited.durationSet json 새 워크스페이스의 기본 데이터 보존 기간 구성
rp 문자열 30d 메저먼트의 기본 데이터 보존 기간
logging 문자열 14d 로그의 기본 데이터 보존 기간
keyevent 문자열 14d 이벤트의 기본 데이터 보존 기간
tracing 문자열 7d 트레이스의 기본 데이터 보존 기간
rum 문자열 7d RUM의 기본 데이터 보존 기간
network 문자열 2d 네트워크의 기본 데이터 보존 기간
security 문자열 90d 보안 점검의 기본 데이터 보존 기간
backup_log 문자열 180d 백업 로그의 기본 데이터 보존 기간
WorkspaceDefaultStatsConfig isOpenLogMultipleIndex 부울 true 워크스페이스 생성 시, 사용자 정의 로그 인덱스 활성화 여부
logMultipleIndexCount 숫자 6 워크스페이스 생성 시, 사용자 정의 로그 인덱스 수
loggingCutSize 숫자 6 워크스페이스 생성 시, 대용량 로그 카운트 단위 10KB
maxSearchResultCount 숫자 0 최대 쿼리 수 0
WorkspaceDefaultesIndexSettings number_of_shards 숫자 1 워크스페이스 생성 시, 기본 샤드 수, 스토리지 유형이 es인 경우 유효
number_of_replicas 숫자 1 워크스페이스 생성 시, 복제본 활성화 여부, 스토리지 유형이 es/doris인 경우 유효
rollover_max_size 숫자 30 워크스페이스 생성 시, 샤드 크기, 스토리지 유형이 es/doris인 경우 유효
hot_retention 숫자 24 워크스페이스 생성 시, 핫 데이터 기간, 스토리지 유형이 es/doris인 경우 유효
openapiCurrentLimitingSet json openapi 속도 제한 설정
isOpen 부울 false openapi 속도 제한 스위치, 기본 비활성화
openapiCurrentLimitingSet.crontabSet json 예약 작업 구성
hour 문자열 "*" crontab의 시간 설정, 기본값: 매시간
minute 문자열 "*/1" crontab의 분 설정, 기본값: 매분
openapiCurrentLimitingSet.frequency json 제한 구성
ak 숫자 100 ak 수준 호출 속도 제한 100회/분
workspace 숫자 300 워크스페이스 수준 호출 속도 제한 300회/분
CorsAllowOriginSet json Studio 백엔드 CORS Origin 화이트리스트 구성. 비활성화 시 호환성 유지; 활성화 시 화이트리스트 내 브라우저 Origin에 대해서만 Access-Control-Allow-Origin 반환. Origin이 없는 서비스 내 호출은 CORS 영향 없음
enabled 부울 false CORS Origin 화이트리스트 활성화 여부. 전용 환경에서 크로스 오리진 소스를 제한해야 하는 경우 true로 설정
allowedOrigins 배열 [] 정확히 일치하는 프론트엔드 도메인 목록, 데이터 형식은 문자열 배열, 프로토콜, 도메인 및 선택적 포트를 포함해야 함, 예: ["https://console.example.com", "https://uat-console.example.com:8443"]
allowedOriginPatterns 배열 [] 제어된 와일드카드 규칙 목록, 데이터 형식은 문자열 배열, Origin 문자열에 대해 와일드카드 매칭 수행, 예: ["https://*.example.com"]; "*" 구성은 권장하지 않음
allowCredentials 부울 true 화이트리스트에 일치할 때 Access-Control-Allow-Credentials: true 반환 여부, 브라우저가 Cookie, 인증 헤더 등 자격 증명을 포함한 CORS 요청 허용
allowMethods 문자열 GET,POST,HEAD,PATCH,PUT,OPTIONS,DELETE 허용된 CORS 요청 메서드 목록, 여러 메서드는 쉼표로 구분
LoginLimitSet json 배포 플랜 로그인 제한
retry_times 숫자 5 동일 사용자 이름 연속 로그인 오류 재시도 횟수
exp 숫자 900 연속 로그인 실패 retry_times 회 후 로그인 제한 시간, 기본 15분, 단위는 초

Studio 프론트엔드 사이트

구성 파일 위치

  • Namespace: forethought-webclient
  • Launcher의 구성 이름: frontWeb
  • Kubernetes의 Configmap 이름: front-web-config

구성 파일 예시

window.DEPLOYCONFIG = {
    ...
    "rumDatawayUrl": "https://rum-openway.guance.com",
    "datakitScriptUrl": "https://static.guance.com/datakit",
    "datakitHelmUrl": "https://pubrepo.guance.com",
    "passPublicNetwork": 1,
    "isOverseas": 0,
    "maxTraceSpanLimit": 10000,
    "maxProfileM": 5,
    "paasCustomLoginInfo": [{ "iconUrl":"xxx", "label": "xxx", "url": "xxxx" ,desc:"xxx"}],
    "paasCustomSiteList": [{"url": "xxxx", "label": "xxx"}],
    "paasCustomLoginUrl": "https://www.xxx",
    "maxMessageByte": 10 * 1024,
    "isDesensitizeUser": false,
    "webRumSdkUrl": "https://static.guance.com/browser-sdk/v3/dataflux-rum.js",
    "defaultTimeMap": {
        'log': [1732254771701,1732255671701],// 또는 상대 시간 5m
    }
    ...
}

구성 항목 상세 설명

구성 항목 하위 항목 유형 기본값 설명
rumDatawayUrl 문자열 "https://rum-openway.guance.com" RUM 데이터 전용 DataWay 주소, 구성 후 RUM 설정 페이지에 표시됨
datakitScriptUrl 문자열 "https://static.guance.com/datakit" DataKit 설치 페이지의 기본 설치 스크립트 다운로드 도메인, 자체 구축 내부 정적 리소스를 사용하는 경우 이 구성을 수정
datakitHelmUrl 문자열 "https://pubrepo.guance.com" DataKit Helm 이미지 저장소 주소, 자체 구축 이미지 저장소를 사용하는 경우 이 구성을 수정
passPublicNetwork 숫자 1 Studio 사이트에 액세스하는 클라이언트 컴퓨터에 공용 네트워크가 있는지 여부, 0: 없음, 1: 있음
isOverseas 숫자 0 이 Guance 사이트가 해외 배포인지 여부를 구성, RUM의 세계 지도, 중국 지도 구성 요소 표시에 영향을 미침
maxTraceSpanLimit 숫자 10000 트레이스 플레임 그래프의 최대 Span 수, 기본값: 10000
maxProfileM 숫자 5 프로파일링을 가져와 플레임 그래프를 표시할 최대 MB 수, 구성하지 않으면 기본값: 5
paasCustomLoginInfo 배열 없음 배포 플랜 Guance 콘솔 로그인 페이지 SSO 진입점 구성, iconUrl, desc 사용자 정의 필드 추가, iconUrl은 SSO 아이콘 주소, 구성하지 않으면 기본 아이콘, desc는 SSO 설명 텍스트
paasCustomSiteList 배열 없음 배포 플랜 Guance 콘솔 로그인 페이지에 멀티 사이트 선택 구성 추가, label은 사이트 표시 텍스트, url은 사이트 주소, 멀티 사이트가 없으면 이 구성 항목을 추가하지 않아도 됨
rumEnable 자체 관측 Boolean 없음 RUM 활성화 여부, 1은 활성화, 활성화하지 않으면 아래 구성 값은 비워 둘 수 있음
rumDatakitUrl 자체 관측 문자열 없음 RUM DataKit 주소 또는 공용 openway 주소
rumApplicationId 자체 관측 문자열 없음 RUM 애플리케이션 ID, 애플리케이션 데이터를 보고하는 데 사용
rumJsUrl 자체 관측 문자열 없음 RUM SDK CDN 주소
rumTrackInteractions 자체 관측 Boolean 없음 (비활성화) 사용자 행동 데이터(Action) 수집 활성화 여부
rumClientToken 자체 관측 문자열 없음 RUM Openway 방식 데이터 보고(rumOpenwayUrl과 함께 사용 필요), Guance 플랫폼에서 생성된 clientToken, datakit 보고 방식과 충돌하며 datakit 보고 방식보다 우선 순위 높음
rumOpenwayUrl 자체 관측 문자열 없음 RUM Openway 공용 주소(rumClientToken과 함께 사용 필요), Studio 사이트 자체 관측 데이터 보고에 사용
isDesensitizeUser 자체 관측 Boolean 없음 자체 관측 사용자 이메일 및 사용자 이름 데이터 마스킹 활성화 여부, true는 활성화, false는 비활성화
paasCustomLoginUrl 문자열 없음 사용자 정의 로그인 URL
maxMessageByte 문자열 없음 로그 탐색기 목록 message 최대 표시 바이트 수, 미입력 시 기본값 10 * 1024
webRumSdkUrl 문자열 없음 RUM Web SDK CDN 주소, 미입력 시 기본값 https://static.guance.com/browser-sdk/v3/dataflux-rum.js
defaultTimeMap 문자열 또는 객체 구조 없음 탐색기 기본 초기화 시간 구성, 형식: {'log': '5m'} 또는 {'log': [1732254771701,1732255671701]} 객체 key는 고정 문자열, 로그 탐색기는 log, 보안 점검은 security
maxPipelineRulesCharacters 숫자 10240 Pipeline 파싱 규칙에 입력 가능한 최대 문자 수, 구성하지 않으면 기본값 10240
hideTesingOperator Boolean false 신서틱 테스트 테스트 버튼 숨김 여부

kodo 구성 요소

구성 파일 위치

  • Namespace: forethought-kodo
  • Launcher의 구성 이름: Kodo
  • Kubernetes의 Configmap 이름: kodo

구성 파일 예시

...

global:
    workers: 8
    log_workers: 8
    tracing_workers: 8
    ...

redis:
    host: "r-xxx.redis.rds.xxx.com:6379"
    password: "..."
    db: 0

asynq_redis:
    host: "r-xxxx.redis.rds.xxx.com:6379"
    password: "..."
    db: 0

dql:
    metric_query_workers: 8 # 시계열 데이터 worker 수, 기본값 8
    log_query_workers: 8 # 로그 데이터 worker 수, 기본값 8
    ...

...

구성 항목 상세 설명

구성 항목 하위 항목 유형 기본값 설명
log log_file 문자열 '/logdata/log' 실행 로그, 저장 주소, 선택값: stdout, 표준 출력, 파일로 저장하지 않음
level 문자열 'info' 실행 로그 최소 수준
gin_log_file 문자열 '/logdata/log' gin 로그, 저장 주소, 선택값: stdout, 표준 출력, 파일로 저장하지 않음
database db_dialect 문자열 'mysql' 데이터베이스 유형, 기본값 mysql
addr 문자열 'testsql.com:3306' 데이터베이스 연결 주소
username 문자열 ' test_user' 사용자 이름
password 문자열 'test_password' 비밀번호
network 문자열 'tcp' 연결 프로토콜
db_name 문자열 'test_db_name' 데이터베이스 이름
nsq lookupd 문자열 'testnsq.com:4161' nsq lookupd 주소
discard_expire_interval 숫자 5 시계열 데이터 최대 중복 시간, 단위: 분, 기본 시계열 지표 데이터가 5분 이상 지연되면 기록되지 않음
redis host 문자열 'testredis.com:6379' 데이터 처리를 위한 Redis 주소, 클러스터 버전 지원. 참고: 모든 kodo 관련 구성 요소의 Redis 구성은 일치해야 함
password 문자열 'test_password' 비밀번호
db 숫자 0 redis db 값
is_cluster 부울 false Redis가 클러스터이고 proxy 연결을 지원하지 않는 경우 true로 설정해야 함
asynq_redis host 문자열 '' 비동기 작업을 위한 Redis 주소, 기본값은 redis 구성을 사용, 클러스터 버전 미지원, redis 구성이 클러스터 버전인 경우 클러스터가 아닌 asynq_redis를 구성해야 함
password 문자열 'test_password' 비밀번호
db 숫자 0 redis db 값

kodo-inner 구성 요소

구성 파일 위치

  • Namespace: forethought-kodo
  • Launcher의 구성 이름: KodoInner
  • Kubernetes의 Configmap 이름: kodo-inner

구성 파일 예시

...

redis:
    host: "r-xxx.redis.rds.xxx.com:6379"
    password: "..."
    db: 0

asynq_redis:
    host: "r-xxxx.redis.rds.xxx.com:6379"
    password: "..."
    db: 0

dql:
    metric_query_workers: 8 # 시계열 데이터 worker 수, 기본값 8
    log_query_workers: 8    # 로그 데이터 worker 수, 기본값 8
    ...

...

구성 항목 상세 설명

구성 항목 하위 항목 유형 기본값 설명
log log_file 문자열 '/logdata/log' 실행 로그, 저장 주소, 선택값: stdout, 표준 출력, 파일로 저장하지 않음
level 문자열 'info' 실행 로그 최소 수준
gin_log_file 문자열 '/logdata/log' gin 로그, 저장 주소, 선택값: stdout, 표준 출력, 파일로 저장하지 않음
database db_dialect 문자열 'mysql' 데이터베이스 유형, 기본값 mysql
addr 문자열 'testsql.com:3306' 데이터베이스 연결 주소
username 문자열 ' test_user' 사용자 이름
password 문자열 'test_password' 비밀번호
network 문자열 'tcp' 연결 프로토콜
db_name 문자열 'test_db_name' 데이터베이스 이름
nsq lookupd 문자열 'testnsq.com:4161' nsq lookupd 주소
discard_expire_interval 숫자 5 시계열 데이터 최대 중복 시간, 단위: 분, 기본 시계열 지표 데이터가 5분 이상 지연되면 기록되지 않음
redis host 문자열 'testredis.com:6379' 데이터 처리를 위한 Redis 주소, 클러스터 버전 지원. 참고: 모든 kodo 관련 구성 요소의 Redis 구성은 일치해야 함
password 문자열 'test_password' 비밀번호
db 숫자 0 redis db 값
is_cluster 부울 false Redis가 클러스터이고 proxy 연결을 지원하지 않는 경우 true로 설정해야 함
asynq_redis host 문자열 '' 비동기 작업을 위한 Redis 주소, 기본값은 redis 구성을 사용, 클러스터 버전 미지원, redis 구성이 클러스터 버전인 경우 클러스터가 아닌 asynq_redis를 구성해야 함
password 문자열 'test_password' 비밀번호
db 숫자 0 redis db 값
dql metric_query_workers 숫자 32 DQL 메트릭 데이터 조회 worker 수
query_metric_channel_size 숫자 32 각 metric_query_worker의 요청 큐 크기
log_query_workers 숫자 32 DQL 로그 텍스트 유형(로그, 트레이스, RUM 등 모든 텍스트 유형 데이터) 데이터 조회 worker 수
query_log_channel_size 숫자 32 각 log_query_worker의 요청 큐 크기
general_query_workers 숫자 32 metric 또는 log가 아닌 조회 worker 수
query_general_channel_size 숫자 32 각 general_query_worker의 요청 큐 크기
profiling_parse 부울 true DQL 조회 시 메트릭 활성화 여부, 각 단계의 소요 시간 통계 조회
influxdb read_timeout 숫자 60 시계열 메트릭 데이터 조회 시 타임아웃 시간, 단위: s, 기본 타임아웃 60s
dial_timeout 숫자 30 시계열 메트릭 데이터 조회 시 연결 설정 타임아웃 시간, 단위: ms, 기본 연결 타임아웃 30ms
doris read_timeout 숫자 60 로그 유형 데이터 조회 시 타임아웃 시간, 단위: s, 기본 타임아웃 60s
dial_timeout 숫자 30 로그 유형 데이터 조회 시 연결 설정 타임아웃 시간, 단위: ms, 기본 연결 타임아웃 30ms
global datakit_usage_check_enabled 부울 false 로그 조회 시 datakit 수가 license 제한을 초과하는지 확인할지 여부, 기본값은 확인하지 않음
servicemap cross_workspace_on 부울 true 서비스 맵 워크스페이스 간 조회 기능 활성화 여부. 활성화하면 Kodo가 ServiceMap 조회 시 워크스페이스 간 서비스 호출 관계를 지원함; 이 스위치는 Studio 백엔드 enableApmServiceTopology와 독립적이며 시나리오에 따라 함께 사용 가능

kodo-x 구성 요소

구성 파일 위치

  • Namespace: forethought-kodo
  • Launcher의 구성 이름: KodoX
  • Kubernetes의 Configmap 이름: kodo-x

구성 파일 예시

...

global:
    workers: 8
    log_workers: 8
    tracing_workers: 8
    ...

redis:
    host: "r-xxx.redis.rds.xxx.com:6379"
    password: "..."
    db: 0

asynq_redis:
    host: "r-xxxx.redis.rds.xxx.com:6379"
    password: "..."
    db: 0

doris:
    dial_timeout: 10
    gzip_enable: false

dql:
    metric_query_workers: 8 # 시계열 데이터 worker 수, 기본값 8
    log_query_workers: 8 # 로그 데이터 worker 수, 기본값 8
    ...

pipeline:
    enable: false
    pull_duration: "1m"

...

구성 항목 상세 설명

구성 항목 하위 항목 유형 기본값 설명
log log_file 문자열 '/logdata/log' 실행 로그, 저장 주소, 선택값: stdout, 표준 출력, 파일로 저장하지 않음
level 문자열 'info' 실행 로그 최소 수준
gin_log_file 문자열 '/logdata/log' gin 로그, 저장 주소, 선택값: stdout, 표준 출력, 파일로 저장하지 않음
database db_dialect 문자열 'mysql' 데이터베이스 유형, 기본값 mysql
addr 문자열 'testsql.com:3306' 데이터베이스 연결 주소
username 문자열 ' test_user' 사용자 이름
password 문자열 'test_password' 비밀번호
network 문자열 'tcp' 연결 프로토콜
db_name 문자열 'test_db_name' 데이터베이스 이름
nsq lookupd 문자열 'testnsq.com:4161' nsq lookupd 주소
discard_expire_interval 숫자 5 시계열 데이터 최대 중복 시간, 단위: 분, 기본 시계열 지표 데이터가 5분 이상 지연되면 기록되지 않음
redis host 문자열 'testredis.com:6379' 데이터 처리를 위한 Redis 주소, 클러스터 버전 지원. 참고: 모든 kodo 관련 구성 요소의 Redis 구성은 일치해야 함
password 문자열 'test_password' 비밀번호
db 숫자 0 redis db 값
is_cluster 부울 false Redis가 클러스터이고 proxy 연결을 지원하지 않는 경우 true로 설정해야 함
asynq_redis host 문자열 '' 비동기 작업을 위한 Redis 주소, 기본값은 redis 구성을 사용, 클러스터 버전 미지원, redis 구성이 클러스터 버전인 경우 클러스터가 아닌 asynq_redis를 구성해야 함
password 문자열 'test_password' 비밀번호
db 숫자 0 redis db 값
global workers 숫자 8 다양한 데이터의 기본 처리 worker 수
metric_workers 숫자 8 시계열 메트릭 데이터 처리 worker 수
log_workers 숫자 8 로그 데이터 처리 worker 수
tracing_workers 숫자 8 트레이스 데이터 처리 worker 수, 기본값은 log_workers 구성 값 사용
sub_topic_max_expire_seconds 객체 구조 선택값: df_audit_event (감사 이벤트), df_dialtesting (신서틱 모니터링), df_event (이벤트), df_logging (로그), df_network (네트워크), df_object (인프라스트럭처), df_profiling (프로파일링), df_rum (RUM), df_security (보안 점검), df_tracing (APM) 예: df_logging: 3600, 1시간 전 로그는 즉시 폐기하고 더 이상 소비하지 않음
influxdb read_timeout 숫자 60 시계열 메트릭 데이터 조회 시 타임아웃 시간, 단위: s, 기본 타임아웃 60s
write_timeout 숫자 300 시계열 메트릭 데이터 쓰기 타임아웃 시간, 단위: s, 기본 쓰기 타임아웃 5분
enable_gz 부울 false 데이터 쓰기 시 gzip 압축 활성화 여부
dial_timeout 숫자 30 시계열 메트릭 데이터 조회 시 연결 설정 타임아웃 시간, 단위: ms, 기본 연결 타임아웃 30ms
doris read_timeout 숫자 60 로그 유형 데이터 조회 시 타임아웃 시간, 단위: s, 기본 타임아웃 60s
write_timeout 숫자 300 로그 유형 데이터 쓰기 타임아웃 시간, 단위: s, 기본 쓰기 타임아웃 5분
gzip_enable 부울 false 데이터 쓰기 시 gzip 압축 활성화 여부
dial_timeout 숫자 30 로그 유형 데이터 조회 시 연결 설정 타임아웃 시간, 단위: ms, 기본 연결 타임아웃 30ms
backup_kafka async 부울 false Kafka로 데이터 전송, 쓰기 방식, 기본값은 동기 쓰기
write_timeout 숫자 30 Kafka 쓰기 타임아웃 시간, 단위: s, 기본 쓰기 타임아웃 30s
max_bulk_docs 숫자 0 여러 로그를 하나의 Kafka 메시지에写入하여 Kafka로 보낼지 여부, 기본값은 하나의 로그가 하나의 Kafka 메시지를 구성
pipeline enable 부울 false true로 설정하면 중앙 Pipeline 기능 활성화
pull_duration 문자열 1m 중앙 Pipeline 스크립트 동기화 간격, 기본값 1m은 1분마다 동기화, s, m, h 등 시간 간격 표기법 지원, 예: 1m30s는 1분 30초마다 중앙 Pipeline 스크립트 동기화

kodo-servicemap 구성 요소

구성 파일 위치

  • Namespace: forethought-kodo
  • Launcher의 구성 이름: kodoServiceMap
  • Kubernetes의 Configmap 이름: kodo-servicemap

구성 파일 예시

...

redis:
    host: "r-xxx.redis.rds.xxx.com:6379"
    password: "..."
    db: 0

asynq_redis:
    host: "r-xxxx.redis.rds.xxx.com:6379"
    password: "..."
    db: 0

...

구성 항목 상세 설명

구성 항목 하위 항목 유형 기본값 설명
redis host 문자열 '' 데이터 처리를 위한 Redis 주소, 클러스터 버전 지원. 참고: 모든 kodo 관련 구성 요소의 Redis 구성은 일치해야 함
asynq_redis host 문자열 '' 비동기 작업을 위한 Redis 주소, 기본값은 redis 구성을 사용, 클러스터 버전 미지원, redis 구성이 클러스터 버전인 경우 클러스터가 아닌 asynq_redis를 구성해야 함

kodo-x-scan 구성 요소

구성 파일 위치

  • Namespace: forethought-kodo
  • Launcher의 구성 이름: kodoXScan
  • Kubernetes의 Configmap 이름: kodo-x-scan

구성 파일 예시

...

redis:
    host: "r-xxx.redis.rds.xxx.com:6379"
    password: "..."
    db: 0

asynq_redis:
    host: "r-xxxx.redis.rds.xxx.com:6379"
    password: "..."
    db: 0

...

구성 항목 상세 설명

구성 항목 하위 항목 유형 기본값 설명
redis host 문자열 '' 데이터 처리를 위한 Redis 주소, 클러스터 버전 지원. 참고: 모든 kodo 관련 구성 요소의 Redis 구성은 일치해야 함
asynq_redis host 문자열 '' 비동기 작업을 위한 Redis 주소, 기본값은 redis 구성을 사용, 클러스터 버전 미지원, redis 구성이 클러스터 버전인 경우 클러스터가 아닌 asynq_redis를 구성해야 함

kodo-ws 구성 요소

구성 파일 위치

  • Namespace: forethought-kodo
  • Launcher의 구성 이름: kodoWS
  • Kubernetes의 Configmap 이름: kodo-ws

구성 파일 예시

...

redis:
    host: "r-xxx.redis.rds.xxx.com:6379"
    password: "..."
    db: 0

asynq_redis:
    host: "r-xxxx.redis.rds.xxx.com:6379"
    password: "..."
    db: 0

...

구성 항목 상세 설명

구성 항목 하위 항목 유형 기본값 설명
redis host 문자열 '' 데이터 처리를 위한 Redis 주소, 클러스터 버전 지원. 참고: 모든 kodo 관련 구성 요소의 Redis 구성은 일치해야 함
asynq_redis host 문자열 '' 비동기 작업을 위한 Redis 주소, 기본값은 redis 구성을 사용, 클러스터 버전 미지원, redis 구성이 클러스터 버전인 경우 클러스터가 아닌 asynq_redis를 구성해야 함

문서 평가

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