Programming

하나의 로그 회전 검사를 수동으로 실행할 수 있습니까?

procodes 2020. 2. 12. 23:43
반응형

하나의 로그 회전 검사를 수동으로 실행할 수 있습니까?


일정한 간격으로 예약하지 않고 logrotate의 반복을 수동으로 실행할 수 있습니까?


예: logrotate --force $CONFIG_FILE


logrotate -d [your_config_file] 디버그 모드를 호출하여 발생하는 상황에 대한 자세한 설명을 제공하지만 로그 파일은 그대로 둡니다.


단일 특정 디렉토리 또는 데몬의 로그 파일을 강제 실행하려면 일반적으로에서 구성을 찾을 수 있으며 /etc/logrotate.d독립형으로 작동합니다.

에 지정된 전역 구성 /etc/logrotate.conf은 적용되지 않으므로이 경우 /etc/logrotate.d/[servicename]구성 파일에 원하는 모든 옵션을 구체적으로 지정해야합니다 .

-d어떤 일이 발생하는지 확인하기 위해 시도해 볼 수 있습니다 .

logrotate -df /etc/logrotate.d/nginx

그런 다음 nginx를 예로 사용하여 실행할 수 있습니다.

logrotate -f /etc/logrotate.d/nginx

그리고 nginx 로그 만 회전합니다.


verbose + force 모드에서 실행할 수 있습니다.

logrotate -vf /etc/logrotate.conf


모든 logrotate를 실행하는 방법은 다음과 같습니다.

logrotate -f /etc/logrotate.conf

기본 logrotate 파일을 실행합니다. 여기에는 다른 logrotate 구성도 포함됩니다.


지정된 logrotate를 실행하는 방법으로 다음 명령을 실행하십시오.

logrotate -vf /etc/logrotate.d/custom

옵션 :

-v : 프로세스 보여주기

-f : 강제 실행

사용자 정의 : 사용자 정의 로그 설정

예 : mongodb-log

# mongodb-log rotate

/data/var/log/mongodb/mongod.log {
    daily
    dateext
    rotate 30
    copytruncate
    missingok
}

/var/lib/logrotate.status를 편집하여 테스트하려는 로그 파일에서 '최근 회전'날짜를 재설정하십시오.

그런 다음를 실행하십시오 logrotate YOUR_CONFIG_FILE.

또는 --force 플래그를 사용할 수 있지만 logrotate.status를 편집하면 회전 및 회전하지 않는 것에 대한 정밀도가 향상됩니다.


문제를 해결하기 위해 쉘 스크립트를 작성했습니다.

http://www.ict.griffith.edu.au/anthony/software/#logrotate_one

이 스크립트는 "/etc/logrotate.d"에있는 단일 logrotate 하위 구성 파일 만 실행하지만 전역 구성 파일 "/etc/logrotate.conf"의 전역 설정을 포함합니다. 그것을 테스트하기 위해 다른 otpions를 사용할 수도 있습니다 ...

예를 들어 ...

  logrotate_one -d syslog

참고 URL : https://stackoverflow.com/questions/2117771/is-it-possible-to-run-one-logrotate-check-manually



반응형