Proud::CLogWriter 클래스 참조abstract

Public 타입

enum  eLogType { eLogTypeNewFile = 0, eLogTypeDefault, eLogTypeUserDefine }
 

Public 멤버 함수

virtual void SetFileName (const String &logFileName)=0
 
virtual void WriteLine (int logLevel, LogCategory logCategory, HostID logHostID, const String &logMessage, const String &logFunction=_PNT(""), int logLine=0)=0
 
virtual void WriteLine (const String &logMessage)=0
 
virtual void SetIgnorePendedWriteOnExit (bool flag)=0
 

정적 Public 멤버 함수

static PROUD_API CLogWriterNew (const String &logFileName, unsigned int newFileForLineLimit=0, bool putFileTimeString=true)
 CLogWriter 객체를 생성합니다.
 

상세한 설명

Tracer.h 파일을 Include해야 합니다. 파일에 로그를 기록하는 모듈입니다. ( PIDL 파일 작성하기 참고)

일반적 용도

  • CLogWriter.New 를 써서 이 객체를 생성합니다. 생성시 저장할 로그 파일 이름과 새로운 파일을 만들 라인수를 지정합니다.
  • WriteLine, WriteLine를 써서 로그를 기록합니다. 저장된 로그는 비동기로 파일에 저장됩니다.

멤버 함수 문서화

static PROUD_API CLogWriter* Proud::CLogWriter::New ( const String logFileName,
unsigned int  newFileForLineLimit = 0,
bool  putFileTimeString = true 
)
static

CLogWriter 객체를 생성합니다.

매개변수
logFileName로그 파일 이름
newFileForLineLimit로그 줄 수가 여기서 지정한 값 이상으로 커지면 새 로그 파일에 기록하기 시작합니다. 0이면 무제한입니다.
putFileTimeStringtrue를 지정하면 파일명에 현재 시간정보(연월일시분초)를 붙여 파일명 중복을 방지합니다.
virtual void Proud::CLogWriter::SetFileName ( const String logFileName)
pure virtual

로그 파일을 다른 이름으로 바꿉니다. 기록 중이던 파일은 닫히고 다른 이름으로 바뀐 파일로 새로 열립니다.

  • 이 함수는 비동기로 실행됩니다. 즉, 즉시 리턴됩니다.
  • 만약 로그 파일을 다른 이름으로 바꾸는 것이 실패하면 이 함수는 오류를 리턴하지 않습니다. 그 대신 로그를 기록하는 함수를 사용할 때 Proud.Exception 예외가 발생할 것입니다.
    매개변수
    logFileName새 로그 파일 이름
virtual void Proud::CLogWriter::SetIgnorePendedWriteOnExit ( bool  flag)
pure virtual
  • CLogWriter 객체를 제거(종료) 할 때 미처 출력하지 못한 로그들을 마저 출력할지 또는 무시할지 여부를 결정합니다.
  • 기본값은 false입니다.
  • true로 설정되면 출력하지 못한 로그가 있어도 무시하고 즉시 종료합니다.
  • false로 설정된 경우 출력하지 못한 로그들을 모두 출력 할 때 까지 종료가 지연됩니다.
매개변수
flag이 옵션을 사용할지 여부입니다.
virtual void Proud::CLogWriter::WriteLine ( int  logLevel,
LogCategory  logCategory,
HostID  logHostID,
const String logMessage,
const String logFunction = _PNT(""),
int  logLine = 0 
)
pure virtual

로그 한줄을 ProudNet 양식에 맞춰 파일에 기록합니다.

  • 이 함수는 비동기로 실행됩니다. 즉, 즉시 리턴됩니다. -이 함수는 아래 예제처럼 최종 출력 됩니다. logWriteLineTime: logLevel / logCategory(logHostID): logMessage {logFunction(logLine)}
    매개변수
    logLevel로그 내용의 심각도
    logCategory어떤 종류의 로그인지?
    logHostID이 로그를 전송한 호스트
    logMessage로그 메시지
    logFunction로그를 호출한 함수 이름
    logLine로그를 호출한 라인
virtual void Proud::CLogWriter::WriteLine ( const String logMessage)
pure virtual

로그 한줄을 파일에 기록합니다.

  • 이 함수는 비동기로 실행됩니다. 즉, 즉시 리턴됩니다.
  • 단, void WriteLine(TraceID TID, LPCWSTR text) 와 달리 아무런 헤더를 포함하지 않습니다.
    매개변수
    logMessage로그를 찍을 문자열.
  • String 형태 또는 WriteLine(String::NewFormat(L"Test Log %d", 10)) 형태로 사용 가능합니다.