journalctl - linux systemd (systemctl, service) log 보는 법 개발 이것저것

이 글을 읽기 전에 Linux 의 sytstmed 에 대해 잘 모르시는 분은 여기 를 먼저 한번 보고 오시는걸 추천 드립니다.

sudo service MY_APP status

라는 명령어를 치면 기본적으로 데몬 정보와 아래쪽에 간략한 로그정보들이 뜬다

예를들어 sudo service gunicorn status 이라고 하면 아래처럼 뜬다.


자 위 같은경우 gunicorn 서비스에 대한 내용인데 아래쪽에 보이는 로그는 gunicorn에서 제공하는 error log 도 아니고  access log 도 아니다.
어디서 보여지는 로그일까? 

바로 gunicorn 을 데몬화 하여 실행해주는 systemd 프로세스에서 찍히는 로그이다.
그럼 이것은 어떻게 보아야 하나?

journalctl 이라는 linux 명령어가 있다.

man page 에서 보면 아래와 같이 기술하고 있다.

journalctl may be used to query the contents of the systemd(1)
journal as written by systemd-journald.service(8).

해석 해보면
= systemd-journald.service 에 의해 기록된 systemd journal 에 대한 컨텐츠를 query 할때 사용한다

즉, systemd 데몬의 동작로그를 볼 수 있다는 것이다.

옵션이 다양한데 (내 입장에서) 자주 사용되는 것은 주로 아래와 같다.

-u SERVICE_NAME : 특정 서비스의 저널만을 본다
-f : 출력되는 저널을 follow 한다 (App 에서 뿜어져 나오는 console log 를 볼 수 있음)

정리하자면,
내가 만일 gunicorn service 로그를 실시간(=follow)으로 보고싶다면 아래 명령어를 날릴 수 있다.

journalctl -u gunicorn -f





통계 위젯 (블랙)

5545
703
304553

GoogleAdsenseResponsive

Cluster map