进程学习10--syslog记录调试信息
来源:互联网 发布:php怎么找工作 编辑:程序博客网 时间:2024/06/05 14:37
概述
syslog的守护进程用于解决守护进程的日志记录问题,而日志信息保存的位置和记录的信息级别是在syslogd守护进程的配置文件中设定的。守护进程日志主要涉及3个函数,分别是openlog、syslog和closelog函数。
一般log信息都是在 /var/log/messages文件中存储,ubuntu中是在 /var/log/syslog文件中
正文
函数openlog
函数原型
void openlog(const char *ident, int option, int facility);
参数
调用openlog是可选择的。如果不调用openlog,则在第一次调用syslog时,自动调用openlog。
参数ident常用来表示信息来源,可以自定义设置
参数option用于指定openlog函数和接下来调用的syslog函数的控制标志。
LOG_CONS 如果将信息发送给syslogd守护进程时发生错误,直接将相关信息输出到终端
LOG_NDELAY 立即打开与系统日志的连接(通常情况下,只有在产生第一条日志信息的情况下才会打开与日志系统的连接)
LOG_NOWAIT 在记录日志信息时,不等待可能的子进程的创建
LOG_ODELAY 类似于LOG_NDELAY参数,与系统日志的连接只有在syslog函数调用时才会创建
LOG_PERROR 在将信息写入日志的同时,将信息发送到标准错误输出(POSIX.1-2001不支持该参数)
LOG_PID 每条日志信息中都包括进程号
参数facility,这个要与syslogd守护进程的配置文件对应,日志信息会写入syslog.conf文件指定的位置。
返回值
无
函数syslog
函数原型
void syslog(int priority, const char *format, …);
参数
参数priority表示消息的级别
参数format为消息的格式,参考printf函数
返回值
无
函数closelog
函数原型
void closelog(void);
参数
调用closelog是可选择的,它只是关闭被用于与syslog守护进程通信的描述符。
参数:无
返回值
无
测试代码
int main(void){ printf("getpid = %d\r\n",getpid()); openlog("a.out",LOG_PID|LOG_CONS,LOG_USER); syslog(LOG_INFO,"syslog text1"); syslog(LOG_INFO,"syslog text2"); syslog(LOG_INFO,"syslog text3"); closelog(); return 0;}/****************运行结果**************** getpid = 12718注释:一般log信息都是在 /var/log/messages文件中存储ubuntu中是在 /var/log/syslog文件中May 31 20:24:24 ubuntu a.out[12718]: syslog text1May 31 20:24:24 ubuntu a.out[12718]: syslog text2May 31 20:24:24 ubuntu a.out[12718]: syslog text3***********************************/
参考
http://blog.csdn.net/bingqingsuimeng/article/details/8741389
- 进程学习10--syslog记录调试信息
- 使用syslog来记录调试信息
- syslog 系统日志服务 --记录daemon出错信息
- 进程信息和调试
- Syslog学习
- syslog 中的信息
- 用signal实现调试信息的动态控制——syslog和signal
- 守护进程使用syslog函数打印信息(基于ARM-Linux)
- c语言库函数syslog--将信息记录至系统日志文件
- 用Iptables -j LOG选项控制syslog信息, 并用rsyslog来记录远程日志
- 当进程启动时,如果syslog还未生效,此时无法通过syslog调试,可以通过system写文件记log进行调试。
- PHP使用syslog进行调试
- log4j配置syslog记录日志
- 用syslog记录UNIX日志
- syslog-ng安装测试记录
- syslog-ng安装测试记录
- python之syslog学习
- syslog 格式学习
- PHP如何查询MySQL数据页面并输出内容到页面,并另存为CSV或EXCEL文件
- https协议和http的区别。
- 【indeed】C
- DOM
- 搜索 F
- 进程学习10--syslog记录调试信息
- 2017年5月31日网站日志调研
- 安装beautifulsoup4 时出现 ImportError: cannot import name 'beautifulsoup'
- bzoj 1477 青蛙的约会 拓展欧几里得(详细解析)
- 用户代理与IP代理爬取糗事百科
- [bzoj4928][SDOI省队集训2017]dierti
- 解决继承SwitchPreference后丢失动画的问题
- 【编程题】调整红白蓝三色
- 考研数学笔记 61~65