본문으로 건너뛰기

Log 모니터링

exemONE Log 모니터링 기능 설명

exemONE의 Log 모니터링은 Logs 메뉴 하위에 Logging Trend, Keyword Logging, Live Tail 3가지 기능으로 구성되어 있습니다. 각 기능에 대해 상세히 설명드리겠습니다.


1. Logging Trend (Elasticsearch 기반 로그 모니터링)

참고 문서: Logging Trend

Elasticsearch로 설정된 로그를 출력하는 기능입니다. 기존 Clickhouse에서 수집하던 Logging 데이터를 Elasticsearch에서도 수집 가능하도록 개선된 기능입니다.

주요 구성 요소

순번항목내용
1Target모니터링 대상을 선택합니다.
2Search로그 필드를 검색합니다. Text 또는 Lucene 쿼리 방식을 지원합니다.
3Search Option검색 정확도, 오타 허용, 키워드 포함 기준 등 검색 결과를 조정할 수 있습니다.
4Target View검색한 로그의 타겟 분포도 및 타겟 목록을 Tree Map / List View로 보여줍니다.
5Log Trend로그 카운트 추이를 시계열 차트로 보여줍니다. 차트 클릭 시 해당 시간대 로그가 Logging List에 출력됩니다.
6Logging ListElasticsearch로 수집된 로그 목록을 보여줍니다. Fields 선택으로 출력 칼럼 설정이 가능합니다.
7Logging List Search결과 내에서 Log 내용을 검색합니다.
8OptionGrid 옵션 및 Keyword Setting 메뉴에서 Keyword 색상 설정이 가능합니다.

검색 기능

  • Text: 로그 내용을 텍스트로 검색
  • Lucene: Elasticsearch의 Lucene 쿼리로 로그 검색
  • 검색 결과는 Target View, Log Trend, Logging List 데이터에 모두 반영됩니다.

Log Message Detail

Logging List에서 Log 컬럼 데이터 클릭 시 로그 메시지 상세 모달이 출력됩니다.

항목내용
Information로그 메시지의 정보를 보여줍니다.
Message로그 메시지 내용을 보여줍니다. Analysis Details 버튼 클릭 시 Log를 분석한 디테일 화면을 보여줍니다.

참고 문서: Log Message Detail (Logging Trend)

Logging Trend 사전 설정 (필수)

참고 문서: Elasticsearch Logging Trend 데이터 수집

Step 1. exemONE Repository DB(PostgreSQL)에서 Elasticsearch 로그 설정 활성화:

insert into xm_global_properties (props_id, name, value)
(
select uuid_generate_v4() as props_id, 'useESLog' as name, 'true' as value
where not exists (
select 1 from xm_global_properties where "name" = 'useESLog'
)
);

Step 2. exemone-api에서 Elasticsearch 활성화 ({EXEM_HOME}/containers/exemone-api/configs/application.yml):

  elasticsearch:
username:
password:
hostname: 10.10.49.180
port: 9200
connection-timeout: 30000
enable: true

Step 3. exemone-api 재시작: $ {EXEM_HOME}/scripts/restart api

Step 4. exemone-ingester에서 Elasticsearch 활성화 ({EXEM_HOME}/containers/exemone-ingester/configs/ingester.yaml):

  elasticsearch:
enabled: true
addresses:
- http://10.10.49.180:9200
username:
password:

Step 5. exemone-ingester 재시작: $ {EXEM_HOME}/scripts/restart ingester

Step 6. Setting > Log > Path에서 Log Repository를 Elasticsearch로 선택하여 Path 추가

Step 7. Setting > Log > Logging에서 Elasticsearch Path를 선택하여 Logging 추가

  • Elasticsearch 지원 버전: 8버전 이상
  • 적용 버전: exemone-api v3.0.506.15.50, exemone-ingester v3.0.506.15.29

2. Keyword Logging (키워드 기반 로그 모니터링)

참고 문서: Keyword Logging

설정한 Keyword가 포함된 로그만 필터링하여 출력하는 기능입니다.

주요 구성 요소

순번항목내용
1FiltersLogging Group, Target Type 조건으로 조회합니다.
2Search서버에서 Log를 검색합니다.
3Logging History수집된 로그를 차트로 표현합니다. 특정 차트 영역 클릭 시 해당 시간대 수집 데이터로 Logging List가 리로드됩니다.
4Logging ListKeyword에 해당하는 로그 정보를 출력합니다. Log 컬럼 데이터 클릭 시 로그 메시지 상세 화면이 출력됩니다.
5Logging List Search결과 내에서 Log 내용을 검색합니다.
6OptionGrid 옵션 및 Keyword Setting에서 Keyword 색상 설정이 가능합니다.

Keyword Logging - Log Message Detail

Logging List에서 Log 컬럼 클릭 시 상세 모달이 출력됩니다.

항목내용
Information로그 메시지의 정보를 보여줍니다.
Message로그 메시지 내용을 보여줍니다. 더보기 버튼 클릭 시 생략된 로그 내용이 출력됩니다.

참고 문서: Log Message Detail (Keyword Logging)


3. Live Tail (실시간 로그 모니터링)

참고 문서: Live Tail

설정한 Pattern과 일치하는 로그를 실시간으로 출력하는 기능입니다.

주요 구성 요소

순번항목내용
1FiltersLog Type, Target을 조건으로 조회합니다. Log Type 선택 시 해당 Logging Type에 등록된 Log Target 목록이 표시됩니다.
2SearchFilters에서 설정한 Log Target 목록 중 Live Tail에 출력할 대상을 복수로 선택할 수 있습니다.
3Live List선택한 대상의 실시간 로그를 보여줍니다. 관리자가 로그 설정 변경 시 라이브 테일이 새로고침됩니다.
  • 지원 가능 DB 타입: PostgreSQL, Oracle, SQL Server, MySQL, MongoDB, Redis, Cubrid, Altibase, Tibero

4. 로그 수집 설정 방법 (Setting > Log)

참고 문서: Setting > Log, Setting > Path

로그 모니터링을 위해서는 Setting > Monitoring > Log 메뉴에서 사전 설정이 필요합니다.

Step 1. Path 설정 (Setting > Monitoring > Log > Path)

수집할 로그의 규칙을 설정합니다.

Add Path 시 설정 항목:

항목내용
Path NamePath 이름 설정
Log Type로그 타입 선택
Log Environment로그 파일이 존재하는 서버 환경 선택
Path File로그 파일 경로 입력
Config로그 출력 방식 설정
Filter Key수집할 로그 키워드 설정
Exclude Filter Key제외할 로그 키워드 설정
Multi Line Type멀티 라인 타입 설정
Parser TypeParser Type 선택
Parser Simulation실제 로그와 패턴을 입력하여 파싱 테스트

Step 2. Logging 설정 (Setting > Monitoring > Log > Logging)

수집할 로그를 등록합니다.

Add Logging 시 설정 항목:

항목내용
Logging Name로그 이름 입력
Logging Group로그 그룹 선택
Target로그를 수집할 타입과 대상 선택
Path List로그 수집 정보 선택 (등록한 Path 선택)

Logging Trend vs Keyword Logging 비교

구분Logging TrendKeyword Logging
데이터 저장소ElasticsearchClickhouse (기본)
수집 방식키워드 필터 없이 모든 데이터 저장설정한 Keyword가 포함된 로그만 수집
검색 방식Text 검색 + Lucene 쿼리 지원서버 측 Log 검색
Target ViewTree Map / List View 분포도 제공Logging Group, Target Type 필터
차트Log Trend (로그 카운트 추이)Logging History (수집 로그 차트)
상세 분석Analysis Details 버튼으로 분석 가능더보기 버튼으로 전문 확인

추가 참고 문서