主頁(yè) > 知識(shí)庫(kù) > linux c下log輸出代碼模板示例代碼

linux c下log輸出代碼模板示例代碼

熱門標(biāo)簽:智能電話機(jī)器人坐席 廈門營(yíng)銷外呼系統(tǒng)平臺(tái) 外呼系統(tǒng)的經(jīng)營(yíng)范圍 申請(qǐng)400電話價(jià)格多少 安陽(yáng)ai電銷機(jī)器人軟件 柳州市機(jī)器人外呼系統(tǒng)報(bào)價(jià) 云會(huì)外呼系統(tǒng) 外呼系統(tǒng)不彈窗 涪陵商都400電話開(kāi)通辦理

前言

本文主要介紹了關(guān)于linux c下log輸出代碼模板的相關(guān)內(nèi)容,分享出來(lái)供大家參考學(xué)習(xí),下面話不多說(shuō)了,來(lái)一起看看詳細(xì)的介紹吧

模板

模本分為兩個(gè)文件:log.c和log.h.

log.c

/** log.c **/
#include <unistd.h>
#include "log.h"

// log文件路徑
#define filepath "./ps_com_log.log"
 
//設(shè)定時(shí)間
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];

 //使用追加方式打開(kāi)文件
 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.            
}

log.h

#ifndef __LOG_H__
#define __LOG_H__
#include <stdio.h>
#include <string.h>
#include <time.h>
 

void LogWrite(char * logText,char *string);

#endif /* __LOG_H__ */

測(cè)試文件

既然有了log輸出功能,下面就簡(jiǎn)單測(cè)試一下:

#include "stdio.h"
#include "log.h"
int main(int argv,char**argc){
 printf("test\n");
 LogWrite("INFO","Hello World!");
 LogWrite("error","H.e.l.l.o W.o.r.l.d!");
 LogWrite("mint","H e l l o W o r l d!");
 LogWrite("iout","Hallo World!");

 return 0;
}

以上代碼很簡(jiǎn)單,不在過(guò)多解釋。

運(yùn)行結(jié)果:

*****[pid=15971]:[2018-12-05 14:24:21]******[INFO]*****:
Hello World!
*****[pid=15971]:[2018-12-05 14:24:21]******[error]*****:
H.e.l.l.o W.o.r.l.d!
*****[pid=15971]:[2018-12-05 14:24:21]******[mint]*****:
H e l l o W o r l d!
*****[pid=15971]:[2018-12-05 14:24:21]******[iout]*****:
Hallo World!

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

標(biāo)簽:巴中 孝感 綏化 南充 福州 蕪湖 撫順 晉城

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《linux c下log輸出代碼模板示例代碼》,本文關(guān)鍵詞  linux,下,log,輸出,代碼,模板,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《linux c下log輸出代碼模板示例代碼》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于linux c下log輸出代碼模板示例代碼的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章