基于日志处理的ElasticSearch的学(gen)习(feng)
最近学了点solr,然后有听说了ElasticSearch,就想着也学一下ElasticSearch,然后看见了ElasticSearch用于日志的收集的分析,这里就来学习一下。
百度一下ElasticSearch 日志
这个关键词组,会出现一下的搜索结果:
- ELK(ElasticSearch, Logstash, Kibana)搭建实时日志分析平台
- Flume+Elasticsearch搭建实时日志分析系统
- 基于 Kafka 和 ElasticSearch,LinkedIn是如何构建实时日志分析系统的?
- 用Kibana和logstash快速搭建实时日志查询、收集与分析系统
- 开源实时日志分析ELK平台部署
- 用ElasticSearch存储日志
- 使用Elasticsearch + Logstash + Kibana搭建日志集中分析平台实践
- Logstash+ElasticSearch+Kibana4日志分析系统安装详解
- elasticsearch logstash kibana日志分析监控套件部署使用
- 开源分布式搜索平台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 界面,可以帮助您汇总、分析和搜索重要数据日志。
来丰富一下词汇量:
- elastic:弹性的,可伸缩的,灵活的
- stash:隐(贮)藏物; (旧) 藏身处
- Kibana:野蛮人(来自google翻译的)
Logstash和ElasticSearch我觉得都还好理解,Logstash就像一个漏斗一样收集来自不同地方放的日志,ElasticSearch刚好可以来对日志进行检索,但是Kibana(基巴拉,我自己翻译的,这个锅就不给google了,想歪了的自己敲100遍hello world)是来干哈的?
这个图画得比较清晰,也很好理解,原图在这儿。
P. S. 我知道盗图可耻,但是画图真的费时间
如图: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. 字放大一点,免得被人说~
基于日志处理的ElasticSearch的学(gen)习(feng)相关推荐
- sql server cdc 清理_基于CDC技术的ElasticSearch索引同步机制
概述 ElasticSearch作为一个基于Lucene的搜索引擎被广泛应用于各种应用系统,比如电商.新闻类.咨询类网站.在使用ElasticSearch开发应用的过程中,一个非常重要的过程是将数据导 ...
- MySQL5.6主从复制搭建基于日志(binlog)
什么是MySQL主从复制 简单来说,就是保证主SQL(Master)和从SQL(Slave)的数据是一致性的,向Master插入数据后,Slave会自动从Master把修改的数据同步过来(有一定的延迟 ...
- FileBeat + Pipeline 解析日志 保存至ElasticSearch(实战)
文章目录 FileBeat + Pipeline 解析日志 保存至ElasticSearch(实战) 下载地址 目的 日志数据 模拟Pipeline 创建pipeline 查看Pipeline是否创建 ...
- 2018年9月杭州云栖大会Workshop - 基于日志的安全分析实战
基于日志的安全分析实战 背景 越来越多的企业开始重视构建基于日志的安全分析与防护系统.我们会讲述如何使用日志服务从0到1收集海量日志,并从中实时筛选.甄别出可疑操作并快速分析,进一步构建安全大盘与可视 ...
- 如何基于Docker快速搭建Elasticsearch集群?
如何基于Docker快速搭建Elasticsearch集群? Elasticsearch 作为一个搜索引擎,我们对它的基本要求就是存储海量数据并且可以在非常短的时间内查询到我们想要的信息.所以第一步 ...
- 基于日志的交换机故障预测
女主宣言 在当今Web服务数据中心网络中,网络设备的故障已经逐渐成为日常发生的事件.对于故障发生后如何处理,之前已经提出了很多的研究.不幸的是,数据中心部署的互联网服务的性能依然受到影响.本文介绍的是 ...
- MySQL基于日志还原数据
简介 Binlog日志,即二进制日志文件,用于记录用户对数据库操作的SQL语句信息,当发生数据误删除的时候我们可以通过binlog日志来还原已经删除的数据,还原数据的方法分为传统二进制文件还原数据和基 ...
- 基于Citespace和vosviewer文献计量学可视化SCI论文高效写作方法--开启从小白到精通的基于文献计量学论文写作之旅
论文快速发表? 没有实验数据? 缺少写作方法? 没有好的选题? 快点看过来→通过文献计量学助您发表高影响因子论文! 文献计量学是指用数学和统计学的方法,定量地分析一切知识载体的交叉科学.它是集数 ...
- 通过文献计量学助您发表高影响因子论文—基于Citespace和vosviewer文献计量学可视化SCI论文高效写作方法
目录 专题一.文献计量学方法与应用 专题二.主题确定.数据检索与采集 专题三.Vosviewer可视化绘图精讲 专题四.Citespace可视化绘图精讲 专题五.后期图片优化提升与辅助工具 专题六.论 ...
- 基于Citespace和vosviewer文献计量学可视化SCI论文高效写作方法
[前言]:文献计量学是指用数学和统计学的方法,定量地分析一切知识载体的交叉科学.它是集数学.统计学.文献学为一体,注重量化的综合性知识体系.特别是,信息可视化技术手段和方法的运用,可直观的展示主题的研 ...
最新文章
- python安装环境安装_安装Python运行环境
- html一条横线在文本旁边_lt;delgt; | HTML删除标记标签
- ORA-01940 无法删除当前已连接的用户之解决方案
- USB共享网络:android手机通过USB与Ubuntu进行socket网络通信
- primefaces_PrimeFaces:在动态生成的对话框中打开外部页面
- 新手教程:采用AD9软件画原理图
- java毕设项目教务排课系统(附源码)
- Mahony 互补滤波算法
- 习题9-1 时间换算(15 分)
- efficientNet论文心得
- NetSuite 二次开发工具介绍
- 百度有啊前端框架分析(自定义事件)
- 创业和工作的心态问题
- Linux系统(三)系统基础扫盲大全
- 蚂蚁金服首席数据科学家漆远:AI技术开放,与业界融合共创
- PowerManger
- Java8新特性-使用Stream流来实现递归遍历树形结构(案例)
- c语言最新版,【整理】C语言的各种版本:C89,AMD1,C99,C11 – 在路上
- 计算机图形学 英语,计算机图形学专业术语中英文对照
- wps如何放大导航窗格字体
热门文章
- SqlServer性能检测和优化工具使用详细(sqlserver profiler)
- IntelliJ IDEA+Maven运行apache-storm的LocalCluster例子
- 4 拼接_3个孩子,64㎡小户型内“镶嵌”4室一厅,餐桌还能随意拼接
- Xcode更改Build输出路径
- LINUX模拟键盘F5的脚本(未试过)
- JDK绘制文字的流程与代码分析
- 别人重构了整套代码,汝还不知道哪里有问题,相差几个等级?
- 管理感悟:不谈态度,只谈做法
- 雄伟到惊世骇俗的黄羊山超级相控阵雷达
- 问题解决:AttributeError: 'module' object has no attribute '_rebuild_tensor_v2'