zoukankan      html  css  js  c++  java
  • 服务器日志收集方案

    背景:程序模块部署,每个模块都有自己的日志存放到本地,当需要进行排查问题的时候,可能需要到各个服务器上去下载日志,然后进行排查,费时。

    方案:使用ELK方案,①采用flume采集日志,然后将日志存入消息队列或直接在程序中使用logback连接kafka;②使用logstash从kafka中读取数据,进行一定的处理;③logstash处理数据后进入到ElasticSearch中;

    我们这边采用的开发框架基本都是基于springboot和springcloud等一些列的框架,我们部署的程序模块会越来越多,不想每一次部署模块的时候都去加flume相关配置进行采集日志,如果到新的服务器上部署的时候还得重新安装flume,我们使用框架中的日志框架采用logback,支持与ELK的集成方案。

    架构图参考地址:https://www.cnblogs.com/wangzhuxing/p/9665905.html

    Logback+kafka+ELK的搭建参考:https://www.jianshu.com/p/d1be3364f32d,里面有详细的搭建情况,采用的springcloud可以进行服务跟踪sleuth。

    引入logback进行日志记录,引入lombok使用@Log4j注解,引入logstash-logback-encoder进行日志输出格式化为json字符串输出,引入logback-kafka-appender与kafka集成。

  • 相关阅读:
    浅谈flume
    浅谈storm
    浅谈zookeeper
    IntelliJ IDEA 使用教程
    浅谈spark
    添加本地jar包到maven仓库
    eclipse通过maven进行打编译
    pom.xml中添加远程仓库
    maven编译错误maven-assembly-plugin:2.2-beta-5:assembly (default-cli) on project
    最长上升子序列
  • 原文地址:https://www.cnblogs.com/TheoryDance/p/13889106.html
Copyright © 2011-2022 走看看