当前位置:  技术问答>linux和unix

日志文件的建立和书写?

    来源: 互联网  发布时间:2015-01-20

    本文导语:  小弟正在做一个文件传输程序,需要在客户端和服务器端实时记录日志,谁有类似的日志文件的建立和写函数,Unix C?有相关资料也可。分数多多。 | 我这是经典的C++日志记录程序 你可以转...

小弟正在做一个文件传输程序,需要在客户端和服务器端实时记录日志,谁有类似的日志文件的建立和写函数,Unix C?有相关资料也可。分数多多。

|
我这是经典的C++日志记录程序
你可以转换成c program 
不过头文件你自己去改吧

#include 
#include 
#include 
#include 
#include 
#include 
#include 
#define TEST_MSG_M




//构造函数
MLogFile::MLogFile( char *filename)
{
MLogFile( filename, 1);
}

MLogFile::MLogFile( char *filename, int flag)
{
file_ready = 0;
if (!filename) filename = "LOG.TXT";
FileName = new char[ strlen( filename) + 1];
strcpy( FileName, filename);

CreateLogFile();
}

MLogFile::MLogFile( char *filename, int type, int flag)
{
file_ready = 0;
if (!filename) filename = "LOG.TXT";
FileName = new char[ strlen( filename) + 1];
strcpy( FileName, filename);

FileType = FILETYPE_UNLIMITED;
if (type == FILETYPE_UNLIMITED)
{
CreateLogFile();
}
else
{
FileType = FILETYPE_LIMITED;
struct stat sbuf;
if( findfirst( FileName, &sbuf) == 0
&& (sbuf.st_mode & S_IFMT) == S_IFREG )
{
if (sbuf.st_size > LOGFILE_MAXSIZE)
{
CreateLogFile();
}
else file_ready = 1;
}
else CreateLogFile();
}
}

MLogFile::~MLogFile()
{
delete[] FileName;
}


int MLogFile::Write( char *fmtstr, ...)
{
int rcode = 0;

if(!LogSwitch()) return rcode;

FILE *File;
if( file_ready)
{
va_list argptr;
va_start( argptr, fmtstr);
vsprintf( buffer, fmtstr, argptr);
va_end( argptr);
if( File = fopen( FileName, "at"))
{
if( fwrite( buffer, sizeof( buffer[0]), strlen( buffer), File) 

    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • python异常信息堆栈输出到日志文件
  • 请问程序的日志重定向到别日志文件,系统会对该日志文件的大小作限制么
  • ubuntu查看系统日志及相关文件介绍
  • solaris的系统日志文件叫什么名字?在什么目录下??如何打开/关闭系统日志????
  • mysql日志文件在哪 如何修改MySQL日志文件位置
  • java自定义日志输出文件(log4j日志文件输出多个自定义日志文件)
  • syslog日志文件转存的问题
  • 日志文件跟踪工具 LogMX
  • 如何减小Sql2005日志文件大小
  • 请教个问题,动态打印日志文件
  • apache日志文件总是空的,重起apache也没用。
  • SQL Server 2008无日志文件如何使用MDF文件附加数据库
  • 修改数据库文件及日志文件增量的sql语句
  • select与写日志文件的冲突
  • 请教 一个shell问题 如何通过shell获得一个日志文件中的增量部分
  • linux中WEB服务器的日志文件
  • 请问,怎样把Tomcat里的日志文件加到JBuilder里
  • linux logrotate使用-自定义日志文件名
  • 日志文件查看器 KSystemLog
  • 日志文件分析工具 Free-SA
  • 日志文件查看器 System Log Viewer
  • 不同版本MSSQL清除日志方法介绍
  • linux下系统日志 操作日志 告警日志怎么存储啊?
  • Docker支持更深入的容器日志分析
  • 网络技术 iis7站长之家
  • docker源码分析之容器日志处理与log-driver实现
  • 用shell如何获取一个日志中某个时间段的日志
  • c#实现把异常写入日志示例(异常日志)
  • sql server日志收缩脚本及解决日志增长过快的问题
  • 我通过C程序执行tail -f printlog(printlog为日志名),想要动态获取里面新进来的日志,怎么办?
  • 多进程输出日志,用什么方式保存日志效率比较高?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3