前言
本文主要介绍了关于linux c下log输出代码模板的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧
模板
模本分为两个文件:log.c和log.h.
log.c
/** log.c **/#include#include "log.h"// log文件路径#define filepath "./ps_com_log.log" //设定时间static char * settime(char * time_s){ time_t timer=time(NULL); strftime(time_s, 20, "%Y-%m-%d %H:%M:%S",localtime(&timer)); return time_s;} /* *打印 * */static int PrintfLog(char * logText, char * string){ FILE * fd = NULL; char s[1024]; char tmp[256]; //使用追加方式打开文件 fd = fopen(filepath,"a+"); if(fd == NULL){ return -1; } memset(s, 0, sizeof(s)); memset(tmp, 0,sizeof(tmp)); sprintf(tmp, "*****[pid=%d]:[", getpid()); strcpy(s, tmp); memset(tmp, 0,sizeof(tmp)); settime(tmp); strcat(s, tmp); strcat(s, "]*****"); fprintf(fd, "%s", s); fprintf(fd, "*[%s]*****:/n",logText); fprintf(fd, "%s/n",string); fclose(fd);} /* *日志写入 * */void LogWrite(char *logText,char *string){ //[为支持多线程需要加锁] pthread_mutex_lock(&mutex_log); //lock. //打印日志信息 PrintfLog(logText, string); //[为支持多线程需要加锁] pthread_mutex_unlock(&mutex_log); //unlock. }
评论列表()