Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Logging 通过配置日志驱动程序将Docker容器日志发送到ELK Stack-简单方法_Logging_Docker_Syslog_Elastic Stack_Logstash Configuration - Fatal编程技术网

Logging 通过配置日志驱动程序将Docker容器日志发送到ELK Stack-简单方法

Logging 通过配置日志驱动程序将Docker容器日志发送到ELK Stack-简单方法,logging,docker,syslog,elastic-stack,logstash-configuration,Logging,Docker,Syslog,Elastic Stack,Logstash Configuration,我通常将应用程序作为docker容器运行,因为它具有很高的灵活性和可用性。是否有办法将容器日志放入我的日志存储服务器 Docker包含多种日志机制,可帮助您通过日志驱动程序从运行的容器和服务中获取信息 每个Docker守护进程都有一个默认的日志记录驱动程序,每个容器都使用该驱动程序,除非您将其配置为使用不同的日志记录驱动程序 您可以通过如下配置Logstash并通过将默认日志驱动程序更改为syslog来运行要查看其日志的容器来获取容器日志 #logstash.conf input { tc

我通常将应用程序作为docker容器运行,因为它具有很高的灵活性和可用性。是否有办法将容器日志放入我的日志存储服务器

Docker包含多种日志机制,可帮助您通过日志驱动程序从运行的容器和服务中获取信息

每个Docker守护进程都有一个默认的日志记录驱动程序,每个容器都使用该驱动程序,除非您将其配置为使用不同的日志记录驱动程序

您可以通过如下配置Logstash并通过将默认日志驱动程序更改为syslog来运行要查看其日志的容器来获取容器日志

#logstash.conf

input {
  tcp {
    port => 5000
  }
}

output {
  stdout {}
}
下面两个命令将在logstash中显示hello world容器日志

docker run -it --rm --name=logstash -p 5000:5000 -f /path/to/logstash.conf

docker run --log-driver=syslog --log-opt syslog-address=tcp://<logstash-system-ip>:5000 hello-world
docker run-it--rm--name=logstash-p 5000:5000-f/path/to/logstash.conf
docker run--log driver=syslog--log opt syslog address=tcp://:5000 hello world
Logstash的输出甚至可以发送到elasticsearch,只需将输出部分配置为

  elasticsearch {

    hosts => ["<elastic-system-ip>:9200"]

  }
elasticsearch{
主机=>[“:9200”]
}
拜访