>백엔드 개발 >PHP 튜토리얼 >Loggly를 사용한보다 효과적인 PHP 로깅

Loggly를 사용한보다 효과적인 PHP 로깅

William Shakespeare
William Shakespeare원래의
2025-02-18 08:31:09712검색

Loggly를 사용한보다 효과적인 PHP 로깅 이 기사는 Loggly가 후원했습니다. Sitepoint를 가능하게하는 스폰서를 지원해 주셔서 감사합니다. 서버 과부하, 라이브러리는 예외를 던지고, 이메일을 보내는 동안 오류 : 이러한 오류는 불행히도 모든 시스템의 일부입니다. 시스템 기능을 잘 수행 할 책임이 있다면 여전히 냉담합니다. 더구나, 나는 당신이 당신의 로그 파일에 앉아있는 것을 해결하는 데 필요한 모든 데이터를 이미 가지고 있다고 확신합니다.

. 그러나 해당 데이터에 액세스하는 것은 해당 데이터를 저장, 처리 및 분석 할 수있는 방법이 없다면 실제로 도움이되지 않습니다. 이 기사에서는 적절한 로그 관리 솔루션 (이 경우 Loggly)이있는 PHP 로깅 라이브러리를 사용 하여이 데이터를보다 효과적으로 사용하는 방법을 설명합니다. 또한 로그 관리 서비스를 사용하여 더 쉽게 저장하고 분석하는 방법의 예를 보여 드리겠습니다. 키 테이크 아웃

loggly는 중앙 집중식 로그 관리, 실시간 모니터링, 고급 검색 기능을 제공하며 광범위한 로그 형식을 지원하는 인기있는 PHP 로깅 도구입니다. PHP와 쉽게 통합 될 수 있으며 여러 소스에서 로그가 생성되는 대규모 응용 프로그램에 특히 유용합니다. Loggly는 PHP 로깅 라이브러리 인 Monolog 및 PHP 프레임 워크 인 Laravel과 쉽게 통합 할 수 있습니다. 또한 클라우드 플랫폼 인 Heroku에서 제작 환경에서 올바른 로그를 추적하도록 구성 할 수 있습니다. loggly는 로그 데이터를 검색, 그룹 및 시각화하는 인상적인 방법을 제공합니다. 검색 페이지의 도구 세트를 제공하여 로그를 필터링, 분석 및 시각화합니다. Loggly는 또한 응용 프로그램에서 작업이 발생할 때마다 알림을 보내도록 구성 할 수있는 경고 도구를 제공합니다. PHP 로깅 PHP로 로깅 할 때 Error_Log 및 Trigger_Error 함수를 사용하는 경향이 있거나 오류 처리기를 사용하여 로깅 프로세스를보다 일반적으로 만들 수 있습니다. 이런 식으로 그렇게하기로 선택한 경우, 기능을 어떤 종류의 개체 안에 랩핑하여 물건을 깨끗하고 유연하게 만들어야합니다. Syslog 함수를 사용하여 로그를 시스템으로 직접 전달할 수도 있습니다.

그러나 동시에 여러 장소에 로그인해야하거나 오류 수준에 따라 주어진 서비스로 로그를 보내는 경우 어떻게 하시겠습니까? 내장 도구를 사용하는 대신 로깅 라이브러리를 사용하는 것이 종종 더 쉽습니다.

. 왜 내가 독백을 사용하는지

일부는 log4php, klogger 및 monolog와 같은 라이브러리가 일반적인 문제를 해결하려고 시도하지만 몇 가지 제한 사항이 있으며 독백은 많은 장점이 있습니다.

    psr-3 준수 입니다 . loggly를 포함한 다양한 서비스에 대한 핸들러가 포함되어 있습니다 로그 출력을 사용자 정의하기위한 포맷터를 지원합니다 브라우저 콘솔에 로깅을위한 Browserconsole Hike와 같은 개발 로깅을위한 도우미. 패키지에 대한 자세한 내용은 문서를 확인하십시오. 가장 인기있는 프레임 워크에는 상자에 독백이 포함되므로 문서의 전체 목록을 확인하십시오. 독백을 설치하지 않은 경우 작곡가를 사용하여 프로젝트에 추가 할 수 있습니다.
  • 규모로 로깅의 문제 로깅은 디스크에 쓰기, 백업 및 파일을 검색해야하기 때문에 일부 회사는 작업을 처리하기 위해 별도의 서비스를 만듭니다 (일반적으로 어떤 종류의 오류가 발생할 때 정보를 검색하는 파일을 검색하는 일련의 스크립트 또는 앱 세트). 회사 나 서비스가 확대되면서 개발자와 분석가에게 빠르게 악몽이 될 수 있습니다. 또 다른, 더 나은 대안은 로그 스토리지 및 분석을위한 클라우드 기반 서비스이며,이 기사에서 자세히 설명 하듯이 많은 이점이 있습니다.
  • . roggly 란 무엇입니까? 로그를 더 쉽게 보관하고 분석 할 수있는 몇 가지 로그 관리 서비스가 있습니다. Loggly는 가장 인기있는 것이며 PHP와 통합하는 몇 가지 방법이 있습니다. Loggly가 로그를 수신하면 매우 인상적인 방식으로 데이터를 검색, 그룹 및 시각화 할 수 있습니다. 무료로 시도 할 수 있습니다. 사이트에 상당한 트래픽이있는 경우에만 지불합니다. 시스템 로그를 추적하기 위해 서버에 설치하는 방법을 살펴보면서 먼저 시작하겠습니다.
  • . monolog와 함께 loggly를 사용합니다 로깅 프로세스를 위해 Monolog 패키지 라이브러리를 사용하기로 결정한 경우 Loggly를 포함한 모든 로그 관리 서비스와 통합하기가 매우 쉽습니다. 기본적으로 Loggly에 대한 logglyHandler가 제공됩니다
  • 독백 인스턴스를 만든 후에는 핸들러를 등록 된 처리기 목록으로 밀고 앞에서 언급 한대로 토큰을 제공해야합니다. 태그 부분은 선택 사항이지만 로그 항목을 그에 따라 태그하여 로그 항목을 분리하는 것이 좋습니다. 이제 우리는 monolog를 사용하여 서비스에 로깅을 시작할 준비가되었습니다.
laravel과 함께 로그

Laravel은 벌목 과정에 독백을 사용하고 있기 때문에 핸들러를 쉽게 바인딩 할 수 있습니다.

heroku 에서 loggly 구성 응용 프로그램을 생산으로 옮길 때 로그 추적이 제대로 작동하는지 확인하려고합니다. 이 섹션에서는 Heroku 응용 프로그램에 loggly를 첨부 할 것입니다. Heroku는 로그 배수구를 사용하여 로그를 외부 벌목 서비스로 전달하는 데 도움이됩니다. 설치 프로세스에 대한 자세한 내용은 문서를 확인할 수 있습니다.
openlog('php', LOG\_CONS | LOG\_NDELAY | LOG\_PID, LOG\_USER | LOG\_PERROR); syslog(LOG\_ERR, 'Error!'); syslog(LOG\_INFO, 'Hello World!'); closelog();
openlog('php', LOG\_CONS | LOG\_NDELAY | LOG\_PID, LOG\_USER | LOG\_PERROR); syslog(LOG\_ERR, 'Error!'); syslog(LOG\_INFO, 'Hello World!'); closelog();
소스 설정> 고객 토큰 페이지에서 찾을 수있는 실제 토큰으로 토큰을 업데이트해야합니다. Heroku 인스턴스에 이미 로그인 한 경우 Heroku_app_name을 생략 할 수 있습니다. 그렇지 않으면 Heroku 응용 프로그램 이름을 지정해야합니다. 배수 URL은 TAG/Heroku로 끝납니다. 이것은 정의 된 태그를 사용하여 로그를 필터링하는 데 도움이됩니다. 나중에 이것에 대해 더 많이 이야기 할 것입니다.

.

Loggly는 Heroku와 같은 외부 서비스와 쉽게 통합 될 수 있습니다. 로그 전송 방법 및 사용 가능한 스크립트 또는 라이브러리의 개요는 Loggly 문서를 확인하십시오. loggly로 로그 분석 이제 로그를 loggly로 보내는 방법에 대해 논의 했으므로 데이터 분석 및 작업을 시작할 수 있습니다. 검색 페이지는 로그를 필터링, 분석 및 시각화하는 일련의 도구 세트를 제공합니다.

대시 보드에는 하단의 로그 목록과 함께 이벤트 타임 라인이 표시됩니다. 페이지 상단에는 검색 상자와 필터 이벤트를위한 날짜 범위가 포함되어 있으므로 지난 30 분을 선택하거나 사용자 정의 날짜 범위를 지정하여 검색을 클릭하여 검증 할 수 있습니다. 필터링 로그 "이메일"또는 "event_*"와 같은 특정 용어를 사용하여 검색 입력을 사용하여 필터 데이터를 필터링 할 수 있습니다. Loggly는 로그 항목의 본문 내부를 검색하고 페이지 하단에 결과를 표시합니다. "tag : monolog"와 같은 검색을 위해 필드를 사용하여 독백에서 이전에 보낸 이벤트를 필터링 할 수도 있습니다. 왼쪽 메뉴를 동적 필드 탐색기라고하며 사용 가능한 필드 필터를 식별하는 데 도움이 될 수 있습니다.

로그를 분석하는 방법을 더 잘 이해하려면 다음 예제를 사용해 봅시다. 내부 서버 오류 Loggly를 사용한보다 효과적인 PHP 로깅 서버가 사용자로부터 유효한 요청을 처리 할 수 ​​없을 때 내부 서버 오류가 발생합니다. PHP 에서이 오류에 대한 세부 정보는 Apache 로그 내부에서 찾을 수 있습니다. PHP를 사용하여 오류 핸들러를 등록하면 로그 메시지를 분석하고 로그 메시지에 따라 오류를 수정할 수 있습니다. 페이지 왼쪽의 필드 탐색기 위젯을 사용하여 Apache 5xx 상태 코드를 사용하여 로그를 필터링 할 수 있습니다. 검색은 "apache.status : 500"과 같은 구체적 일 수 있거나 "apache.status : [500 ~ 599]"와 같이 더 일반적인 것으로 만들 수 있습니다.Loggly를 사용한보다 효과적인 PHP 로깅 치명적인 오류

PHP에서 치명적인 오류가 발생하면 프로그램이 실행을 중지하고 시스템에 오류를 기록합니다. 생산에서 치명적인 오류가 발생하지 않기 때문에 Loggly는 다른 출처에서 오류의 심각성을 쉽게 추적하는 방법을 제공합니다. “syslog.appname : php”용어는 PHP 로그 만 표시됩니다. 이제 syslog.severity를 ​​사용하여 특정 심각도의 오류를 표시해야합니다. ]”. 문서에서 사용 가능한 필드 목록에 대한 자세한 내용을 읽을 수 있습니다.

위 내용은 Loggly를 사용한보다 효과적인 PHP 로깅의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.