-
Notifications
You must be signed in to change notification settings - Fork 10
/
log.cpp
101 lines (90 loc) · 1.79 KB
/
log.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
#include "stdafx.h"
#include "log.h"
#include <stdarg.h>
static const char* levelBuff[5] = {"DEBUG:","INFO:","WARN:","ERROR:","FATAL"};
Log::Log()
{
index = 0;
}
Log::Log(Log& log)
{
index = 0;
}
Log* Log::logPtr = NULL;
bool Log::loglog(const char *tag,enum LogLevel level,const char *message)
{
if (level >= _LOG_LEVEL_)
{
if (_LOG_WRITE_FILE_)
{
char logName[128] = {0};
sprintf(logName,"61580Log%d.log",index);
FILE *logFile = fopen(logName,"a");
if (!logFile)
{
return false;
}
fprintf(logFile,"%s##%s##%s\n",levelBuff[level],tag,message);
fclose(logFile);
}
else
{
printf("%s##%s##%s\n",levelBuff[level],tag,message);
}
return true;
}
return false;
}
Log* Log::sharedLog()
{
if (!logPtr)
{
logPtr = new Log;
}
return logPtr;
}
bool Log::logFatal(const char *tag,const char *format, ...)
{
char buff[512] = {0};
va_list args;
va_start(args, format);
vsprintf(buff,format,args);
va_end(args);
return loglog(tag,__FATAL__,buff);
}
bool Log::logError(const char *tag,const char *format, ...)
{
char buff[512] = {0};
va_list args;
va_start(args, format);
vsprintf(buff,format,args);
va_end(args);
return loglog(tag,__ERROR__,buff);
}
bool Log::logWarn(const char *tag,const char *format, ...)
{
char buff[512] = {0};
va_list args;
va_start(args, format);
vsprintf(buff,format,args);
va_end(args);
return loglog(tag,__WARN__,buff);
}
bool Log::logInfo(const char *tag,const char *format, ...)
{
char buff[512] = {0};
va_list args;
va_start(args, format);
vsprintf(buff,format,args);
va_end(args);
return loglog(tag,__INFO__,buff);
}
bool Log::logDebug(const char *tag,const char *format, ...)
{
char buff[512] = {0};
va_list args;
va_start(args, format);
vsprintf(buff,format,args);
va_end(args);
return loglog(tag,__DEBUG__,buff);
}