오류 처리 및 로깅

오류 처리 및 로깅 (Error Handling and Logging)

PHP에서 오류(error)가 났을 때 어떻게 처리하고, 어떤 정보를 어디로 기록(logging)할지 다루는 함수들을 모아 둔 장이에요. 이 페이지에서는 오류 처리·로깅 함수가 무엇을 할 수 있는지 개요를 살펴봐요.

출처: Error Handling and Logging

본문

오류 처리와 로깅을 다루는 함수들은 나만의 오류 처리 규칙을 정의할 수 있게 해주고, 오류가 로그되는 방식을 수정할 수도 있게 해줍니다. 그래서 요구에 맞게 오류 알림(error reporting)을 바꾸고 강화할 수 있어요.

로깅 함수를 쓰면 메시지를 다른 머신, 이메일(이메일→페이저 게이트웨이로도!), 시스템 로그 등으로 직접 보낼 수 있습니다. 그 덕분에 애플리케이션과 웹사이트에서 가장 중요한 부분만 골라 로그하고 모니터링할 수 있어요.

한편 오류 알림 함수들은 어떤 수준과 종류의 오류 피드백을 줄지를 커스터마이즈합니다. 단순한 공지(notice) 수준부터, 오류 중에 호출되는 직접 만든 함수까지 폭이 넓어요.

주요 함수들은 다음과 같아요.

  • debug_backtrace — 백트레이스(backtrace) 생성
  • debug_print_backtrace — 백트레이스 출력
  • error_clear_last — 마지막 오류를 지움
  • error_get_last — 발생한 마지막 오류 조회
  • error_log — 오류 메시지를 로그로 보냄
  • error_reporting — 보고할 PHP 오류 수준 설정
  • get_error_handler — 현재 오류 처리 함수 조회
  • get_exception_handler — 현재 예외 처리 함수 조회
  • restore_error_handler — 이전 오류 처리 함수 복원
  • restore_exception_handler — 이전 예외 처리 함수 복원
  • set_error_handler — 사용자 정의 오류 처리 함수 설정
  • set_exception_handler — 사용자 정의 예외 처리 함수 설정
  • trigger_error — 사용자 수준의 오류/경고/공지를 발생
  • user_errortrigger_error의 별칭

더 알아보기