C 프로그램에서 로그 파일을 작성하고 싶습니다. 매일 tempstamp와 함께 새로운 로그 파일을 추가하기를 원합니다.C에서 로그 파일을 작성하는 방법
아이디어가 있습니까, 아니면 도서관이 있습니까?
C 프로그램에서 로그 파일을 작성하고 싶습니다. 매일 tempstamp와 함께 새로운 로그 파일을 추가하기를 원합니다.C에서 로그 파일을 작성하는 방법
아이디어가 있습니까, 아니면 도서관이 있습니까?
프로그램 출력을 로그 파일에 기록 하시겠습니까? 이것은 큰 응용 프로그램을 작성하고 소프트웨어의 정확한 작동을 알기 위해 로그를 분석해야 할 때 수행됩니다. 이 경우 출력을 로그 파일로 리디렉션하고 나중에 읽고 분석 할 수 있습니다. 표준 로깅 라이브러리를 사용하지 않으려는 경우 데몬을 작성하여 출력을 캡처하고 로그 파일을 만들어야 할 수 있습니다.
파일 로그 유틸리티를 만들려고한다고 가정합니다.
시도해보십시오. log4cpp 다음은 C로 작성된 간단한 로그 파일 작성입니다.
/*Write your won logfile in c.*/
#include <stdio.h>
#define LOG(X, Y) fprintf (fp, #X ": Time:%s, File:%s(%d) " #Y "\n", __TIMESTAMP__, __FILE__, __LINE__)
int main(int args, char **argv)
{
FILE *fp= fopen("logfile.txt", "w"); //("c:\\temp\\logfile.txt")
LOG(INFO, "File open success.");
LOG(WARN, "File path missing.");
LOG(ERROR, "File close faild.");
fclose(fp);
return 0;
}
'fprintf()'를 사용하면 멀티 스레드 프로세스에 대해 안전하지 못하게됩니다. –
@AndrewHenle 감사합니다! +1 완벽하게 느껴졌습니다! 안전하다는 것을 배우게됩니다. 뭐라구? – Kulamani
"로그 파일"이란 무엇입니까? 그냥 파일 일 뿐이지? newlogfile을 추가하고 싶습니까? fopen에서 append 플래그를 사용하십시오 ...! 또는 두 타임 스탬프에 모두 추가해야한다는 의미입니까? (타임 스탬프 == tempstamp?) ... – ShinTakezou