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

13【在线日志分析】之舍弃Redis+echarts3,选择InfluxDB+Grafana

13,在线,日志,分析,之,舍弃,redis,echarts3,选择,influx

1.最初选择Redis作为存储,是主要有4个原因:
a.redis是一个key-value的存储系统,数据是存储在内存中,读写性能很高;
b.支持多种数据类型,如set,zset,list,hash,string;
c.key过期策略;
d.最主要是网上的博客全是sparkstreaming+redis,都互相模仿;
至于缺点,当时还没考虑到。

2.然后开始添加CDHRolelog.class类和redis模块加入代码中
使计算结果(本次使用spark streaming+spark sql,之前仅仅是spark streaming,具体看代码储到redis中,当然存储到redis中,有两种存储格式

2.1 key为机器名称,服务名称,日志级别拼接的字符串,如hadoopnn-01_namenode_WARN
    
value为数据类型list,其存储为json格式的 [{"timeStamp": "2017-02-09 17:16:14.249","hostName": "hadoopnn-01","serviceName": "namenode","logType":"WARN","count":"12" }]

代码url,下载导入idea,运行即可
https://github.com/Hackeruncle/OnlineLogAnalysis/blob/master/online_log_analysis/src/main/java/com/learn/java/main/OnLineLogAnalysis3.java




2.2 key为timestamp 如 2017-02-09 18:09:02.462,
value 为 [ {"host_service_logtype": "hadoopnn-01_namenode_INFO","count":"110" }, {"host_service_logtype": "hadoopnn-01_namenode_DEBUG","count":"678" }, {"host_service_logtype": "hadoopnn-01_namenode_WARN","count":"12" }]

 代码url,下载导入idea,运行即可:  

https://github.com/Hackeruncle/OnlineLogAnalysis/blob/master/online_log_analysis/src/main/java/com/learn/java/main/OnLineLogAnalysis5.java


 
3.做可视化这块,我们选择adminLTE+flask+echarts3, 计划和编程开发尝试去从redis实时读取数据,动态绘制图表;
后来开发调研大概1周,最终2.1 和2.2方法的存储格式都不能有效适合我们,进行开发可视化Dashboard,
所以我们最终调研采取InfluxDB+Grafana来做存储和可视化展示及预警。


4.InfluxDB是时序数据库 
https://docs.influxdata.com/influxdb/v1.2/

5.Grafana是可视化组件
http://grafana.org/
https://github.com/grafana/grafana


推荐阅读
  • 本博客是本人的一些小结,如有纰漏,欢迎拍砖。首先若是想做大项目的话,不要觉的框架写着没有用,而不写,先把框架写好,以后有需要的时候才可以填充这个框架,项目才可以做大。 ... [详细]
  • eecg的代码生成器很不错,但是可能有的时候不是那么符合我们实际项目的功能需求,这里会首先介绍jeecg原生生成的样子,以及根据需求进行的改造。Jeecg中的 ... [详细]
  • 本文介绍了Redis的基础数据结构string的应用场景,并以面试的形式进行问答讲解,帮助读者更好地理解和应用Redis。同时,描述了一位面试者的心理状态和面试官的行为。 ... [详细]
  • 一次上线事故,30岁+的程序员踩坑经验之谈
    本文主要介绍了一位30岁+的程序员在一次上线事故中踩坑的经验之谈。文章提到了在双十一活动期间,作为一个在线医疗项目,他们进行了优惠折扣活动的升级改造。然而,在上线前的最后一天,由于大量数据请求,导致部分接口出现问题。作者通过部署两台opentsdb来解决问题,但读数据的opentsdb仍然经常假死。作者只能查询最近24小时的数据。这次事故给他带来了很多教训和经验。 ... [详细]
  • mysql oneproxy稳定吗_Mysql 中间件 oneProxy总结
    建议使用之前把官方的文档全部通读一遍这里提供一个我的网盘地址oneproxy百度网盘0.先对oneproxy有个大概的了解,知道他所处的位置1.MySQL服务器创建t ... [详细]
  • 如何理解MyBatis动态SQL
    本篇内容主要讲解“如何理解MyBatis动态SQL”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何理解M ... [详细]
  • 1,Windows服务应用程序是一种需要长期运行的应用程序,它对于服务器环境特别适合。它没有用户界面,并且也不会产生任何可视输出。任何用户 ... [详细]
  • 如何实现Percona Mysql Galera多读写集群的部署
    本篇文章给大家主要讲的是关于如何实现PerconaMysqlGalera多读写集群的部署的内容,感兴趣的话就一起来看看这篇文章吧,相信看完如何实现PerconaMysq ... [详细]
  • Qadmin 1.2.7 正式发布,MySQL 管理客户端
    Qadmin源于Adminersourcecode二次开发而来。本程序非官方发布版本,二次开发改动的 ... [详细]
  • 一、ImageRequest不知道将ImageRequest放在这里进行介绍是否合适,因为毕竟它属于一个请求队列,与StringRequest、Json ... [详细]
  • 以下数据来源于TRDIR,TRDIRT,有一些对应系统的事务,有具体的T-CODE.以下我会标注一些我个人认为会常用到的.程序功能描述RSORA000O ... [详细]
  • EspressoLogic在其DBaas服务中添加了支持SQL存储过程的RESTful终结点。\u0026#xD;\nEspressoLogic通过分析数据库架构,为 ... [详细]
  • 对mysql的总结与反思_一次DB故障引起的反思和MySQL Operator选型
    前言在一次数据库故障后,我们发现业务库会根据业务的等级会划分多个MySQL实例,许多业务库会同时属于一个MySQL实例,当一个库引发问题后 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • Redis底层数据结构之压缩列表的介绍及实现原理
    本文介绍了Redis底层数据结构之压缩列表的概念、实现原理以及使用场景。压缩列表是Redis为了节约内存而开发的一种顺序数据结构,由特殊编码的连续内存块组成。文章详细解释了压缩列表的构成和各个属性的含义,以及如何通过指针来计算表尾节点的地址。压缩列表适用于列表键和哈希键中只包含少量小整数值和短字符串的情况。通过使用压缩列表,可以有效减少内存占用,提升Redis的性能。 ... [详细]
author-avatar
DTor惜涵_237
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有