ubuntu에서 서비스 로그 확인하기

리눅스에서 로그 확인하는 법

로그 메세지를 확인함으로써 에러에 어떻게 대처할지 고민하기 시작하는 것 같다. 로그 메세지를 확인하는 방법은 여러가지가 있다. 대표적으로 nginx를 사용할때 access 또는 error 로그를 보기 위해 /var/log/nginx의 파일들을 살펴보는 것이 있다. 각각의 소프트웨어를 설치할 때 로그가 어디에 저장되는지 기본 설정이 되어있을 것이다. 패키지 관리자를 통한 소프트웨어 설치 이외에 개인적으로 설정해놓은 서비스들의 로그는 어떻게 봐야하는 것일까?

uwsgi를 이용하면서 명령어로 실행하는 것이 아닌 부팅때마다 자동으로 실행시키기 위해 서비스 등록을 하려고 시도했다. uwsgi를 위한 데몬 파일을 만들고 등록을 하려고 하면 계속 에러가 발생하고는 했는데, 에러가 발생한 것만 결과로 나오고 어디서 왜 어떤 에러가 발생했는지 알 수 없었다. 우연히 시스템에서 발생하는 모든 로그를 출력할 수 있는 걸 알았고 간단하게 정리하고자한다.

AWS EC2로 ubuntu를 사용하고 있는데, 서비스를 관리할때 systemctl 명령어를 사용한다. 서비스 로그를 살펴보기 위해서 journalctl이라는 명령어를 사용하며 옵션을 통해 특정한 서비스만의 로그를 핸들링할 수 있다.

시스템 전반적인 로그 확인

시스템에 찍히는 모든 로그를 볼 수 있다. 그렇기 때문에 여러가지 서비스들의 로그들이 혼합돼서 출력된다.

1
journalctl

오늘의 로그 확인

1
journalctl --since=today

특정 서비스의 로그 확인

1
journalctl -u <service_name>

<참고>

https://stackoverflow.com/questions/41937017/setting-up-systemctl-for-uwsgi

Share