로깅
Elasticsearch의 애플리케이션 로그를 사용하여 클러스터를 모니터링하고 문제를 진단 할 수 있습니다. Elasticsearch를 서비스로 실행하는 경우 로그의 기본 위치는 플랫폼 및 설치 방법에 따라 다릅니다.
로깅 구성
Elasticsearch는 로깅을 위해 Log4j 2 를 사용합니다 . Log4j 2는 log4j2.properties 파일을 사용하여 구성 할 수 있습니다. Elasticsearch는 세 가지 속성은, 노출 ${sys:es.logs.base_path}, ${sys:es.logs.cluster_name}그리고 ${sys:es.logs.node_name}그 로그 파일의 위치를 결정하기 위해 구성 파일에서 참조 할 수 있습니다. 속성 ${sys:es.logs.base_path}은 로그 디렉터리 ${sys:es.logs.cluster_name}로 확인되고 클러스터 이름 (기본 구성에서 로그 파일 이름의 접두사로 사용됨) ${sys:es.logs.node_name}으로 확인되며 노드 이름 (노드 이름이 명시 적으로 설정된 경우)으로 확인됩니다.
로그 디렉토리 (예를 들어 path.logs)입니다 /var/log/elasticsearch및 클러스터의 이름은 production다음 ${sys:es.logs.base_path}에 해결할 수 /var/log/elasticsearch와 ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}.log 로 해결됩니다 /var/log/elasticsearch/production.log.
######## 서버 JSON ###########################appender . 롤링 . 유형 = RollingFileappender . 롤링 . 이름 = 롤링appender . 롤링 . fileName = $ { sys : es . 로그 . base_path } $ { sys : 파일 . 구분자 } $ { sys : es . 로그 . cluster_name } _server . jsonappender . 롤링 . 레이아웃 . 유형 = ESJsonLayoutappender . 롤링 . 레이아웃 . type_name = 서버appender . 롤링 . filePattern = $ { sys : es . 로그 . base_path } $ { sys : 파일 . 구분자 } $ { sys : es . 로그 . cluster_name }-% d { yyyy - MM - dd }-% i . json . gzappender . 롤링 . 정책 . 유형 = 정책어 펜더 . 롤링 . 정책 . 시간 . 유형 = TimeBasedTriggeringPolicyappender . 롤링 . 정책 . 시간 . 간격 = 1appender . 롤링 . 정책 . 시간 . 변조 = 참appender . 롤링 . 정책 . 크기 . 유형 = SizeBasedTriggeringPolicyappender . 롤링 . 정책 . 크기 . 크기 = 256MBappender . 롤링 . 전략 . 유형 = DefaultRolloverStrategy어 펜더 . 롤링 . 전략 . fileIndex = nomaxappender . 롤링 . 전략 . 액션 . 유형 = 삭제appender . 롤링 . 전략 . 액션 . basepath = $ { sys : es . 로그 . base_path }appender . 롤링 . 전략 . 액션 . 조건 . 유형 = IfFileNameappender . 롤링 . 전략 . 액션 . 조건 . glob = $ { sys : es . 로그 . 클러스터 _ 이름}-*appender . 롤링 . 전략 . 액션 . 조건 . nested_condition . 유형 = IfAccumulatedFileSizeappender . 롤링 . 전략 . 액션 . 조건 . nested_condition . 초과 = 2GB##############################################
RollingFile어 펜더 구성
로그인 /var/log/elasticsearch/production_server.json
JSON 레이아웃을 사용합니다.
type_name에서 type필드를 채우는 플래그 ESJsonLayout입니다. 다양한 유형의 로그를 구문 분석 할 때 더 쉽게 구별하는 데 사용할 수 있습니다.
롤 로그를 /var/log/elasticsearch/production-yyyy-MM-dd-i.json; 로그는 각 롤에서 압축되고 i증가합니다.
시간 기반 롤 정책 사용
매일 로그 롤
하루 경계에 롤 정렬 (24 시간마다 롤링하는 것과 반대)
크기 기반 롤 정책 사용
256MB 이후 로그 롤
로그를 롤링 할 때 삭제 작업 사용
파일 패턴과 일치하는 로그 만 삭제
패턴은 기본 로그 만 삭제하는 것입니다.
압축 된 로그가 너무 많은 경우에만 삭제
압축 된 로그의 크기 조건은 2GB입니다.
당신이 바꿀 수있는 것보다 주 .gz에서 .zip의 appender.rolling.filePattern압축 형식을 사용하여 압연 로그를 압축하는. .gz 확장을 제거하면 롤링 될 때 로그가 압축되지 않습니다.
지정된 기간 동안 로그 파일을 보존하려는 경우 삭제 조치와 함께 롤오버 전략을 사용할 수 있습니다.
여러 구성 파일은 이름이 지정 log4j2.properties되고 상위로 Elasticsearch 구성 디렉토리 가있는 한로드 할 수 있습니다 (이 경우 병합됩니다) . 이는 추가 로거를 노출하는 플러그인에 유용합니다. 로거 섹션에는 Java 패키지 및 해당 로그 수준이 포함됩니다. appender 섹션에는 로그 대상이 포함됩니다. 로깅을 사용자 정의하는 방법과 지원되는 모든 어 펜더에 대한 광범위한 정보는 Log4j 문서 에서 찾을 수 있습니다 .
로깅 수준 구성
Elasticsearch 소스 코드 의 각 Java 패키지 에는 관련 로거가 있습니다. 예를 들어 org.elasticsearch.discovery패키지에는 검색 프로세스 logger.org.elasticsearch.discovery와 관련된 로그 가 있습니다.
더 많거나 적은 자세한 로그를 얻으려면 클러스터 업데이트 설정 API 를 사용하여 관련 로거의 로그 수준을 변경하십시오. 각 로거의 log4j에게 내장 된 2 개의 로그 수준 이상에서 자세한 정보 대부분을 수용 : OFF, FATAL, ERROR, WARN, INFO, DEBUG,와 TRACE. 기본 로그 수준은 INFO입니다. 더 높은 상세 수준 ( DEBUG및 TRACE) 에서 기록 된 메시지 는 전문가 용으로 만 사용됩니다.
지원 중단 로깅
정기적 인 로깅 외에도 Elasticsearch를 사용하면 더 이상 사용되지 않는 작업의 로깅을 활성화 할 수 있습니다. 예를 들어 향후 특정 기능을 마이그레이션해야하는지 조기에 결정할 수 있습니다. 기본적으로 지원 중단 로깅은 모든 지원 중단 로그 메시지가 생성되는 수준 인 WARN 수준에서 활성화됩니다.
이렇게하면 로그 디렉터리에 일일 롤링 지원 중단 로그 파일이 생성됩니다. 특히 새 주요 버전으로 업그레이드하려는 경우이 파일을 정기적으로 확인하십시오.
기본 로깅 구성은 지원 중단 로그가 1GB 후에 롤링 및 압축하고 최대 5 개의 로그 파일 (롤링 된 로그 4 개 및 활성 로그)을 보존하도록 롤 정책을 설정했습니다.
사용 중지 config/log4j2.properties로그 수준을 다음 error과 같이 설정하여 파일 에서 비활성화 할 수 있습니다 .
JSON 로그 형식
Elasticsearch 로그를 더 쉽게 파싱하기 위해 이제 로그가 JSON 형식으로 인쇄됩니다. 이것은 Log4J 레이아웃 속성에 의해 구성됩니다 appender.rolling.layout.type = ESJsonLayout. 이 레이아웃에는 type_name파싱 할 때 로그 스트림을 구분하는 데 사용되는 속성을 설정 해야합니다 .
appender . 롤링 . 레이아웃 . 유형 = ESJsonLayout
appender . 롤링 . 레이아웃 . type_name = 서버
'기술_Elasticsearch' 카테고리의 다른 글
고급 기계 학습 설정 (0) | 2022.06.24 |
---|---|
Elasticsearch의 기계 학습 설정 (0) | 2022.06.24 |
필드 데이터 캐시 설정 (0) | 2022.06.23 |
검색 및 클러스터 형성 설정 (0) | 2022.06.23 |
클러스터 간 복제 설정 (0) | 2022.06.23 |