Linux系统会把各种信息写入日志
比如普通用户申请超级用户的权限,还有一些错误或者警告信息等。
这些信息被记录在日志中,一般在/var/log中
(1)将信息写入到日志中
void syslog(int priority, const char* message, argument...);
priority 代表信息的重要性;这个参数会把信息message写入到不同的位置
priority取值可以查看手册解释
message是需要写入日志的信息
- #include
- #include
- #include
- int main()
- {
- FILE* fp = fopen("test.dat","r");
- if(!fp)
- {
- syslog(LOG_ERR|LOG_USER, "file error:%m");
- return 0;
- }
- return 0;
- }
这个程序没有输出,输出到了日志文件中。
(2)改变日志的记录行为
日志的记录有自己的格式还有方式,想要让日志的记录按照自己的想法改变,可以用下面一组函数
void closelog();
void openlog(const char* ident, int logopt, int facility);
int setlogmask(int maskpri);
openlog函数会打开日志文件,将字符串ident写在日志信息前,这相当于一个标志,让你知道这条日志信息。
logopt是日志的行为配置,可以查看文档选择,比如其中一个选择是LOG_PID,表示要把PID日志信息当中
facility是日志的优先级
setlogmask函数会修改日志的权限