TCollector
大约 2 分钟
TCollector
1. 引言
TCollector 是一款专为时序数据监控设计的轻量级、分布式指标采集工具,用于自动化采集服务器和应用的性能指标(如 CPU、内存、磁盘、网络等),并将数据高效发送到后端时序数据库存储和分析。通过调整其配置指向部署于特定服务器的 IoTDB_Adapter 服务的域名或IP以及相应端口,即可将采集的数据无缝接入 IoTDB 存储引擎。这种集成方式能够充分发挥 IoTDB 对时序数据的高效存储查询性能和集群处理能力。
2. 前置条件
要将 TCollector 数据写入 IoTDB 需要以下几方面的准备工作:
IoTDB>= V2.0.5.1,已经部署并正常运行。IoTDB_Adapter已经安装并正常运行。TCollector已经安装。
3. 安装与配置步骤
3.1 IoTDB_Adapter配置
联系天谋工作人员获取
IoTDB_Adapter安装包解压压缩包
# 以1.0版本为例 unzip IoTDB_Adapter-1.0.zip修改配置文件 conf/application.properties ,设置监听接口、
IoTDB的节点地址、用户名、密码和路径前缀。
# 启动 Adapter 监听的端口
port=4242
# IoTDB 的实例地址,多个 nodeUrls 用 ; 分割
iotdb.nodeUrls=127.0.0.1:6667
# 写入IoTDB的数据的路径前缀,如 root.testdb (sqlDialect不为table的时候生效)
iotdb.prefix=root.sg
# IoTDB 用户名
iotdb.user=root
# IoTDB 密码
iotdb.password=root
# IoTDB SqlDialect(可选tree/table,默认tree)
iotdb.sqlDialect=table
# IoTDB DataBase (sqlDialect为table的时候生效)
iotdb.database=tcollector
# IoTDB Table (sqlDialect为table的时候生效)
iotdb.table=test
# payload_formatter:支持 statsd 和 opentsdb(默认) 两种
payload.formatter=opentsdb
# 源数据精度(默认秒s|毫秒ms|微妙us|纳秒ns)
time.precision.source=s
# 目标 IoTDB 数据精度(默认秒)
time.precision.iotdb=ms注意:表模型下,参数 iotdb.database 中设置的数据库需要提前创建
- 重新启动
IoTDB_Adapter服务。
/sbin/start.sh3.2 TCollector 配置
- 定位采集器脚本:根据操作系统选择对应目录(以
Linux环境为例)
# 源路径: collectors/available/{OS}/long-lived
cd tcollector/collectors/available/linux/long-lived- 部署至采集器生效目录:例如将
dfstat.py文件拷贝到tcollector/collectors/enabled/300目录下
# 以dfstat.py为例,目标路径: collectors/enabled/{采集间隔秒级}/
cp dfstat.py ../../../enabled/300- 启动TCollector
进入tcollector目录,执行启动命令脚本:
./tcollector start -H 127.0.0.1 -p 4242-H为IoTDB_Adapter所在的服务器 IP 地址-p为IoTDB_Adapter项目conf/application.properties中的端口
3.3 验证测试
通过 IoTDB CLI查询数据,验证数据是否已成功写入。
IoTDB:tcollector> select * from test where metric='df.inodes.used' limit 1
+-----------------------------+--------------+---------------------------+-------+---------+-----+---------+----+-----------------------+--------+----+----+-----+--------+-------+----+------+
| time| metric| host| value|collector|iface|direction| dev| mount| fstype|type| cpu|state|endpoint|service|user|cpuset|
+-----------------------------+--------------+---------------------------+-------+---------+-----+---------+----+-----------------------+--------+----+----+-----+--------+-------+----+------+
|2025-07-31T09:49:58.656+08:00|df.inodes.used|iot-VMware-Virtual-Platform|21133.0| null| null| null|null|/snap/gnome-42-2204/202|squashfs|null|null| null| null| null|null| null|
+-----------------------------+--------------+---------------------------+-------+---------+-----+---------+----+-----------------------+--------+----+----+-----+--------+-------+----+------+
Total line number = 1
It costs 0.024s