주요 서버에서 Linux 시스템을 광범위하게 적용함으로써 시스템 관리자는 시스템의 안정적인 작동을 보장하기 위해 로그 모니터링에 점점 더 의존하고 있습니다. 로그 파일의 변경에는 중요한 오류 정보 또는 시스템 경고가 포함될 수 있으며, 적시에 모니터링 및 분석은 잠재적 인 고장을 효과적으로 피할 수 있습니다. 가벼운 스크립팅 언어로서 PHP는 로그 모니터링을 구현하는 편리한 방법을 제공합니다.
먼저 Linux 시스템에서 PHP 스크립트 파일을 만들어야합니다. Linux 시스템은 지정된 로그 파일을 모니터링하는 데 사용됩니다.
명령 줄 편집기 (예 : vi)를 사용하여 "log_monitor.php"라는 이름의 빈 php 파일을 작성하고 다음 코드를 입력하십시오.
<?php // 모니터링 할 로그 파일을 지정하십시오 $logFile = '/var/log/syslog'; // 실제 조건에 따라이 경로를 수정할 수 있습니다 // 파일의 초기 크기를 가져옵니다 $fileSize = filesize($logFile); // 로그 파일의 변경 사항을 지속적으로 모니터링합니다 while (true) { clearstatcache(); // 파일 상태 캐시를 지우십시오 // 파일의 현재 크기를 가져옵니다 $currentSize = filesize($logFile); // 로그 파일이 변경되었는지 확인하십시오 if ($currentSize > $ filesize) { // 로그 파일이 변경되고 최신 컨텐츠 $ hone = fopen ($ logfile, 'r')을 출력합니다. fseek ($ hands, $ filesize); // 파일 포인터 위치를 초기 크기로 설정하십시오 $ content = fread ($ hone, $ currentsize - $ filesize); // 새로 추가 된 로그 컨텐츠를 읽습니다. fclose ($ hands); // 콘솔에 대한 출력 또는 로그 파일에 대한 쓰기와 같은 로그 컨텐츠 프로세스 echo $ 컨텐츠; } // 업데이트 파일의 초기 크기는 현재 크기 $ filesize = $ currentsize입니다. // 파일 읽기를 피하기 위해 일정 기간 동안 수면 수면 (1); } ?>
코드 설명 :
위의 코드를 저장하고 편집기를 종료 한 후 다음 명령을 통해 Linux 시스템에서 PHP 스크립트를 실행하십시오.
php log_monitor.php
실행 후 스크립트는 지정된 로그 파일을 지속적으로 모니터링하고 파일이 변경 될 때 새 로그 컨텐츠를 출력합니다.
참고 : 스크립트를 실행하기 전에 PHP가 올바르게 설치되어 있는지 확인하고 스크립트를 원활하게 실행할 수 있도록 시스템 환경 변수에 대한 경로를 추가하십시오.
위의 샘플 코드는 필요에 따라 사용자 정의하고 최적화 할 수있는 기본 로그 모니터링 스크립트 일뿐입니다.
예를 들어, 오류 로그 또는 특정 경고 메시지와 같은 특정 로그 컨텐츠와 일치하는 일반 표현식을 사용하여 경보 또는 기타 처리 메커니즘을 트리거 할 수 있습니다. 또한 로그 정보를 데이터베이스에 저장하거나 원격 모니터링 시스템으로 보낼 수 있습니다.
또한보다 복잡한 로그 관리 요구에 대처하려면 Elasticsearch, Logstash 및 Kibana와 같은 전문 로그 분석 도구를 사용하여보다 강력한 데이터 집계, 검색 및 분석 기능을 제공 할 수 있습니다.
로그 모니터링에 PHP 스크립트를 사용하면 시스템 관리자는 Linux 시스템의 로그 파일을 실시간으로 모니터링하고 잠재적 인 문제를 적시에 발견하고 해결할 수 있습니다. 이 기사는 간단한 로그 모니터링 스크립트를 작성하는 방법을 설명하고 시스템 로그를 더 잘 관리하고 분석 할 수 있도록 확장 및 최적화에 대한 제안을 제공합니다.