热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

基于日志处理的ElasticSearch的学(gen)习(feng)

最近学了点solr,然后有听说了ElasticSearch,就想着也学一下ElasticSearch,然后看见了ElasticSearch用于日志的收集的分析,这里就来学习一下。百度一下Elast

最近学了点solr,然后有听说了ElasticSearch,就想着也学一下ElasticSearch,然后看见了ElasticSearch用于日志的收集的分析,这里就来学习一下。

百度一下ElasticSearch 日志这个关键词组,会出现一下的搜索结果:

  1. ELK(ElasticSearch, Logstash, Kibana)搭建实时日志分析平台
  2. Flume+Elasticsearch搭建实时日志分析系统
  3. 基于 Kafka 和 ElasticSearch,LinkedIn是如何构建实时日志分析系统的?
  4. 用Kibana和logstash快速搭建实时日志查询、收集与分析系统
  5. 开源实时日志分析ELK平台部署
  6. 用ElasticSearch存储日志
  7. 使用Elasticsearch + Logstash + Kibana搭建日志集中分析平台实践
  8. Logstash+ElasticSearch+Kibana4日志分析系统安装详解
  9. elasticsearch logstash kibana日志分析监控套件部署使用
  10. 开源分布式搜索平台ELK(Elasticsearch+Logstash+Kibana)入门学习资源索引

就直接从博客开始学习,看下别人是怎么用这玩意儿的。

之前处理日志的有Log4j+Kafka,然后又出来了一个叫ELK的,也就是ElasticSearch,Logstash和Kibana的结合。

日志主要包括系统日志、应用程序日志和安全日志。平常用System.out.println的我忍不住捂脸,涉及到日志的处理少,主要是看控制台。但是其实日志的作用很大的:

系统运维和开发人员可以通过日志了解服务器软硬件信息、检查配置过程中的错误及错误发生的原因。经常分析日志可以了解服务器的负荷,性能安全性,从而及时采取措施纠正错误。

其实,日志还有一个作用啊,比如说你在处理数据的时候,由于某些原因,导致了和你预期冲突的事件发生,导致数据遗失,这时候还可以通过日志找回来,几乎是最后一种方法了。

日志是很重要的,但是不就是输出了“几行”信息么,需要花这么大力气去搜索和分析日志?其实这个不是别人问的,正是我啊!因为没接触过淘宝京东那么大的系统,也没有经历过在小一点的公司工作的经历,所以对日志的印象还停留在一个比较初级的阶段(我归结为环境陷阱,没有参考别的,这个是我自创的,表述的含义是:因为没经历过,所以认知和境界没达到)。

但是事实上,在稍具规模的系统中,日志都是分散在不同的设备当中(Thinking about that you start up a five tomcats cluster,这他妈就有五个地方出日志,不要信我,我猜的)。再拓展一下,假如你要管理数十台乃至上百台的服务器,除了问题,你还得一台一台地去找,这得多麻(要)烦(命)啊。

问题一:我们要对日志的管理集中化

此外,当日志进行集中化处理之后就是查找分析,linux玩的很溜的你说,尼玛,这不简单,linux那么多好用的命令,譬如三贱客,哦不,三剑客grep,sed和awk,随你用啊。你说啥,不会用?滚一边玩蛋去(某明经常搞这句,反正别人看不到)。呵呵呵,突然来一个10G的PV(就是pageview,经常看见PV这个简写,以为有多高大上)的日志,来来来(此处应有MMP)看你的命令用的多熟!其实说了这么多要引出的就是,以前的方法已经玩不溜的(怕玩的溜的打我的脸),我们要有新工具了。

问题二:要有高效的工具完成日志的:统计、检索和排序

当,当,当,那么是“当,当,当”呢,就是今天要学习的ELK。

下面的介绍是借(潮)鉴(汐)的:

Elasticsearch是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。

Logstash是一个完全开源的工具,他可以对你的日志进行收集、过滤,并将其存储供以后使用(如,搜索)。

Kibana 也是一个开源和免费的工具,它(Kibana)可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助您汇总、分析和搜索重要数据日志。

来丰富一下词汇量:

  1. elastic:弹性的,可伸缩的,灵活的
  2. stash:隐(贮)藏物; (旧) 藏身处
  3. Kibana:野蛮人(来自google翻译的)

Logstash和ElasticSearch我觉得都还好理解,Logstash就像一个漏斗一样收集来自不同地方放的日志,ElasticSearch刚好可以来对日志进行检索,但是Kibana(基巴拉,我自己翻译的,这个锅就不给google了,想歪了的自己敲100遍hello world)是来干哈的?

这个图画得比较清晰,也很好理解,原图在这儿。
P. S. 我知道盗图可耻,但是画图真的费时间
enter image description here

如图:Logstash收集AppServer产生的Log,并存放到ElasticSearch集群中,而Kibana则从ES集群中查询数据生成图表,再返回给Browser。

我觉得这个架构看上去还挺简单的,继续看吧。

ELK平台搭建
系统环境
System: CentOS 版本暂定
ElasticSearch: 2.1.0
Logstash: 2.1.1
Kibana: 4.3.0
Java: openjdk version 版本暂定

注:由于Logstash的运行依赖于Java环境, 而Logstash 1.5以上版本不低于java 1.7,因此推荐使用最新版本的Java。因为我们只需要Java的运行环境,所以可以只安装JRE,不过这里我依然使用JDK,请自行搜索安装。

啥时候给整出了一套意见部署安装的脚本再PO上来,我表示干这种事还挺有趣。

原文地址:

ELK(ElasticSearch, Logstash, Kibana)搭建实时日志分析平台

P. S. 字放大一点,免得被人说~


推荐阅读
  • 本文讨论了如何在不使用SearchBar display controller的情况下,单独使用SearchBar并捕获其textChange事件。作者介绍了实际状况,即左侧SliderMenu中的SearchBar需要在主页TableView中显示搜索结果。然后,作者提供了解决方案和步骤,帮助读者实现这一功能。 ... [详细]
  • 摘要1:ElasticSearch比较两个时间的大小_gaojie_csdn的博客-CSDN博客_es时间比较摘要2:zlasticsearch脚本教 ... [详细]
  • ElasticSerach初探第一篇认识ES+环境搭建+简单MySQL数据同步+SpringBoot整合ES
    一、认识ElasticSearch是一个基于Lucene的开源搜索引擎,通过简单的RESTfulAPI来隐藏Lucene的复杂性。全文搜索,分析系统&# ... [详细]
  • 本文介绍了在无法联网的情况下,通过下载rpm包离线安装zip和unzip的方法。详细介绍了如何搜索并下载合适的rpm包,以及如何使用rpm命令进行安装。 ... [详细]
  • (九)Docker常用安装
    一、总体步骤1、搜索镜像2、拉取镜像3、查看镜像4、启动镜像5、停止镜像6、移除镜像二、安装tomcat1、dockerhub上面查找tomcat镜像 dockersearchto ... [详细]
  • 一份来自清华的数据分析笔记,请查收!
    之前发过很多数据分析的文章,收到不少好评,但也有一些困惑:入门数据分析该学哪些知识点?该看哪些书?是从Pyth ... [详细]
  • 2.ElasticSearch练习索引 : sms-logs-index类型:sms-logs-type   数据导入部分PUTsms_logs_indexsms_logs_typ ... [详细]
  • 如何自行分析定位SAP BSP错误
    The“BSPtag”Imentionedintheblogtitlemeansforexamplethetagchtmlb:configCelleratorbelowwhichi ... [详细]
  • 本文详细介绍了Java中vector的使用方法和相关知识,包括vector类的功能、构造方法和使用注意事项。通过使用vector类,可以方便地实现动态数组的功能,并且可以随意插入不同类型的对象,进行查找、插入和删除操作。这篇文章对于需要频繁进行查找、插入和删除操作的情况下,使用vector类是一个很好的选择。 ... [详细]
  • 数字账号安全与数据资产问题的研究及解决方案
    本文研究了数字账号安全与数据资产问题,并提出了解决方案。近期,大量QQ账号被盗事件引起了广泛关注。欺诈者对数字账号的价值认识超过了账号主人,因此他们不断攻击和盗用账号。然而,平台和账号主人对账号安全问题的态度不正确,只有用户自身意识到问题的严重性并采取行动,才能推动平台优先解决这些问题。本文旨在提醒用户关注账号安全,并呼吁平台承担起更多的责任。令牌云团队对此进行了长期深入的研究,并提出了相应的解决方案。 ... [详细]
  • Oracle优化新常态的五大禁止及其性能隐患
    本文介绍了Oracle优化新常态中的五大禁止措施,包括禁止外键、禁止视图、禁止触发器、禁止存储过程和禁止JOB,并分析了这些禁止措施可能带来的性能隐患。文章还讨论了这些禁止措施在C/S架构和B/S架构中的不同应用情况,并提出了解决方案。 ... [详细]
  • 本文介绍了某点评网的搜索策略,包括名称和地址的匹配策略,模糊匹配的方法以及不同口音和拼音的近似发音。同时提供了一些例子来说明这些策略的应用。 ... [详细]
  • 程序员如何选择机械键盘轴体?红轴和茶轴对比
    本文介绍了程序员如何选择机械键盘轴体,特别是红轴和茶轴的对比。同时还介绍了U盘安装Linux镜像的步骤,以及在Linux系统中安装软件的命令行操作。此外,还介绍了nodejs和npm的安装方法,以及在VSCode中安装和配置常用插件的方法。最后,还介绍了如何在GitHub上配置SSH密钥和git的基本配置。 ... [详细]
  • BashShell作为Linux的指定合作伙伴我们已经再熟悉不过了,使用Bash可以快速编写简单的脚本方便我们的日常比如善用vim,awk和sed三剑客,也可以创建十分复杂的逻辑, ... [详细]
  • 用聪明的方式学习 Vim
    来自量子位Vim难学难用?但事实是,它依旧受许多程序员的欢迎。或许,只是你的「打开方式」不对。最近,在GitHub上便出现了 ... [详细]
author-avatar
斗就斗D_994
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有