43 #ifndef ___APPLOG_H___
44 #define ___APPLOG_H___
57 #ifdef CCXX_NAMESPACES
89 HEXdump(
const unsigned char *buffer,
int buff_len,
int max_len = 200);
126 #ifdef CCXX_EXCEPTIONS
131 class __EXPORT AppLogException :
public ost::Exception
138 AppLogException(
const std::string &what_arg) : ost::Exception(what_arg) {};
178 void writeLog(
bool endOfLine =
true);
179 static map<string, Slog::Level> *
assoc;
209 Ident(
const char *str) : _ident(str) {};
214 std::string&
str() {
return _ident;}
219 Ident& operator= (std::string &st) {_ident = st;
return *
this;}
224 Ident& operator= (
const char str[]) {_ident = str;
return *
this;}
229 const char*
c_str() {
return _ident.c_str();}
240 AppLog(
const char* logFileName = NULL,
bool logDirectly =
false ,
bool usePipe =
false);
248 AppLog(
const char* logFileName = NULL,
bool logDirectly =
false);
274 void logFileName(
const char* FileName,
bool logDirectly =
false,
bool usePipe =
false);
282 void logFileName(
const char* FileName,
bool logDirectly =
false);
299 void clogEnable(
bool en =
true);
305 void slogEnable(
bool en =
true);
312 void identLevel(
const char *ident,
Slog::Level level);
318 void open(
const char *ident);
325 virtual int overflow(
int c);
338 void emerg(
const char *format, ...);
344 void alert(
const char *format, ...);
350 void critical(
const char *format, ...);
356 void error(
const char *format, ...);
362 void warn(
const char *format, ...);
368 void notice(
const char *format, ...);
374 void info(
const char *format, ...);
380 void debug(
const char *format, ...);
445 {
return operator()(Slog::levelWarning);}
452 {
return operator()(Slog::levelError);}
459 {
return operator()(Slog::levelDebug);}
466 {
return operator()(Slog::levelEmergency);}
473 {
return operator()(Slog::levelAlert);}
480 {
return operator()(Slog::levelCritical);}
487 {
return operator()(Slog::levelNotice);}
494 {
return operator()(Slog::levelInfo);}
513 map<string, Slog::Level>::iterator it = assoc->find(name);
515 return (it != assoc->end()) ? it->second : Slog::levelEmergency;
526 {
return sl.operator()(Slog::levelDebug);}
534 {
return sl.operator()(Slog::levelWarning);}
542 {
return sl.operator()(Slog::levelError);}
550 {
return sl.operator()(Slog::levelEmergency);}
558 {
return sl.operator()(Slog::levelAlert);}
566 {
return sl.operator()(Slog::levelCritical);}
574 {
return sl.operator()(Slog::levelNotice);}
582 {
return sl.operator()(Slog::levelInfo);}
589 #ifdef CCXX_NAMESPACES
593 #endif //___APPLOG_H___