基于jmx的flume的指标采集展示

基于jmx的flume的指标采集展示

最近参与一个项目,需求:采集flume指标并通过可视化页面显示。flume可以配置jmx端口,通过jmxtrant采集指标,并写入influxdb,进而通过grafana进行展示。所以本文对这一部分做一个简单介绍。
1.启用jmx步骤:在flume的启动脚本中加入如下内容(同理:其他服务开启jmx端口,也可通过如下方式进行配置),然后启动agent:

-Dcom.sun.management.jmxremote.port=19999 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false

2.建议优先安装influxdb,从官网下载rpm包,本地安装启动即可:

rpm -ihv influxdb-1.7.6-1.x86_64.rpm
service influxdb start
登录influxdb:influx
creat database flume_db;

3.部署安装jmxtrans:jmxtrans的部署建议用最新版本271/272,(270版本的jmx对于flume的支持不是很友好,原因是其中的influxdbFactory类不全)

建议从官网下载-http://www.jmxtrans.org/,测试用的的最新版本271版本。安装方式
rpm -ihv jmxtrans-271.rpm

启动该版本jmxtrans方式:

service jmxtrans start

关于采集json的配置,flume_host1.json参考如下:

{
  "servers" : [ {
    "port" : "flume_jmxport",
    "host" : "flume_host",
    "queries" : [ {
      "outputWriters" : [ {
        "@class" : "com.googlecode.jmxtrans.model.output.InfluxDbWriterFactory",
        "url" : "http://influxdb_host:influxdb_port/",
        "username" : "",
        "password" : "",
        "database" : "flume_db",
        "typeNames" : ["ch1"],
        "typeNamesAsTags" : "true"
      }],
      "obj" : "flume:type=CHANNEL",
      "attr" : [ "ChannelCapacity" ],
      "resultAlias":"channelCounter"
    }
]
  } ]
}

将flume_host1.json放入/var/lib/jmstrans/目录下,重启jmxtrans即可。其中几个参数说明如下

(1)flume_jmxport指组件开启jmx的端口;flume_host指启动组件的主机名
(2)本文采用influxdb存储指标信息。influxdb_host指安装influxdb服务的主机;influxdb_port指influxdb的端口,默认8086
(3)其中type/obj/attr等内容信息。可以通过jconsole方式远程连接到对应机器进行查看。

4.通过influxdb即可查看到相关定义的相关指标内容:

influx
show databases;
use flume_db;
show measurements;

5.安装grafana[https://grafana.com/],依然建议从官网进行下载安装。登录grafana,配置数据源为安装的influxdb的地址,验证连接。此时就看我们自身的习惯,定制指标的显示方式了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值