로그 파일을 복사하는 스크립트를 작성해야 합니다.
로그는 두 가지 형식으로 제공됩니다.
System_<date_timestamp>.log
trace_<date_timestamp>.log
추적 로그가 20MB에 도달하고 시스템 로그가 10MB에 도달하면 새 파일이 생성됩니다.
이 로그 중 5개(각 유형당 5개)만 저장할 수 있으며, 5개를 초과하면 이전 파일이 삭제되고 새 파일로 교체됩니다.
따라서 삭제하기 전에 나중에 디버깅해야 할 경우 볼 수 있도록 다른 위치에 복사해야 합니다.
기본적으로 다음과 같습니다(시스템 로그와 유사하게 추적 로그 형식만 표시됨).
trace_12.03.05_17.11.20.log
trace_12.03.05_17.12.30.log
trace_12.03.05_17.13.45.log
trace_12.03.05_17.13.23.log
trace_12.03.05_17.14.40.log
답변1
log-rotate를 사용하여 동일한 작업을 수행할 수도 있습니다. 다음 예를 참조하세요.
# Logrotate file for trace
/source/path/trace_*.log {
missingok
create
compress
rotate 1
lastaction
# After compressing logs, move to other location
Log_dir="/target/dir/old_log_$(date +%F)/$(date +%H_%S)/"
[[ ! -d "${Log_dir}" ]] && /bin/mkdir -p "${Log_dir}"
/bin/mv /source/path/*.gz "${Log_dir}"
endscript
}
위의 파일을 저장하고 /etc/logrotate_trace.conf
간단히 시간별 크론 작업을 설정하세요.
00 * * * * /usr/sbin/logrotate -f /etc/logrotate_trace.conf
테스트를 위해 명령줄에서 실행할 수 있습니다.
/usr/sbin/logrotate -f /etc/logrotate_trace.conf
답변2
GNU 사용 cp
(내장되지 않은 대부분의 Linux 배포판 및 일부 기타 Unices에서 사용 가능):
cp -p --update /source/path/trace_*.log /target/dir
답변3
가장 직접적인 도구는동기화는 새 파일을 복사하고, 변경된 파일을 업데이트하며, 변경되지 않은 기존 파일을 유지합니다.
rsync -a /path/to/source/*.log /path/to/backup/directory/