엔진 로그 설정

개요

엔진 로그는 AnyLink 8 엔진의 실행 과정과 오류를 기록하는 시스템 로깅 기능입니다. 업무시스템과 서버 수준에서 로깅 설정을 관리할 수 있습니다.

로그 설정은 다음과 같은 계층 구조로 관리됩니다.

  • 업무시스템 레벨

    업무시스템 전체의 기본 로깅 정책을 설정합니다. 설정값은 하위 서버에 상속됩니다.

  • 서버 레벨

    개별 서버의 로깅 정책을 설정할 수 있습니다.

로그 레벨

로그 레벨은 기록할 로그의 상세 수준을 결정합니다. 설정한 레벨 이상의 모든 로그가 기록됩니다.

예를 들어 INFO 레벨로 설정하면 INFO, WARN, ERROR 로그가 모두 기록됩니다.

레벨 심각도 우선순위 설명

OFF

-

로그를 기록하지 않습니다.

ERROR

1 (가장 높음)

시스템 운영에 심각한 문제가 발생한 경우에만 기록합니다.

WARN

2

잠재적인 문제가 될 수 있는 경고 상황을 기록합니다.

INFO

3

일반적인 시스템 운영 정보를 기록합니다.

DEBUG

4

개발 및 문제 해결을 위한 상세 정보를 기록합니다.

TRACE

5 (가장 낮음)

가장 상세한 수준의 실행 및 디버깅 정보를 기록합니다.

DEBUG 또는 TRACE 레벨은 많은 양의 로그를 생성하므로 다음과 같은 시스템 성능 저하가 발생할 수 있습니다.

  • 디스크 I/O 증가

  • 디스크 공간의 빠른 소진

  • 애플리케이션 성능 저하

운영 환경에서는 문제 해결이 필요한 경우에만 일시적으로 DEBUG/TRACE 레벨을 사용하고, 문제 해결 후에는 원래 로그 레벨로 복원하는 것을 권장합니다.

업무시스템의 엔진 로그 설정

엔진 로그를 설정하려면 WebAdmin 메인 메뉴에서 [운영관리] > [엔진 로그]를 선택합니다.

engine log menu

엔진 로그 화면의 리소스 목록 영역에서 업무시스템을 선택하면 화면 오른쪽에 해당 업무시스템의 엔진 로그 설정 화면이 표시됩니다.

engine log page

화면 하단의 [편집] 버튼을 클릭하여 설정 정보를 입력하고 [저장] 버튼을 클릭합니다.

파일 핸들러 설정

파일 핸들러 설정 영역에서는 로그 파일의 저장 위치와 관리 방식을 설정합니다.

항목 설명

로그 레벨

루트 로거의 기본 로그 레벨을 선택합니다.

  • OFF, ERROR, WARN, INFO, DEBUG, TRACE 중에서 선택할 수 있습니다.

유지 기간 (일)

로그 파일을 삭제하지 않고 유지할 기간(일)을 입력합니다. (기본값: 7)

설정된 기간이 지난 로그 파일은 자동 삭제됩니다.

저장 위치

로그 파일을 저장할 경로를 입력합니다. (기본값: /logs/anylink_engine.log)

입력한 경로는 엔진 시작 시 설정한 ${anylink.resource.base.path}를 기준으로 하는 상대 경로로 설정됩니다.

AnyLink 8은 시스템 로그와 트랜잭션 로그를 분리하여 기록하므로 운영 로그와 비즈니스 처리 로그를 독립적으로 관리할 수 있습니다.

저장 위치를 설정하면 자동으로 시스템 로그트랜잭션 로그를 각각 별도의 파일로 자동 기록합니다.

저장 위치 입력 필드에 파일명을 입력하면 _system 접미사가 추가된 시스템 로그 파일과 _transaction 접미사가 추가된 트랜잭션 로그 파일이 자동으로 생성됩니다.

파일명 설명

anylink_engine_system.log

엔진 시작/종료, 설정 변경, 컴포넌트 상태 등 시스템 운영 관련 로그가 기록됩니다.

anylink_engine_transaction.log

메시지 송수신, 거래 처리 등 비즈니스 트랜잭션 처리 로그가 기록됩니다.

로그 파일은 다음과 같은 디렉터리 구조로 저장됩니다.

logs/
├── anylink_engine_system.log        # 시스템 로그
├── anylink_engine_transaction.log   # 트랜잭션 로그
├── trace/
│   └── trace.log             # 거래 추적 로그
└── span/
    └── span.log              # 처리 구간(Span) 상세 로그

엔진 로거 설정

엔진 로거 목록에서는 각 로거의 로그 레벨을 변경할 수 있습니다.

엔진 로거 목록 테이블의 로그 레벨 드롭다운 목록에서 로그 레벨을 선택합니다.

engine logger log level menu

엔진 로거 추가

특정 패키지나 클래스에 대해 별도의 로그 레벨을 설정하려면 엔진 로거를 추가합니다.

엔진 로그 화면의 편집 모드에서 [로거 추가] 버튼을 클릭합니다.

engine logger add

엔진 로그 추가 다이얼로그가 표시되면 로거 정보를 입력하고 [추가] 버튼을 클릭합니다.

engine log add dialogue
항목 설명

로거 이름 *

로그를 남길 패키지 또는 클래스의 전체 경로를 입력합니다.

예: com.tmaxsoft.anylink.engine.component.adapter

설명

로거의 용도나 특성을 입력합니다.

로그 레벨

해당 로거의 로그 레벨을 선택합니다.

  • OFF, ERROR, WARN, INFO, DEBUG, TRACE 중에서 선택합니다.

새로 추가된 로거는 기본적으로 비활성화 상태입니다. 로거를 사용하려면 편집 모드에서 사용 여부를 활성화해야 합니다.

engine logger activate

다음은 자주 사용되는 로거 경로의 예시입니다.

  • 어댑터 관련 로그: com.tmaxsoft.anylink.engine.component.adapter

  • 엔드포인트 관련 로그: com.tmaxsoft.anylink.engine.component.endpoint

  • 플로우 처리 관련 로그: com.tmaxsoft.anylink.engine.core.flow

엔진 로거 삭제

엔진 로그 화면의 엔진 로거 목록 테이블에서 삭제할 로거의 체크박스를 선택하고 [삭제] 버튼을 클릭하면 로거가 삭제됩니다.

engine logger delete

서버의 엔진 로그 설정

업무시스템의 로그 설정을 상속하거나, 서버별로 개별 로깅 설정을 적용할 수 있습니다.

서버의 엔진 로그를 설정하려면 엔진 로그 화면의 리소스 목록 영역에서 서버를 선택합니다.

engine log server page

화면 오른쪽에 해당 서버의 엔진 로그 설정 화면이 표시되면, 다음 항목을 설정합니다.

항목 설명

상속 설정

서버의 로깅 설정 방식을 선택합니다.

  • 상위 설정: 업무시스템의 로그 설정을 그대로 상속합니다.

  • 개별 설정: 서버의 독립적인 로그 설정을 적용합니다.

상위 설정을 선택한 경우 별도의 로그 설정이 필요 없으며, 업무시스템의 로깅 설정이 변경되면 서버에도 자동으로 반영됩니다.

서버별 개별 설정

서버의 독립적인 로그 설정을 적용합니다.

서버별로 다른 로그 레벨이나 로거를 설정할 수 있으며, 업무시스템의 설정과 완전히 독립적으로 동작합니다.

서버의 엔진 로그 설정 화면에서 상속 설정을 개별 설정으로 선택하면 하단에 개별 설정 화면이 표시됩니다.

engine log server individual setting

파일 핸들러와 엔진 로거를 서버 환경에 맞게 설정하고 [저장] 버튼을 클릭합니다. 파일 핸들러와 엔진 로거의 설정 항목은 업무시스템의 엔진 로그 설정을 참고합니다.

다음은 서버별 개별 로그 설정을 활용하는 운영 예시입니다.

  • 특정 서버에서만 디버깅이 필요한 경우 해당 서버의 로그 레벨을 DEBUG로 설정합니다.

  • 운영 서버과 스테이징 서버에 서로 다른 로그 레벨을 적용할 수 있습니다.

  • 특정 서버의 로그를 별도의 저장 경로에 분리하여 관리할 수 있습니다.

서버별 개별 로그 설정을 사용하면 운영 환경별 특성에 맞게 로그 정책을 분리하여 관리할 수 있습니다.