웹사이트 검색

실시간으로 로그 파일을 보거나 모니터링하는 4가지 방법


Linux에서 실시간으로 로그 파일의 내용을 보려면 어떻게 해야 합니까? 파일이 변경되거나 지속적으로 업데이트되는 동안 사용자가 파일의 내용을 출력하는 데 도움을 줄 수 있는 유틸리티가 많이 있습니다. Linux에서 실시간으로 파일 내용을 표시하기 위해 가장 잘 알려지고 많이 사용되는 유틸리티 중 일부는 tail 명령(파일을 효과적으로 관리)입니다.

참고 자료: Linux용 좋은 오픈 소스 로그 모니터링 및 관리 도구 4가지

1. tail 명령 – 실시간으로 로그 모니터링

말했듯이 tail 명령은 로그 파일을 실시간으로 표시하는 가장 일반적인 솔루션입니다. 그러나 파일을 표시하는 명령에는 아래 예와 같이 두 가지 버전이 있습니다.

첫 번째 예에서 tail 명령은 파일 내용 뒤에 -f 인수가 필요합니다.

sudo tail -f /var/log/apache2/access.log

명령의 두 번째 버전은 실제로 명령 자체입니다: tailf. 명령에는 -f 인수가 내장되어 있으므로 -f 스위치를 사용할 필요가 없습니다.

sudo tailf /var/log/apache2/access.log

일반적으로 로그 파일은 logrotate 유틸리티에 의해 Linux 서버에서 자주 교체됩니다. 매일 교체되는 로그 파일을 보려면 tail 명령-F 플래그를 사용할 수 있습니다.

추가 읽기: Linux에서 시스템 로그를 관리하는 방법(구성, 회전 및 데이터베이스로 가져오기)

tail -F는 새 로그 파일이 생성되는지 추적하고 이전 파일 대신 새 파일을 따르기 시작합니다.

sudo tail -F /var/log/apache2/access.log

그러나 기본적으로 tail 명령은 파일의 마지막 10줄을 표시합니다. 예를 들어 로그 파일의 마지막 두 줄만 실시간으로 보려면 다음과 같이 -f 플래그와 결합된 -n 파일을 사용하세요. 아래 예.

sudo tail -n2 -f /var/log/apache2/access.log

2. Multitail 명령 - 실시간으로 여러 로그 파일 모니터링

로그 파일을 실시간으로 표시하는 또 다른 흥미로운 명령은 multitail 명령입니다. 명령 이름은 멀티테일 유틸리티가 여러 파일을 실시간으로 모니터링하고 추적할 수 있음을 의미합니다. Multitail을 사용하면 모니터링되는 파일을 앞뒤로 탐색할 수도 있습니다.

Debian 및 RedHat 기반 시스템에 다중 유틸리티를 설치하려면 아래 명령을 실행하세요.

sudo apt install multitail   [On Debian & Ubuntu]
sudo yum install multitail   [On RedHat & CentOS]
sudo dnf install multitail   [On Fedora 22+ version]

두 로그 파일의 출력을 동시에 표시하려면 아래 예와 같이 명령을 실행하십시오.

sudo multitail /var/log/apache2/access.log /var/log/apache2/error.log

3. lnav 명령 – 실시간으로 여러 로그 파일 모니터링

멀티테일 명령과 유사한 또 다른 흥미로운 명령은 lnav 명령입니다. Lnav 유틸리티는 여러 파일을 보고 따라갈 수 있으며 해당 콘텐츠를 실시간으로 표시할 수도 있습니다.

아래 명령을 실행하여 Debian 및 RedHat 기반 Linux 배포판에 lnav 유틸리티를 설치합니다.

sudo apt install lnav   [On Debian & Ubuntu]
sudo yum install lnav   [On RedHat & CentOS]
sudo dnf install lnav   [On Fedora 22+ version]

아래 예와 같이 명령을 실행하여 두 개의 로그 파일의 내용을 동시에 감시하십시오.

sudo lnav /var/log/apache2/access.log /var/log/apache2/error.log

4. less 명령 – 로그 파일의 실시간 출력 표시

마지막으로 Shift+F를 입력하면 less 명령을 사용하여 파일의 실시간 출력을 표시할 수 있습니다.

tail 유틸리티와 마찬가지로 열린 파일에서 lessShift+F를 누르면 파일 끝을 따라 시작됩니다. 또는 less +F 플래그를 사용하여 less를 시작하여 파일 실시간 시청을 시작할 수도 있습니다.

sudo less +F  /var/log/apache2/access.log

그게 다야! 로그 모니터링 및 관리에 대한 다음 문서를 읽을 수 있습니다.

  1. Linux에서 head, tail 및 cat 명령을 사용하여 효과적으로 파일 관리
  2. Linux에서 Logrotate를 사용하여 로그 회전을 설정하고 관리하는 방법
  3. Petiti – Linux SysAdmins용 오픈 소스 로그 분석 도구
  4. CentOS/RHEL에서 'ausearch' 도구를 사용하여 감사 로그를 쿼리하는 방법
  5. Journalctl을 사용하여 Systemd에서 로그 메시지 관리 [종합 안내서]

이번 글에서는 Linux 터미널에서 로그 파일에 추가되는 데이터를 실시간으로 보는 방법을 보여드렸습니다. 아래 의견 양식을 통해 이 가이드에 관해 질문을 하거나 생각을 공유할 수 있습니다.