关于” 记一次logback传输日志到logstash根据自定义设置动态创建ElasticSearch索引” 这篇博客相关的优化采坑记录

内容预览:

    之前写过一篇博客是关于记录日志的简单方式的   主要就是  应用->redis->logstash->elasticsearch 整个流程的配置方法和过程的

    https://www.cnblogs.com/zhyg/p/6994314.html

    记一次logback传输日志到logstash根据自定义设置动态创建ElasticSearch索引

    虽然我们部分线上应用使用 redis单节点 logstash 也是使用单节点基本稳定流畅并且几乎不丢日志(单节点问题就不说了肯定有单点故障之后在分析)

    上面的两个单节点 一天承受1-3亿条日志是没有问题的前提是并发量不要太大

    可是 可是  tmd我今天就遇到了

    主要分享一下解决方案

    本方案同样是两个单节点

    先说下今天发生的北京情况

    我们的业务服务有些挤压这个时候我们把处理节点线程加多 来处理更大的量可怕的是记录日志的并发量也随之加大导致单节点redis承受不了

    我最先想到的方案是重启删除aof日志 让redis不在加载日志话存日志节省内存空间,但是试了几次之后不行 并发量导致写日志实在太大一会又受不了

    然后在想就是 限制内存 但是同样不能满足 因为redis 向下传输的时候如果下游不能接受 会缓存到aof日志里面同样会吃满内存加载aof日志的

    随后就限制内存取消redis写aof日志然后重启redis ,这样果然可以 没问题虽然有可能丢失一些日志但是日志我是允许一部分丢失的

    优化后的redis占用内存明显下降

    之前内存可是沾满服务器的内存的 (redis我是用docker部署的)

    但是随之而来的是另外一个问题

    虽然吧redis压力降下来了但是 logstash压力上来了

    logstash直接给我报内存溢出

    我去 我一看 logstash才给了1G内存  

    没办法 调整一下logstash内存

     

     调整 jvm.options 文件内存为2g

    现在运行平稳 非常快

    但是出问题就会丢些相关日志

    希望大家出现类似现象有相关的处理思路

     

    以上就是:关于” 记一次logback传输日志到logstash根据自定义设置动态创建ElasticSearch索引” 这篇博客相关的优化采坑记录 的全部内容。

    本站部分内容来源于互联网和用户投稿,如有侵权请联系我们删除,谢谢。
    Email:[email protected]


    0 条回复 A 作者 M 管理员
      所有的伟大,都源于一个勇敢的开始!
    欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论