PEAR: Console_CommandLine #1 – 설치

Console_CommandLine 패키지는 명령행 인자를 파싱하는 PEAR 라이브러리입니다. 컴포져를 이용해서 설치하려면 composer.json에 다음 내용을 알맞은 위치에 추가하면 됩니다.

» 계속 읽기

PEAR: Log #5 – 컴포져로 Log 설치하기

컴포져(Composer)로 PEAR 패키지를 설치하는 일반적인 방법은 컴포져 설명서에 나와있으므로, 여기서는 Log 패키지에 한정해서 이야기를 해보려고 한다.

패키지스트(Packagist)에 이미 pear/log가 있으므로 require로 손쉽게 설치 할 수 있었다. 하지만, 언젠가부터 의존성 문제로 설치가 되지 않는다. 이 문제를 해결하기 위해서는 composer.jsondev-master 패키지를 설치하도록 설정해야 한다.

PEAR Log 의존성 문제를 없애기 위해 PEAR_Exception 패키지로 함께 설치하도록 설정했다.» 계속 읽기

PEAR: Log #4 – 로그 핸들러

Log 패키지에서 제공하는 다수의 로그 핸들러가 있다. 그 중 이전 글에서 다룬 consolefile 제외하고 몇개를 추려 간략한 사용법을 살펴보자.

Firebug

firebug 로그 핸들러는 파이어폭스(Firefox) Firebug 애드온의 콘솔 패널을 통해 로그 메시지를 출력하는 핸들러다.

SQL

sql 로그 핸들러는 데이터베이스에 로그 메시지를 기록한다.» 계속 읽기

PEAR: Log #3 – 로그 라인 포맷

Log 인스턴스를 생성 할 때 설정값을 통해서 로그 라인의 형식을 기본 외의 형식으로 지정 할 수 있다. 형식에 사용하는 토큰은 다음과 같다.

Token Alternate Description
%{timestamp} %1$s Timestamp. This is often configurable.
%{ident} %2$s The log handler's identification string.
%{priority} %3$s The log event's priority.
%{message} %4$s The log event's message text.
» 계속 읽기

PEAR: Log #2 – 로그 레벨

로그 메시지에는 로그 레벨이란 것이 있는데, 대부분의 유닉스 계열의 로그 시스템에서 거의 동일하게 사용한다. Log에서도 마찬가지로 동일한 로그 레벨을 사용 중이고, Monolog, PSR-3, syslog를 사용한다고 해도 이 부분은 거의 같다.

Log 사용자 문서에 나온 로그 레벨 표를 일단 한 번 살펴보자.

Level Shortcut Description
PEAR_LOG_EMERG emerg() System is unusable
PEAR_LOG_ALERT alert() Immediate action required
PEAR_LOG_CRIT crit() Critical conditions
PEAR_LOG_ERR err() Error conditions
PEAR_LOG_WARNING warning() Warning conditions
PEAR_LOG_NOTICE notice() Normal but significant
PEAR_LOG_INFO info() Informational
PEAR_LOG_DEBUG debug() Debug-level messages

Level 값은 PEAR Log 패키지가 미리 정의한 값으로 log() 메소드 두번째 매개변수에 들어간다.» 계속 읽기