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服务器存储起来了 ,简单方便,查日志省事。

  • 相关阅读:
    css实现垂直居中
    js验证输入框
    textarea统计字数
    ajax提交form表单
    JS中的正则表达式
    《遮蔽层的隐藏块》
    2016各大互联网公司前端面试题汇总
    JQ 添加节点和插入节点的方法总结
    [原]CentOS7部署osm2pgsql
    [原]CentOS7部署PostGis
  • 原文地址:https://www.cnblogs.com/wangnengwu/p/13920973.html
Copyright © 2011-2022 走看看