简介

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. DOM父节点、子节点例子

    父节点 <body> <ul id="oUl"> <li><a href="#">隐藏1</a>&l ...

  2. maven基础知识汇总

    maven的dependency中scope=compile和provided的区别 对于scope=compile的情况(默认scope),也就是说这个项目在编译,测试,运行阶段都需要这个artif ...

  3. 两种常用文件分享方式 - 网络硬盘快速分享, 点对点的文件共享 BitTorrent Sync

    普通的用户经常通过电子邮件.QQ传递等方式进行文件的分享,但是由于不同的网络环境有的时候可能会有不同的限制,所以我们就需要寻找其他的方式来替代.今天就为大家推荐两个既常用又与众不同的分享方式. 中国论 ...

  4. php 微信公众号上传永久素材

    <?php namespace Mob\Controller; use Think\Controller; class WxmaterialController extends Controll ...

  5. 【BZOJ2054】疯狂的馒头(并查集,线段树)

    [BZOJ2054]疯狂的馒头(并查集,线段树) 题面 BZOJ 然而权限题,随便找个离线题库看看题吧. 题解 线段树就是个暴力,如果数据可以构造就能卡掉,然而不能构造,要不然复杂度瓶颈成为了读入了. ...

  6. winform里宿主WCF,并传递winform变量给WCF

    最近客户要求把服务器端程序里的二个功能用service的方式提供出来,方便调用.首先想着单独建一个wcf 服务的项目,但是因为要用到server端程序winform里的变量,因此只能在winform里 ...

  7. Oracle和SQL SERVER在SQL语句上的差别

    Oracle与Sql server都遵循SQL-92标准:http://owen.sj.ca.us/rkowen/howto/sql92F.html,但是也有一些不同之处,差别如下: Oracle中表 ...

  8. 解题:CF1063F String Journey

    题面 分析性质以进行DP 性质1:一定有一个最优解通过每次删除第一个或最后一个字符达到 这个脑补一下就能证明了 那么我们设$dp[i]$表示后缀$[i,n]$选出一个前缀所能达到的最大长度,从右往左D ...

  9. C#访问和操作MYSQL数据库

    这里介绍下比较简单的方式,引用MySql.Data.dll然后添加一个MySqlHelper类来对MySql数据库进行访问和操作. 1.将MySql.Data.dll引用到你的项目中 下载地址:MyS ...

  10. sqlserver收缩日志的几种方式

    sqlserver收缩日志的几种方式   [sql] --参考    压缩日志及数据库文件大小      /*--特别注意       请按步骤进行,未进行前面的步骤,请不要做后面的步骤    否则可 ...