博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Docker centos 安装syslog
阅读量:4467 次
发布时间:2019-06-08

本文共 2417 字,大约阅读时间需要 8 分钟。

  在通常的Linux服务器中,有一些服务本身没有日志,只能通过 tail -f /var/log/messages来查看其运行日志,比如nrpe server。但是,如果想在docker容器中实现这个功能就需要费点事了。具体步骤如下:

  1、安装rsyslog

# yum -y install rsyslog

 

  2、启动syslog服务

# rsyslogd

  3、测试是否在messages中生成日志

# logger "Hello World"

  结果发现,在messages中只有一下一行:"Aug  1 11:31:37 f2570fed2149 rsyslogd: [origin software="rsyslogd" swVersion="7.4.7" x-pid="73" x-info="http://www.rsyslog.com"] start",故可认定其未工作。原因是:“The problem was that in RHEL7 and Fedora we now use journald, which listens on /dev/log for incoming messages. In RHEL7 and Fedora, rsyslog actually reads messages from the journal via its API by default.But not all docker containers run systemd and journald. (Most don’t). In order to get the rsyslogd to work the way the user wanted, he would have to modify the configuration file, /etc/rsyslog.conf”。

  解决办法如下:

  1、修改syslog配置——  # vi /etc/rsyslog.conf

1、注释掉 $ModLoad imjournal 2、设置 $OmitLocalLogging 为 off3、注释掉 $IMJournalStateFile imjournal.state

 

  2、提交容器至镜像,重新创建容器

[root@localhost home]# docker commit f2570fed2149 centos_with_syslog:v1.0830e298b4c103f70154ec9c8ceae44ec4602ed22063dae8e13a3f9aff4c3260a[root@localhost home]# docker run -d -p 223:222 -v /dev/log:/dev/log -ti centos_with_syslog:v1.0 /run.shdc2eb83e80ced6f553eb1dd7032489d37b4d934a9126f61dfbd4d6a2243e98f1

  3、测试验证

[root@localhost home]# docker exec -ti dc2eb83e80ced6f553eb1dd7032489d37b4d934a9126f61dfbd4d6a2243e98f1 /bin/bash[root@dc2eb83e80ce /]# logger "hello everyone"[root@dc2eb83e80ce /]# exitexit[root@localhost home]# tail -f /var/log/messages   (注意实在宿主机上的messages文件中查看日志)Aug  1 19:57:51 localhost docker: time="2015-08-01T19:57:51+08:00" level=info msg="-job log(exec_start: /bin/bash , dc2eb83e80ced6f553eb1dd7032489d37b4d934a9126f61dfbd4d6a2243e98f1, centos_with_syslog:v1.0) = OK (0)"Aug  1 19:57:51 localhost docker: time="2015-08-01T19:57:51+08:00" level=info msg="POST /v1.18/exec/9ae97d0666bf5abcd8d95eb87d10c5d013a0f006c2cb1adc7ff8f7baaacf14fc/resize?h=37&w=191"Aug  1 19:57:51 localhost docker: time="2015-08-01T19:57:51+08:00" level=info msg="+job execResize(9ae97d0666bf5abcd8d95eb87d10c5d013a0f006c2cb1adc7ff8f7baaacf14fc, 37, 191)"Aug  1 19:57:51 localhost docker: time="2015-08-01T19:57:51+08:00" level=info msg="-job execResize(9ae97d0666bf5abcd8d95eb87d10c5d013a0f006c2cb1adc7ff8f7baaacf14fc, 37, 191) = OK (0)"Aug  1 19:58:09 localhost logger: hello everyone

 

转载于:https://www.cnblogs.com/zhenyuyaodidiao/p/4692611.html

你可能感兴趣的文章
第1周小组博客作业--1703班06组
查看>>
vue项目中icon图标的完美引入
查看>>
C语言指针
查看>>
Java的安装
查看>>
0920 JSON数据 蓝懿
查看>>
Azure Cosmos DB 使用费用参考
查看>>
【嵌入式开发】写入开发板Linux系统-模型S3C6410
查看>>
C# 子线程与主线程通讯方法一
查看>>
006——修改tomacat的编码
查看>>
《C程序设计语言》笔记 (八) UNIX系统接口
查看>>
git常用命令
查看>>
Android必知必会-获取视频文件的截图、缩略图
查看>>
(转)理解Bitblt、StretchBlt与SetDIBitsToDevice、StretchDibits
查看>>
python之路-基础篇-第七周
查看>>
高性能队列Disruptor系列2--浅析Disruptor
查看>>
ViurtualBox配置虚拟机Linux的网络环境
查看>>
VLC 媒体播放器
查看>>
勿忘国耻2018/09/18
查看>>
Jenkins部署码云SpringBoot项目
查看>>
多标签分类(multi-label classification)综述
查看>>