<< 2008년 6월 20일 (금) | | 2008년 6월 22일 (일) >>

C에서 디버깅용으로 로그 남기기

예전에 C 프로그램 디버깅용으로 간단하게 사용하던 방법입니다.
물론 아래 소스를 수정해서 파일로그로 남기고, 설정으로 properties파일에서 읽어오면  Log4j 방식과 비슷하네요 ^^. log4cxx 가 있긴 하지만요 ^^.

아래는 샘플링 소스입니다.

1. 로깅을 위한 간단한 소스 : a.c
#include <stdio.h>

#define LOG_NONE 0
#define LOG_ERROR 1
#define LOG_WARN 2
#define LOG_INFO 3
#define LOG_LEVEL LOG_WARN


// 로그 레벨별로 관리
int log(char *msg, int level){
if (LOG_LEVEL >= level) {
printf("LOG %d: %s\n", level, msg);
}

return 0;
}

int main(int argc, char** argv){
printf("Hi Log Test!\n");

log("정말 에러났어 얼렁 찾아봐!", LOG_ERROR);
log("워닝이여, 나중에 시간나면 한번 봐~.", LOG_WARN);
log("흐미! 빨랑 테스트 끝났으면 지워버려.", LOG_INFO);

return 0;
}

2. 실행 결과
LOG_WARN 밑으로는 로그가 안찍히니깐 디버깅용으로 예전부터 썻던 방법입니다. ^^
[mimul.com]/home/mimul/> ./a
Hi Log Test!
LOG 1: 정말 에러났어 얼렁 찾아봐!
LOG 2: 워닝이여, 나중에 시간나면 한번 봐~.
태그 :