Elasticsearch 7.2 버전을 사용하고 있으며 log4j2를 사용합니다.
지정된 기간 동안 로그 파일을 유지하려는 경우 삭제 작업과 함께 롤오버 전략을 사용할 수 있습니다.
Elasticsearch의 config 디렉토리에 log4j2.properties
파일에서 아래의 DeleteAction
설정을 추가/수정한 후 엘라스틱서치를 재기동 합니다.
######## Server JSON ############################
# 생략 ...
appender.rolling.strategy.action.type = Delete
appender.rolling.strategy.action.basepath = ${sys:es.logs.base_path}
appender.rolling.strategy.action.condition.type = IfFileName
appender.rolling.strategy.action.condition.glob = ${sys:es.logs.cluster_name}-*
appender.rolling.strategy.action.condition.nested_condition.type = IfAny
appender.rolling.strategy.action.condition.nested_condition.fileSize.type = IfAccumulatedFileSize
appender.rolling.strategy.action.condition.nested_condition.fileSize.exceeds = 2GB
appender.rolling.strategy.action.condition.nested_condition.lastMod.type = IfLastModified
appender.rolling.strategy.action.condition.nested_condition.lastMod.age = 7D
위의 설정은 아래의 조건중 하나라도 만족하면 해당 로그를 삭제합니다.
1. 파일 크기 2GB 초과한 경우
2. 마지막 수정일이 오늘로부터 7일이 경과한 경우
You can check some more examples in log4j2 documentation