Linux C語言自己動手寫日誌生成函式
阿新 • • 發佈:2018-12-22
有時候需要自己把日誌資訊儲存到日誌檔案中,沒有找到現成的函式,只好自己動手寫一個,完成相關功能。
void LOG(const char* ms, ... ) { char wzLog[1024] = {0}; char buffer[1024] = {0}; va_list args; va_start(args, ms); vsprintf( wzLog ,ms,args); va_end(args); time_t now; time(&now); struct tm *local; local = localtime(&now); printf("%04d-%02d-%02d %02d:%02d:%02d %s\n", local->tm_year+1900, local->tm_mon, local->tm_mday, local->tm_hour, local->tm_min, local->tm_sec, wzLog); sprintf(buffer,"%04d-%02d-%02d %02d:%02d:%02d %s\n", local->tm_year+1900, local->tm_mon, local->tm_mday, local->tm_hour, local->tm_min, local->tm_sec, wzLog); FILE* file = fopen("testResut.log","a+"); fwrite(buffer,1,strlen(buffer),file); fclose(file); // syslog(LOG_INFO,wzLog); return ; }
可能用到的標頭檔案
#include <time.h>
#include <stdarg.h>
#include <syslog.h>