作家
登录

浅谈Linux下的syslog守护进程

作者: 来源: 2017-04-12 10:09:40 阅读 我要评论

常悠揭捉?项: 
  •                LOG_CONS: 
  •                LOG_PID:打印的每一条日记信息包含当前过程的PID 
  •           # facil-ity常悠揭捉?项: 
  •                LOG_USER:打印的每一条日记信息包含当前用户的等级信息 
  •      void syslog(int priority, const char *format, ...); 
  •           # format:输出日记信息的参数列表,用法类同printf 
  •      void closelog(void);  
  • 1. /var/log/lastlog : 记录每个应用者比来签入体系的时光, 是以当应用者签入时, 就会显示其前次签入的时光, 您应当留意一下这个时光, 若不是您前次签入的时光, 表示您的┞肥号可能被人盗用了. 此档可用 /usr/bin/lastlog 指令攫取.

    测试用例:

    1. #include <stdio.h> 
    2. #include <syslog.h> 
    3. int main(int argc,char* argv[]) 
    4.     openlog(argv[0],LOG_CONS | LOG_PID, LOG_USER); 
    5.     int count = 0; 
    6.     while(count < 5) 
    7.     { 
    8.         syslog(LOG_INFO, "%d, log info test ..."count); 
    9.         count++; 
    10.     } 
    11.     closelog(); 
    12.     return 0; 
    13.  

    为了同时测试设备文件,在syslog的设备文件中添加一行内容如下:

    1. user.* /var/log/0.1 # 该文件默认只能在/var/log下,放在其它目次下无效 

    重启rsyslog办事;

    履行原法度榜样,就可以在/var/log/看到0.log文件,打开文件,内容如下:

    简单的例子看到这里就够了,我看到网上很多人都在评论辩论若何应用syslog针对特定的某一过程输出日记文件,但都没有很好的解决筹划。尽管在设备文件中供给了local0~local7自定义办事,但也并不是全能的,很多情况下并不克不及真正实现我们的目标。

    这里我想说的是,Linux下的syslog,它出现的目标并不是为了供给用户每个过程的日记输出,syslog只是用来作为对于办事治理的┞符套机制,它针对的是一类办事,用来做日记办事器,实现半数个体系收集每日记的保护(对日记的保护,实际上就是半数个计算机群的保护)。同时,真正的工程中,并不会应用syslog作为全套的日记治理对象,在Linux下有供给了很多完全的日记库对象,比如log4cplus、zlog等。

    【编辑推荐】

    1. 如安在Linux中列出经由过程RPM或者DEB包安装的文件
    2. 若何安装Debian的非systemd复刻版本Devuan Linux
    3. Linux敕令行对象应用小贴士及技能(三)
    4. Linux加载ntfs和fat32分区
    5. bmon:Linux下一?强大年夜的收集带宽监督和调试对象
    【义务编辑:枯木 TEL:(010)68476606】

      推荐阅读

      2017值得一瞥的JavaScript相关技术趋势

    2017值得一瞥的JavaScript相干技巧趋势从属于笔者的Web 前端入门与工程实践,推荐浏览2016-我的前端之路:对象化与工程化获得更多关于2016年前端总结。本文重要内容翻译自,笔者对于每个条>>>详细阅读


    本文标题:浅谈Linux下的syslog守护进程

    地址:http://www.17bianji.com/lsqh/34732.html

    关键词: 探索发现

    乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

    网友点评
    自媒体专栏

    评论

    热度

    精彩导读
    栏目ID=71的表不存在(操作类型=0)