centos7下安装docker(18docker日志---docker logs)

在微服务架构中,由于容器的数量众多以及快速变化的特性使得记录日志和监控变得越来越重要,考虑到容器的短暂和不固定周期,当我们需要排查问题的时候容器可能不在了。因此,一套集中式的日志管理系统是生产环境中不可或缺的组成部分

docker logs

docker 自带的日志功能

对于一个运行的容器,docker 会将日志发送到容器的标准输出(STDOUT)和标准错误设备(STDERR),stdout和stderr实际上就是容器的控制台终端

例如:

当我们用docker run -p 80:80 httpd运行容器的时候,日志会直接打印在当前的终端

centos7下安装docker(18docker日志---docker logs)

当我们加-d的参数以后台方式运行的时候,我们就看不到日志的输出了

centos7下安装docker(18docker日志---docker logs)

这种情况下要查看日志有两种方法:

1.docker attach到该容器

2.用docker logs命令查看日志

docker attach

centos7下安装docker(18docker日志---docker logs)

当我们attch到一个容器的时候没有看到任何输出,原因是没有产生新的日志

当容器被访问的时候会产生新的日志

attach在实际使用中并不是很方便,这个在我们之前学习进入容器的命令的时候讨论过:

1.只能看到attach之后的日志,之前的日志不可见

2.退出attach非常麻烦,要么就是重新开一个终端,要么就是ctrl+c,但是这种方法会将容器杀死

docker logs

centos7下安装docker(18docker日志---docker logs)

docker logs能够打印出自容器启动以来完整的日志,并且-f参数可以继续持续打印,效果和tail -f一样

上一篇:BZOJ-1012[JSOI2008]最大数maxnumber 线段树区间最值


下一篇:线程GCD