使用kibana和elasticsearch日志实时绘制图表

前言:

此文接的是上篇,上次的内容是,用python操作elasticsearch存储,实现数据的插入和查询。  估计有些人一看我的标题,以为肯定是 logstash kibana elasticsearch的组合。这三个家伙也确实总是勾搭在一块。 其实logstash是可以被别的替换,比如常见的fluented 。剩下的那两个,kibana和elasticsearch是一伙的,不好做分离。

这次用的不是那种开源的、cs模式日志收集应用,还真不是。而是自己直接从程序里面把日志打到elasticsearch里面(可以是python,也可以用shell的curl)。然后通过kibana把elasticsearch数据读出来,直接绘图。

我个人还是不喜欢用elasticsearch做存储,他的一些语法说明不够犀利,主要原因还是他的DSL让我头疼。  我还是喜欢把结果打到mongodb里面。 对于我来说mongodb的查询语句是我很喜欢的。

不扯了,开始切入主题。  我这里的想法比较简单和方便,比如需要监控一些数据,我们完全可以把结果打到elasticsearch里面。  而不是我前面说的那样,还需要从库里面取出数值,然后再用前端画图,另外数据的接口还不好控制,真心是麻烦,当然对于熟练前后端的人来说,这也仅仅是麻烦而已。

下图是我以前的一个项目,通知平台的前端,当时开发的时候,真是十分的蛋疼,一会搞数据层,一会搞前端的ajax模板,但是带来的好处也不少,尤其是提高自己的前后端细节的写码能力。

但说起来,感觉如果用kibana3的话,在一定程度来说,很是方便。  只需要给elasticsearch下面的数据格式就行了。

index是索引,在elasticsearch里面,一切皆索引(我说的)

type是格式,咱们做图表的时候,基本是根据type做归类的。比如,web相关的为一个索引,然后nginx和varnish为不同的type。 当然也可以再细化,把那个nginx服务都可以做一个索引。 只要你不觉得乱套就行了。 很多人担心elasticsearch的大数据能力,其实我没怎么把他看做大数据处理,就把他做个临时一个月的存储,做一些个日志分析,监控啥的。 (个人喜欢)

@message 是主数据内容

@timestamp是时间,kibana默认是根据这个来做时间段的。

上面的数据有些乱,咱们可以把键值对分化的更细致点。

原文:http://rfyiamcool.blog.51cto.com/1030776/1421049

但是kibana3二次开发起来,对于初学者来说,是有难度的。

原文:http://rfyiamcool.blog.51cto.com/1030776/1421049

如果懒得写前端和数据接口,完全可以把日志和数据放到elasticsearch处理。我的开发主要是python,用pyes,只需要把数据扔给elasticsearch就行了。 格式是json的样子,看下面,用kibana可以做多条件的查询,我想搜 nginx,squid,tornado的类型,类型,出错的频率。

除了query,还有用regexp正则的方式

(111|222)
aaa.*
a{3}b{3}        # match
a{2,4}b{2,4}    # match
a{2,}b{2,}      # match
.{3}.{3}        # match
a{4}b{4}        # no match
a{4,6}b{4,6}    # no match
a{4,}b{4,}      # no match

(ab)+       # match
ab(ab)+     # match
(..)+       # match
(...)+      # no match
(ab)*       # match
abab(ab)?   # match
ab(ab)?     # no match
(ab){3}     # match
(ab){1,2}   # no match

查询,web的日志,看下css,js,jpg,bootstrap.css,bootstrap.js 访问的一些比率 ~

使用kibana和elasticsearch日志实时绘制图表

时间: 2024-10-12 23:30:10

使用kibana和elasticsearch日志实时绘制图表的相关文章

Kibana+Logstash+Elasticsearch 日志查询系统

搭建该平台的目的就是为了运维.研发很方便的进行日志的查询.Kibana一个免费的web壳:Logstash集成各种收集日志插件,还是一个比较优秀的正则切割日志工具:Elasticsearch一个开源的搜索引擎框架(支持群集架构方式). 1 安装需求 1.1 理论拓扑 1.2 安装环境 1.2.1 硬件环境 192.168.50.62(HP DL 385 G7 .RAM:12G.CPU:AMD 6128.DISK:SAS 146*4) 192.168.50.98(HP DL 385 G7 .RAM

使用logstash+elasticsearch+kibana快速搭建日志平台

日志的分析和监控在系统开发中占非常重要的地位,系统越复杂,日志的分析和监控就越重要,常见的需求有: 根据关键字查询日志详情 监控系统的运行状况 统计分析,比如接口的调用次数.执行时间.成功率等 异常数据自动触发消息通知 基于日志的数据挖掘 很多团队在日志方面可能遇到的一些问题有: 开发人员不能登录线上服务器查看详细日志,经过运维周转费时费力 日志数据分散在多个系统,难以查找 日志数据量大,查询速度慢 一个调用会涉及多个系统,难以在这些系统的日志中快速定位数据 数据不够实时 常见的一些重量级的开源

CentOS7搭建开源分布式搜索平台ELK实现日志实时搜索并展示图表

    一.简介  Elasticsearch是个基于Lucene实现的开源.分布式.restful的全文本搜索引擎,此外他还是一个分布式实时文档存储,其中每个文档的每个filed均是可被索引的数据,且可被搜索,也是一个带实时分析功能的搜索引擎,能够扩展至数以百计的节点实时处理PB级别的数据.它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等.日志主要包括系统日志.应用程序日志和安全日志.系统运维和开发人员可以通过日志了解服务器软硬

ELK收集Apache的json格式访问日志并按状态码绘制图表

前言 需求说明: 部署一个Apache,收集Apache的json格式访问日志,并且将访问日志的状态码在kibana上绘制饼状图,添加到kibana的dashboard. 环境说明: 10.0.0.101(test101)--部署apache.filebeat10.0.0.102(test102)--部署elasticsearch.kibana备注:本次实验的重点在于怎样收集Apache的json格式日志,因此没有装logstash.日志数据从filebeat--elasticsearch--k

ElasticSearch+LogStash+Kibana+Redis搭建日志管理服务(ElasticSearch篇)

ElkStack介绍 对于日志来说,最常见的需求就是收集.存储.查询.展示,开源社区正好有相对应的开源项目:logstash(收集).elasticsearch(存储+搜索).kibana(展示),我们将这三个组合起来的技术称之为ELKStack,所以说ELKStack指的是Elasticsearch.Logstash.Kibana技术栈的结合,一个通用的架构如下图所示: 说明: 多个独立的agent(Shipper)负责收集不同来源的数据,一个中心agent(Indexer)负责汇总和分析数据

使用ElasticSearch+LogStash+Kibana+Redis搭建日志管理服务

1.使用ElasticSearch+LogStash+Kibana+Redis搭建日志管理服务 http://www.tuicool.com/articles/BFzye2 2.ElasticSearch+LogStash+Kibana+Redis日志服务的高可用方案 http://www.tuicool.com/articles/EVzEZzn 3.示例 开源实时日志分析ELK平台部署 http://baidu.blog.51cto.com/71938/1676798?utm_source=t

CentOS7使用Elasticsearch+ Logstash+kibana快速搭建日志分析平台

CentOS7使用Elasticsearch+ Logstash+kibana快速搭建日志分析平台 介绍: 安装logstash,elasticsearch,kibana三件套,搜索程序一般由索引链及搜索组件组成. 索引链功能的实现需要按照几个独立的步骤依次完成:检索原始内容.根据原始内容来创建对应的文档.对创建的文档进行索引. 搜索组件用于接收用户的查询请求并返回相应结果,一般由用户接口.构建可编程查询语句的方法.查询语句执行引擎及结果展示组件组成. Elasticsearch是个开源分布式搜

利用 log-pilot + elasticsearch + kibana 搭建 kubernetes 日志解决方案

开发者在面对 kubernetes 分布式集群下的日志需求时,常常会感到头疼,既有容器自身特性的原因,也有现有日志采集工具的桎梏,主要包括: 容器本身特性: 采集目标多:容器本身的特性导致采集目标多,需要采集容器内日志.容器 stdout.对于容器内部的文件日志采集,现在并没有一个很好的工具能够去动态发现采集.针对每种数据源都有对应的采集软件,但缺乏一站式的工具. 弹性伸缩难:kubernetes 是分布式的集群,服务.环境的弹性伸缩对于日志采集带来了很大的困难,无法像传统虚拟机环境下那样,事先

利用 Log-Pilot + Kafka + Elasticsearch + Kibana 搭建 kubernetes日志解决方案

利用 Log-Pilot + Kafka+Elasticsearch + Kibana 搭建 kubernetes日志解决方案 1.前提条件 已有kafka.elk.k8s集群,这3套集群搭建网上资料很多,这里不写,IP规划如下所示: kafka集群 10.6.11.22:9092 10.6.11.23:9092 10.6.11.24:9092 ELK集群 10.6.11.25:9200 10.6.11.26:9200 10.6.11.27:9200 k8s集群 10.6.11.28(maste