다른 구성을 통해 logrotate의 구성을 재정의하는 방법

다른 구성을 통해 logrotate의 구성을 재정의하는 방법

내 디스크에 다음 순환 정책을 사용하는 로그 폴더가 있습니다.

"/mnt/foo/shared/log/*.log" {
  # rotate the files daily
  daily
  # Save the last 7 days worth of logs before deleting
  rotate 7
  # missing file is not an error case - just ignore.
  missingok
  # this is important for the logs
  copytruncate
}

폴더에는 " 14일 동안 이 4개 파일만 회전하고 싶습니다" /mnt/foo/shared/log라는 로그 파일 세트가 있습니다. 이 구성을 어떻게 재정의할 수 있나요? 또 다른 구성을 만들어볼까도 생각했지만, 반복되는 회전의 생각이 생겨서 그것을 멈췄습니다. 이전에는 이것을 테스트할 컴퓨터가 없었으므로 여기에 질문합니다.indexer_cron_1.logindexer_cron_4.log

답변1

globbing을 사용하여 이 작업을 수행할 수 있습니다. 즉, 14일 동안 회전해야 할 로그 파일과 회전하지 말아야 할 로그 파일을 명시적으로 지정해야 합니다.

/mnt/foo/shared/log/other_log_file_*_1.log
/mnt/foo/shared/log/other_log_file_*_2.log
/mnt/foo/shared/log/other_log_file_*_3.log
{
  # rotate the files daily
  daily
  # Save the last 7 days worth of logs before deleting
  rotate 7
  # missing file is not an error case - just ignore.
  missingok
  # this is important for the logs
  copytruncate
}

이 로그 파일은 14일 동안 순환됩니다.

/mnt/foo/shared/log/indexer_cron_[1234].log
{
  # rotate the files daily
  daily
  # Save the last 14 days worth of logs before deleting
  rotate 14
  # missing file is not an error case - just ignore.
  missingok
  # this is important for the logs
  copytruncate
}

순환 규칙에 특정 로그 파일을 포함하거나 제외하는 더 쉬운 방법은 없습니다.

관련 정보