zoukankan      html  css  js  c++  java
  • docker容器日志收集方案(方案四,目前使用的方案)

    先看数据流图,然后一一给大家解释

    这个方案是将日志直接从应用代码中将日志输出到redis中(注意,是应用直接连接redis进行日志输出),redis充当一个缓存中间件有一定的缓存能力,不过有限,因为使用的是内存,内存使用完了就会出现阻塞失败等现象从而导致日志丢失。

    接下来logstash从redis中读取日志然后批量推送ES,logstash有一定的堆积能力,可以控制线程以及批量推送ES日志数量,不过不会像filebeat有感知压力的功能。

    微服务应用对redis的链接为弱引用,成功失败都无所谓。

    这个方案中中间任意环节出问题都会导致日志输出问题。

    而且可能会造成redis-logstash-ES整个链路瘫痪

    因为redis和logstash堆积能力实在有限,如果将中间链路环节使用其他中间件会好的多。

    这个方案的优点就是在logback.xml文件配置好之后什么都不用管,直接去查日志就可以了,性能跟得上redis2GB内存1天处理1.5亿条日志没问题。

  • 相关阅读:
    Python实例1-Collatz 序列
    Git 教程
    python 算法基础
    认识 flask框架 及 介绍
    python 虚拟环境
    Numpy基本操作学习
    Jupyter Notebook 快捷键指南
    Gallery——Matplotlib
    list.pop()函数操作头部与尾部的计时试验
    list 与 dict 的in操作比较试验
  • 原文地址:https://www.cnblogs.com/zhyg/p/10006739.html
Copyright © 2011-2022 走看看