zoukankan      html  css  js  c++  java
  • ELK+MQ+logback实现分布式日志收集

    1前言

    随着集群的机器越来越多,在测试或者生产环境中,我们排查日志显得尤为苦难,只能一台一台机器去查找,本文主要讲解ELK+rabbitmq实现分布式日志收集的方案

    2介绍

    ELK由Elasticsearch+Logstash+kibana三部分组成,一般日志收集MQ都习惯采用Kafka,我这边就用rabbitMQ

    3原理

    tomcat服务器中的日志发布投入到MQ消息队列中,logstash消费MQ消息队列中的数据,放到ES服务器中,ES存储最终的日志信息,kibana负责展示ES存储服务中数据信息

    4问题

    我们都知道可以用logstash监听每一个服务器的日志文件,然后把消息写入到Es服务器中,但是我们可以通过MQ只监听MQ消息队列即可收集,MQ担任的角色一个是因为这个,另外就是,我们日志都是通过log.error,log.debug来输出的,那么如何集成Logback和MQ整合是一个问题,先来看日志配置文件,配置好 MQ地址、port端口、virtual虚拟机exchangetype消息模式,exchangename交换机名称routingkey;

    配置好这些信息就基本整合了,只要有log就会写入到MQ

    接下来是logstash消费日志信息并写入到ES库中,需要在配置文件中,增加input,output的消息来源,消息输出,input就是MQ,output就是ES服务器

    5kibana效果

    搜索日志关键字,可以动态看到日志信息,这样不管哪个服务器的日志,都被我们ES服务器存储起来了 ,简单方便,查日志省事。

  • 相关阅读:
    python编程学习进度七
    python编程学习进度六
    SOA——2020.5.15
    代码大全001/
    Refined Architecture阶段——细化架构
    架构即未来003(摘自网络)
    我对外包公司的小小看法
    架构即未来002
    每日日报
    架构即未来阅读笔记001
  • 原文地址:https://www.cnblogs.com/wangnengwu/p/13920973.html
Copyright © 2011-2022 走看看