본문으로 건너뛰기

에이전트 로그 설정

자바(Java) 애플리케이션 환경에서 발생하는 로그 데이터를 에이전트를 통해 관리하는 방법을 안내합니다. 로그 파일의 경로 및 이름 설정, 보관 기간 설정, 로그 모니터링, 사용자 정의 로그 추적 활성화 방법 등을 포함합니다. 로그 관리를 위한 다양한 설정 옵션을 제공해 시스템의 효율적인 로그 관리를 도와줍니다.

경로 및 이름 설정​

에이전트 로그의 경로와 이름은 whatap.conf 파일에 설정할 수 있습니다. log_root의 기본값으로 ${WHATAP_HOME}/logs 경로를 사용합니다.

whatap.conf
log_root=whatap/logs
log_name=whatap

로그 관리 옵션​

whatap.conf 파일에 로그 관련 옵션을 작성해 로그 내용을 관리할 수 있습니다.

whatap.conf
watchlog_enabled=true
log_rotation_enabled=true
log_oname_enabled=true
log_keep_days=7
  • watchlog_enabled Boolean

    기본값 false

    값이 true이면 로그 모니터링을 활성화합니다.

  • watchlog_check_interval Int

    기본값 2000

    로그를 감시하는 간격입니다. 매 간격으로 로그 파일에 기록을 추가했는지 확인합니다.

  • watchlog_read_count Int

    기본값 8

    로그를 읽는 최대 횟수입니다. 한 번에 watchlog_buffer_size 크기 만큼 읽습니다.

  • watchlog_buffer_size Int

    기본값 131072(128k)

    로그를 한 번에 읽는 로그 사이즈입니다.

  • watchlog.LOGKEY

    하나의 로그 파일을 감시하기 위한 설정입니다. file 이름을 입력하고 감시한 word 여러 개를 쉼표(,)로 구분해 설정합니다. check_interval 간격으로 로그를 감시하다가 키워드를 발견하면 경고합니다. 한번 경고가 나가면 silent 만큼 경고를 멈춥니다.

    • watchlog.LOGKEY.enabled Boolean 기본값 true
    • watchlog.LOGKEY.file String
    • watchlog.LOGKEY.words String
    • watchlog.LOGKEY.silent Int 기본값 10000
    • watchlog.LOGKEY.check_interval Int 기본값 1000
  • log_root String

    기본값 ${WHATAP_HOME}/logs

    에이전트 로그 경로를 설정합니다.

  • log_datasource_lookup_enabled Boolean

    기본값 true

    InitialContext Lookup 시 DataSource인 경우 로그를 기록하는 기능을 활성화합니다.

  • log_rotation_enabled Boolean

    기본값 true

    에이전트 로그 파일을 날짜 별로 저장하는 기능을 활성화합니다. 로그 파일명은 whatap-yyyymmdd.log 형태로 저장합니다. 값이 false이면 로그 파일명은 whatap.log 형태로 저장합니다.

  • log_keep_days Int

    기본값 7

    로그 파일 보관 기간을 설정합니다. log_rotation_enabled 값이 true인 경우에만 동작합니다.

  • log_oname_enabled Boolean

    기본값 false

    값이 true이면 각 로그마다 에이전트 이름을 추가합니다.

로그싱크(LogSink)​

whatap.agent-2.1.0 버전 이상부터는 애플리케이션 서버를 통합 모니터링하는 로그싱크(LogSink) 기능을 제공합니다.

주의

LogSink 옵션은 whatap.agent-2.1.0 버전 이상에서 사용 가능합니다.

로그 모니터링 기능 활성화​

  • logsink_enabled Boolean

    기본값 false

    로그 모니터링 기능을 활성화합니다.

  • logsink_trace_enabled Boolean

    기본값 false

    Log에 트랜잭션 ID를 삽입하여, 트랜잭션 트레이스의 로그 탭을 노출할지 여부를 지정합니다.

프레임워크 로그내용 수집​

프레임워크에서 수집하는 로그를 모니터링하려면 모듈에서 로그를 가로채기 위한 설정과 플러그인을 추가해야 합니다. 프레임워크에서 수집하는 로그의 기본 카테고리 이름을 'AppLog'로 설정합니다. 기본값은 hooklog_enabled 옵션의 설정과 동일합니다.

  • hooklog_enabled Boolean

    기본값 logsink_enabled

    로그 추적 활성화 여부를 설정합니다.

    노트
    • Java 에이전트 2.2.4 버전 이상에서는 애플리케이션의 재기동 없이 옵션의 변경 사항을 적용할 수 있습니다.

    • Java 에이전트 2.2.4 버전 미만에서는 hooklog_enabled 값을 변경하면 재기동이 필요합니다. hooklog_enabled 기본값은 logsink_enabled입니다. 따라서 logsink_enabled=true로 설정하고 자바 애플리케이션을 재시작하면 hooklog_enabled는 true로 설정됩니다.

  • hooklog_custom_methods String

    사용자 정의 로그를 등록합니다. 임의의 로그 프레임워크 내용을 전달합니다. 사이트에서 개별로 만든 로그 모듈의 로그를 추적할때 사용하세요.

    Java
    package io.home.test;

    public class MyLog {
    public void customLog(String log) { ... }
    }
    whatap.conf
    hooklog_custom_methods=io.home.test.MyLog.customLog

특정 로그 Appender 제외 설정하기​

특정 로그 appender를 제외하는 에이전트 옵션을 안내합니다. 다음 제공하는 에이전트 옵션을 통해 모니터링 대상에서 특정 appender를 제외할 수 있습니다.

  • ignore_logback_appender_set String Java Agent v2.2.28 or later

    logback-1.2.8을 추적할 때 특정 appender를 제외하는 에이전트 옵션입니다. 예를 들어, CONSOLE과 ACCESS_APPENDER를 제외하려면 다음 예제를 참조하세요.

    whatap.conf
    weaving=logback-1.2.8
    # example: ignore 'CONSOLE', 'ACCESS_APPENDER' appender
    ignore_logback_appender_set=CONSOLE,ACCESS_APPENDER
    노트
    • 이 에이전트 옵션을 적용할 경우 weaving=logback-1.2.8 옵션을 추가 적용해야 합니다.

    • ACCESS_APPENDER는 예시로 사용한 값입니다. 사용자 환경에 맞는 appender 이름을 지정해야 합니다.

  • ignore_log4j_appender_set String Java Agent v2.2.28 or later

    log4j-2.17을 추적할 때 특정 appender를 제외하는 에이전트 옵션입니다. 예를 들어, CONSOLE과 ACCESS_APPENDER를 제외하려면 다음 예제를 참조하세요.

    whatap.conf
    weaving=log4j-2.17
    # example: ignore 'CONSOLE', 'ACCESS_APPENDER' appender
    ignore_log4j_appender_set=CONSOLE,ACCESS_APPENDER
    노트
    • 이 에이전트 옵션을 적용할 경우 weaving=log4j-2.17 옵션을 추가 적용해야 합니다.

    • ACCESS_APPENDER는 예시로 사용한 값입니다. 사용자 환경에 맞는 appender 이름을 지정해야 합니다.