로그에서 마지막 5분 동안의 오류만 읽습니다.

로그에서 마지막 5분 동안의 오류만 읽습니다.

내 로그 파일은 다음과 같습니다.

2019-03-17 13:49:01.267 MESSAGE Web  
2019-03-17 13:50:04.325 ERROR error msg: ConnectivityException  
2019-03-17 14:15:20.326 ERROR error msg: Error occurred invoking AgentConnector.call() method  
2019-03-17 14:30:30.326 WARNING start: Web  
2019-03-17 14:49:12.327 ERROR exec-10 - null  

이 로그를 5분마다 읽고 지난 5분 동안 발생한 모든 오류를 캡처해야 합니다. 즉, 오후 14시 16분에 이 로그를 읽을 때 14시 15분에 발생한 오류는 1개만 표시되지만 오후 13시 50분에는 발생하지 않습니다. 오류. 스크립트를 실행할 때마다 스크립트가 종료됩니다.

이 작업을 수행하기 위해 "dd"를 사용할 수 있다는 내용을 읽었지만 스크립트로 작성하지는 않았습니다.

dd if="$in_file" iflag=skip_bytes,count_bytes,fullblock bs="$block_size" skip="$start" count="$copy_size"  

이를 수행하는 다른 방법.

답변1

크론 작업을 설정하여 오류를 찾아볼 수 있습니다. 다음을 수행하세요.

  1. 스크립트를 작성하여꼬리오류 파일에서 최신 오류 줄을 가져옵니다.
  2. 그런 다음 "오류"를 파이프로 내보내십시오.
  3. cron에 스크립트 추가(*/5 * * * * PATH_TO_SCRIPT)

관련 정보