简介

Grafana是一个独立运行的系统,内置了Web服务器。它可以基于仪表盘的方式来展示、分析时间序列数据。

Grafana支持多种数据源,例如:Graphite、OpenTSDB、InfluxDB、Elasticsearch。你可以混合使用多种数据源。它对Graphite有以下增强的支持:

  1. 点击修改Metrics路径的每一个片断
  2. 快速的添加函数,支持点击函数参数以修改之
  3. 修改函数顺序
  4. 丰富的模板支持

在UI方面,Grafana具有以下特性:

  1. 丰富的、基于客户端的图表组件:Bar图、区域图、线图。支持多Y轴
  2. 支持点击/选择以缩放(Zoom)时间区间
  3. 支持混合多种图表组件,一起展示或者堆叠展示
  4. 支持定制图表的配色,支持黑白两种主题
  5. 支持拖放仪表盘面板(Panel),支持多种面板类型
  6. 支持脚本化仪表盘、仪表盘模板
  7. 通过来自数据源的事件(例如Graphite的Events),可以对仪表进行标注
核心概念
术语 说明
数据源(Data Source) Grafana支持多种存储后端,这些后端称为数据源
Grafana为每种数据源开发了查询编辑器( Query Editor)以匹配后端的特点
组织(Organization) 引入组织机构的概念,以便一个Grafana实例可以被多个可能不受信任的组织使用
用户(User) Grafana用户可以归属于1个或者多个组织
行(Row) 仪表盘中的逻辑分段
面板(Panel)

仪表盘中最基本的可视化单元,每个面板提供查询编辑器。Grafana目前内置了Graph, Singlestat, Dashlist和Text这几种面板

每种面板都具有一些样式、格式化选项,你可以利用它们设计出漂亮的图表

可以通过拖拽,在仪表盘中重新放置面板,也可以缩放其大小

查询编辑器(Query Editor) 依据特定数据源设计的表单,用以查询需要的Metrics
仪表盘(Dashboard) 一系列面板的集合,这些面板被组织在一个或者多个行中
安装与配置
安装Grafana

依次执行下面的命令完成安装:

 
 

Shell

 
1
2
3
4
# CentOS
yum install initscripts fontconfig
wget https://grafanarel.s3.amazonaws.com/builds/grafana-3.1.1-1470047149.x86_64.rpm
rpm -Uvh grafana-3.1.1-1470047149.x86_64.rpm

设置为开机启动:

 
 

Shell

 
1
2
/bin/systemctl daemon-reload
/bin/systemctl enable grafana-server.service

启动服务:

 
 

Shell

 
1
systemctl start grafana-server.service
配置文件
环境变量配置

当Grafana服务启动时,会读取 /etc/sysconfig/grafana-server 中的环境变量。你可以修改日志目录、数据存储目录等变量。

默认的,日志文件存储目录为/var/log/grafana,数据存储目录为/var/lib/grafana。默认使用SQLite数据库/var/lib/grafana/grafana.db。

主配置文件

如果基于deb/rpm包进行安装,则主配置文件的位置为: /etc/grafana/grafana.ini 。使用命令行参数 --config可以覆盖此位置。主配置文件说明如下:

配置项 说明
  instance_name Grafana服务的名称,默认为${HOSTNAME},即环境变量HOMENAME的值
[paths] data 在何处存放SQLite3数据库文件、基于文件的Session,以及其它数据
logs 在何处存放日志
[server] http_addr 内置Web服务的监听地址,默认绑定所有地址
http_port 内置Web服务的监听端口,默认3000
protocol http或者https
cert_file https证书文件
cert_key https证书密钥
[database] type 数据库类型:mysql、postgres或者sqlite3
path sqlite3数据库文件路径
host mysql或postgres的主机:端口,例如 127.0.0.1:3306 
name 数据库名称默认grafana
user 数据库用户
password 数据库密码
[security] admin_user Grafana管理员用户,默认admin
admin_password Grafana管理员密码,默认admin
login_remember_days 记住登陆的最大天数
secret_key 用于签名记住登陆的Cookie
disable_gravatar 禁用头像
[log] mode 日志记录方式,console、file或者syslog。可以用空格分开多个方式
  level 日志记录级别,debug、info、warn、error、critical
使用Grafana

使用Grafana的日常工作包括:用户管理、系统管理、仪表盘设计、数据源管理,等等。所有这些工作都在Web界面http://GRAFANA_HOST:3000  完成。该界面比较友好,适合最终用户。

配置Graphite数据源

点击Web界面左上角的图标,下拉列表中选择Data Sources,即可管理数据源。

点击Add data source按钮,添加新的数据源,参考下图:

注意Access设置成proxy,则数据通过Grafana间接获取,否则,数据直接通过客户端获取。添加Graphite数据源后,可以点击Dashboards选项卡,获得其预置的仪表盘Graphite Carbon Metrics并导入到Grafana中。

设计仪表盘

点击Web界面左上角的图标,下拉列表中选择Dashboards  ⇨ New,可以新建仪表盘。在新仪表盘中,点击左侧的绿条,可以添加新的面板;点击右下侧ADD ROW按钮则可以新建一行。

参考:https://blog.gmem.cc/time-series-data-renderering-with-grafana

006使用Grafana展示时间序列数据的更多相关文章

  1. 利用Grafana展示zabbix数据

    一.系统搭建(以Centos7为例)因为我们的主要目的是展示zabbix的数据,所以建议大家直接在zabbix的服务器上搭建这个系统,亲测两系统无冲突,这样部署的好处是两系统间的数据传输更快,前端展示 ...

  2. 4.Grafana展示监控数据

    Grafana是什么?我们知道Node_export监控服务器状态,但是没有具体的展示,简单来说,Grafana的主要作用就是对监控的数据进行图形化展示. docker部署 grafana我们这里采用 ...

  3. Prometheus入门到放弃(3)之Grafana展示监控数据

    grafana我们这里采用docker方式部署 1.下载镜像 镜像官网地址:https://hub.docker.com/r/grafana/grafana/tags [root@prometheus ...

  4. 基于InfluxDB+Grafana打造大数据监控利器--转

    这是一个大数据爆发的时代.面对信息的激流.多元化数据的涌现,我们在获取.存储.传输.理解.分析.应用.维护大数据时,无疑需要一种便捷的信息交流通道,以便快速.有效.准确地理解和驾驭这个过程.本文将通过 ...

  5. geotrellis使用(二十三)动态加载时间序列数据

    目录 前言 实现方法 总结 一.前言        今天要介绍的绝对是华丽的干货.比如我们从互联网上下载到了一系列(每天或者月平均等)的MODIS数据,我们怎么能够对比同一区域不同时间的数据情况,采用 ...

  6. OpenStack/Gnocchi简介——时间序列数据聚合操作提前计算并存储起来,先算后取的理念

    先看下 http://www.cnblogs.com/bonelee/p/6236962.html 这里对于环形数据库的介绍,便于理解归档这个操作! 转自:http://blog.sina.com.c ...

  7. 容器化系列 - 通过Grafana监测InfluxDB数据 on Docker

    本文演示在Docker中运行Grafana和InfluxDB,并通过Grafana展示InfluxDB曲线图. 1 准备工作 1.1 安装Docker 请参考这里 1.2 下载镜像 $ docker ...

  8. Grafana展示DNS解析延时

      首先一个完整的监控肯定会包含三个部分:1.数据收集部分.2.数据存储部分.3.数据展示部分,今天我也是从这三个方面来实现这个监控的. 数据收集(SHELL 脚本)   没有想到比较好的方法来采集数 ...

  9. [k8s]容器化node-expolore(9100)+cadvisor(8080)+prometheus(9090) metric搜集,grafana展示

    Prometheus 的核心,多维数据模型 传统监控工具统计数据方式 指标多 - 需求1,统计app1-3,的(总)内存,则定义3个指标 container.memory_usage_bytes.we ...

随机推荐

  1. Sublime Text添加插入带当前时间说明

    Sublime Text添加插入带当前时间说明   作者:木尘 日期:2014-11-25 插件实现插入带时间功能的说明: 1. 创建插件: Tools → New Plugin: import da ...

  2. 部分机器进入bios 的 方法

  3. OneZero第四周——预完成功能点统计

    本周OneZero将完成“统计”功能. 功能点统计如下: 1.主页单击记录,进入修改界面,修改记录. 2.主页长按记录,出现删除按钮,删除记录. 3.全部记录按分类进行饼图显示. 4.全部记录按分类进 ...

  4. oracle-表空间剩余空间大小占比查询

    select tablespace_name, max_gb, used_gb, round(100 * used_gb / max_gb) pct_used from (select a.table ...

  5. spring注入 属性注入 构造器注入 set方法注入

    spring注入 属性注入 构造器注入 set方法注入(外部bean注入)

  6. Spring中ClassPathXmlApplication与FileSystemXmlApplicationContext的区别以及ClassPathXmlApplicationContext 的具体路径

    一.ClassPathXmlApplicationContext 的具体路径 String s[] = System.getProperty("java.class.path"). ...

  7. 【刷题】BZOJ 1093 [ZJOI2007]最大半连通子图

    Description 一个有向图G=(V,E)称为半连通的(Semi-Connected),如果满足:?u,v∈V,满足u→v或v→u,即对于图中任意 两点u,v,存在一条u到v的有向路径或者从v到 ...

  8. 用Riffstation扒带

    有人说扒带本质就是扒和声 编曲初学者如果是自学的情况下很容易陷入瓶颈,网络上的编曲爱好者大都建议去多扒带,所谓扒带其实就是把别人的编曲自己编出来,然而这要很好的听力,下面我介绍的这款软件就是用来扒和声 ...

  9. 小贾漫谈——Java反射

    一.Class的API 二.测试使用的JavaBean class Admin{ //字段 public String userName; public String pwd; private int ...

  10. C#string与stringBuilder的区别

    string的缺点是每次字符串变量的内容发生了改变时,都必须重新分配内存.你想想,如果创建一个迭代100000次的循环,每次迭代都将一个字符连接到字符串,这样内存中就会有100000个字符串,每个字符 ...