Tag Archives: tomcat log

[Tip | CentOS] 서비스 로그 확인

프로젝트 테스트 또는 운영시 에러추적을 위해 로그를 남기게 된다.
리눅스 환경에서 로그분석을 위한 명령어 사용법을 설명한다.


테스트서버 : CentOS
작성일 : 2021-02-19

TIP.
Case 1. 실시간 로그 확인중 에러발생
에러가 발생한 시간이나 키워드로 4> 지난 로그 확인 방법을 활용
Case 2. 에러 발생 후 로그 확인
에러 추적 범위를 좁혀가며 에러를 찾는다. 
(ex. 시간조건으로 파일을 출력 > 단어조건으로 파일을 출력 > 특정단어로 확인)
특히, 로그파일의 용량이 클경우 범위를 좁혀가며 추적해야만 파일을 열고 닫을때 소모되는 시간을 줄일 수 있다.

1> 실시간 로그 확인

# 로그파일을 실시간으로 모니터링
tail -f {로그파일}

# 로그파일 중 특정단어가 포함된 라인만 모니터링
# - error가 포함된 라인 출력(대소문자 미구분)
tail -f {로그파일} | grep -wi 'error'
# - error or wran or exception 포함된 라인 출력(여러단어)
tail -f {로그파일} | grep -wi 'error\|warn\|exception'

2> 지난 로그 확인 – 특정단어포함

# error가 포함된 라인 출력(대소문자 미구분)
grep -ri 'error' {로그파일}
grep -ri 'error' {로그파일} > {출력파일}

# error or wran or exception 포함된 라인 출력(여러단어)
grep -ri 'error\|warn\|exception' {로그파일}
grep -ri 'error\|warn\|exception' {로그파일} > {출력파일}

3> 지난 로그 확인 – 특정단어불포함

# debug가 불포함된 라인 출력(대소문자 미구분)
grep -vi 'debug' {로그파일}
grep -vi 'debug' {로그파일} > {출력파일}

# debug or trace 불포함된 라인 출력(여러단어)
grep -vi 'debug\|trace' {로그파일}
grep -vi 'debug\|trace' {로그파일} > {출력파일}

4> 지난 로그 확인 – 특정시간 또는 에러시 출력되는 문구

# 에러가 발생한 시간대 위아래 2000라인
grep -C 2000 -i '2021-02-19 16:27\|2021-02-19 16:30' {로그파일}
grep -C 2000 -i '2021-02-19 16:27\|2021-02-19 16:30' {로그파일} > {출력파일}

# 에러문구 위아래 2000라인
grep -C 2000 -i 'Null Pointer Exception\|File Not Found' {로그파일}
grep -C 2000 -i 'Null Pointer Exception\|File Not Found' {로그파일} > {출렦파일}