许多应用程序需要记录它们的活动。
/var/log/syslog 日志文件(与系统有关)
#include <syslog.h>
void openlog(const char *ident, int option,int facility);
void syslog(int priority, const char*format, ...);
void closelog(void);
int setlogmask(int mask);
代码:
#include <syslog.h>
#include <stdio.h>
#include <stdlib.h>
int main()
{
FILE *f;
f = fopen("nthe","r");
if(!f)
syslog(LOG_ERR|LOG_USER,"OPPS- %m\n");
exit(0);
}
输出(shell不显示,在/var/log/syslog文件中 路径随系统的不同而不同)
Nov 27 11:13:09 yaoyin-VirtualBox tt: OPPS- No such file or directory
时间 hostname 执行程序名
代码:
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <syslog.h>
intmain()
{
int logmask;
openlog("logmask",LOG_PID|LOG_CONS,LOG_USER);
syslog(LOG_INFO,"informativemessage, pid=%d",getpid());
syslog(LOG_DEBUG,"debugmessagae, should apear");
logmask=setlogmask(LOG_UPTO(LOG_NOTICE));
syslog(LOG_DEBUG,"debug message,should not appear");
exit(0);
}
输出(shell不显示,在/var/log/syslog文件中 路径随系统的不同而不同)
Nov 27 13:25:27 yaoyin-VirtualBoxlogmask[2657]: informative message, pid=2657
Nov 27 13:25:27 yaoyin-VirtualBoxlogmask[2657]: debug messagae, should apear