我们把微小的服务发布到docker里,然后实现docker service启动它,保证了服务的高可用性,然后把服务产生的日志输出到fluentd,由它进行过滤和转发,存储到elasticsearch里,最后由kibana进行查询与分析,整个过程都是异步进行,不会阻塞主线程,你只需要把日志输出的控制台即可!Console.WriteLine!
.netcore在docker里产生日志的过程如下:
我们在生产docker服务时需要可以使用下面代码实现上面的日志输出的过程
docker service create \ --name "$SERVICE_NAME" \ --hostname "{{.Node.ID}}-{{.Service.Name}}" \ #配置的是容器的主机名称 --network pilipa-network \ --network pilipa-mysql-network \ --network pilipa-elk-network \ --mode global \ --log-driver=fluentd \ --log-opt=fluentd-address=192.168.1.65:24224 \ --log-opt=tag=lind.{{.Name}}
通过本讲内容我们知道了,如何在docker service上将控制台日志输出到fluentd上,这个在日志收集场合下是非常必要的!
感谢各位的阅读!