Skip to main content

系统监控

TDengine 通过 taosKeeper 将服务器的 CPU、内存、硬盘空间、带宽、请求数、磁盘读写速度等信息定时写入指定数据库。TDengine 还将重要的系统操作(比如登录、创建、删除数据库等)日志以及各种错误报警信息进行记录。系统管理员可以从 CLI 直接查看这个数据库,也可以在 WEB 通过图形化界面查看这些监测信息。

这些监测信息的采集缺省是打开的,但可以修改配置文件里的选项 monitor 将其关闭或打开。

TDinsight - 使用监控数据库 + Grafana 对 TDengine 进行监控的解决方案

监控数据库将提供更多的监控项,您可以从 TDinsight Grafana Dashboard 了解如何使用 TDinsight 方案对 TDengine 进行监控。

我们提供了一个自动化脚本 TDinsight.sh 对 TDinsight 进行部署。

下载 TDinsight.sh

wget https://github.com/taosdata/grafanaplugin/raw/master/dashboards/TDinsight.sh
chmod +x TDinsight.sh

准备:

  1. TDengine Server 信息:

    • TDengine RESTful 服务:对本地而言,可以是 http://localhost:6041,使用参数 -a
    • TDengine 用户名和密码,使用 -u -p 参数设置。
  2. Grafana 告警通知

    • 使用已经存在的 Grafana Notification Channel uid,参数 -E。该参数可以使用 curl -u admin:admin localhost:3000/api/alert-notifications |jq 来获取。

      ./TDinsight.sh -a http://localhost:6041 -u root -p taosdata -E <notifier uid>

运行程序并重启 Grafana 服务,打开面板:http://localhost:3000/d/tdinsight

更多使用场景和限制请参考TDinsight 文档。

log 库

TDinsight dashboard 数据来源于 log 库(存放监控数据的默认db,可以在 taoskeeper 配置文件中修改,具体参考 taoskeeper 文档)。taoskeeper 启动后会自动创建 log 库,并将监控数据写入到该数据库中。

cluster_info 表

cluster_info 表记录集群信息。

fieldtypeis_tagcomment
tsTIMESTAMPtimestamp
first_epVARCHAR集群 first ep
first_ep_dnode_idINT集群 first ep 的 dnode id
versionVARCHARtdengine version。例如:3.0.4.0
master_uptimeFLOAT当前 master 节点的uptime。单位:天
monitor_intervalINTmonitor interval。单位:秒
dbs_totalINTdatabase 总数
tbs_totalBIGINT当前集群 table 总数
stbs_totalINT当前集群 stable 总数
dnodes_totalINT当前集群 dnode 总数
dnodes_aliveINT当前集群 dnode 存活总数
mnodes_totalINT当前集群 mnode 总数
mnodes_aliveINT当前集群 mnode 存活总数
vgroups_totalINT当前集群 vgroup 总数
vgroups_aliveINT当前集群 vgroup 存活总数
vnodes_totalINT当前集群 vnode 总数
vnodes_aliveINT当前集群 vnode 存活总数
connections_totalINT当前集群连接总数
topics_totalINT当前集群 topic 总数
streams_totalINT当前集群 stream 总数
protocolINT协议版本,目前为 1
cluster_idNCHARTAGcluster id

d_info 表

d_info 表记录 dnode 状态信息。

fieldtypeis_tagcomment
tsTIMESTAMPtimestamp
statusVARCHARdnode 状态
dnode_epNCHARTAGdnode endpoint
cluster_idNCHARTAGcluster id

m_info 表

m_info 表记录 mnode 角色信息。

fieldtypeis_tagcomment
tsTIMESTAMPtimestamp
roleVARCHARmnode 角色, leader 或 follower
mnode_idINTTAGmaster node id
mnode_epNCHARTAGmaster node endpoint
cluster_idNCHARTAGcluster id

dnodes_info 表

dnodes_info 记录 dnode 信息。

fieldtypeis_tagcomment
tsTIMESTAMPtimestamp
uptimeFLOATdnode uptime,单位:天
cpu_engineFLOATtaosd cpu 使用率,从 /proc/<taosd_pid>/stat 读取
cpu_systemFLOAT服务器 cpu 使用率,从 /proc/stat 读取
cpu_coresFLOAT服务器 cpu 核数
mem_engineINTtaosd 内存使用率,从 /proc/<taosd_pid>/status 读取
mem_systemINT服务器可用内存,单位 KB
mem_totalINT服务器内存总量,单位 KB
disk_engineINT单位 bytes
disk_usedBIGINTdata dir 挂载的磁盘使用量,单位 bytes
disk_totalBIGINTdata dir 挂载的磁盘总容量,单位 bytes
net_inFLOAT网络吞吐率,从 /proc/net/dev 中读取的 received bytes。单位 byte/s
net_outFLOAT网络吞吐率,从 /proc/net/dev 中读取的 transmit bytes。单位 byte/s
io_readFLOATio 吞吐率,从 /proc/<taosd_pid>/io 中读取的 rchar 与上次数值计算之后,计算得到速度。单位 byte/s
io_writeFLOATio 吞吐率,从 /proc/<taosd_pid>/io 中读取的 wchar 与上次数值计算之后,计算得到速度。单位 byte/s
io_read_diskFLOAT磁盘 io 吞吐率,从 /proc/<taosd_pid>/io 中读取的 read_bytes。单位 byte/s
io_write_diskFLOAT磁盘 io 吞吐率,从 /proc/<taosd_pid>/io 中读取的 write_bytes。单位 byte/s
req_selectINT两个间隔内发生的查询请求数目
req_select_rateFLOAT两个间隔内的查询请求速度 = req_select / monitorInterval
req_insertINT两个间隔内发生的写入请求,包含的单条数据数目
req_insert_successINT两个间隔内发生的处理成功的写入请求,包含的单条数据数目
req_insert_rateFLOAT两个间隔内的单条数据写入速度 = req_insert / monitorInterval
req_insert_batchINT两个间隔内发生的写入请求数目
req_insert_batch_successINT两个间隔内发生的成功的批量写入请求数目
req_insert_batch_rateFLOAT两个间隔内的写入请求数目的速度 = req_insert_batch / monitorInterval
errorsINT两个间隔内的出错的写入请求的数目
vnodes_numINTdnode 上 vnodes 数量
mastersINTdnode 上 master node 数量
has_mnodeINTdnode 是否包含 mnode
has_qnodeINTdnode 是否包含 qnode
has_snodeINTdnode 是否包含 snode
has_bnodeINTdnode 是否包含 bnode
dnode_idINTTAGdnode id
dnode_epNCHARTAGdnode endpoint
cluster_idNCHARTAGcluster id

data_dir 表

data_dir 表记录 data 目录信息。

fieldtypeis_tagcomment
tsTIMESTAMPtimestamp
nameNCHARdata 目录,一般为 /var/lib/taos
levelINT0、1、2 多级存储级别
availBIGINTdata 目录可用空间。单位 byte
usedBIGINTdata 目录已使用空间。单位 byte
totalBIGINTdata 目录空间。单位 byte
dnode_idINTTAGdnode id
dnode_epNCHARTAGdnode endpoint
cluster_idNCHARTAGcluster id

log_dir 表

log_dir 表记录 log 目录信息。

fieldtypeis_tagcomment
tsTIMESTAMPtimestamp
nameNCHARlog 目录名,一般为 /var/log/taos/
availBIGINTlog 目录可用空间。单位 byte
usedBIGINTlog 目录已使用空间。单位 byte
totalBIGINTlog 目录空间。单位 byte
dnode_idINTTAGdnode id
dnode_epNCHARTAGdnode endpoint
cluster_idNCHARTAGcluster id

temp_dir 表

temp_dir 表记录 temp 目录信息。

fieldtypeis_tagcomment
tsTIMESTAMPtimestamp
nameNCHARtemp 目录名,一般为 /tmp/
availBIGINTtemp 目录可用空间。单位 byte
usedBIGINTtemp 目录已使用空间。单位 byte
totalBIGINTtemp 目录空间。单位 byte
dnode_idINTTAGdnode id
dnode_epNCHARTAGdnode endpoint
cluster_idNCHARTAGcluster id

vgroups_info 表

vgroups_info 表记录虚拟节点组信息。

fieldtypeis_tagcomment
tsTIMESTAMPtimestamp
vgroup_idINTvgroup id
database_nameVARCHARvgroup 所属的 database 名字
tables_numBIGINTvgroup 中 table 数量
statusVARCHARvgroup 状态
dnode_idINTTAGdnode id
dnode_epNCHARTAGdnode endpoint
cluster_idNCHARTAGcluster id

vnodes_role 表

vnodes_role 表记录虚拟节点角色信息。

fieldtypeis_tagcomment
tsTIMESTAMPtimestamp
vnode_roleVARCHARvnode 角色,leader 或 follower
dnode_idINTTAGdnode id
dnode_epNCHARTAGdnode endpoint
cluster_idNCHARTAGcluster id

log_summary 表

log_summary 记录日志统计信息。

fieldtypeis_tagcomment
tsTIMESTAMPtimestamp
errorINTerror 总数
infoINTinfo 总数
debugINTdebug 总数
traceINTtrace 总数
dnode_idINTTAGdnode id
dnode_epNCHARTAGdnode endpoint
cluster_idNCHARTAGcluster id

grants_info 表

grants_info 记录授权信息。

fieldtypeis_tagcomment
tsTIMESTAMPtimestamp
expire_timeBIGINT认证过期时间,企业版有效,社区版为 bigint 最大值
timeseries_usedBIGINT已用测点数
timeseries_totalBIGINT总测点数,开源版本为 bigint 最大值
dnode_idINTTAGdnode id
dnode_epNCHARTAGdnode endpoint
cluster_idNCHARTAGcluster id

keeper_monitor 表

keeper_monitor 记录 taoskeeper 监控数据。

fieldtypeis_tagcomment
tsTIMESTAMPtimestamp
cpuFLOATcpu 使用率
memFLOAT内存使用率
identifyNCHARTAG

taosadapter_restful_http_request_total 表

taosadapter_restful_http_request_total 记录 taosadapter rest 请求信息,该表为 schemaless 方式创建的表,时间戳字段名为 _ts

fieldtypeis_tagcomment
_tsTIMESTAMPtimestamp
gaugeDOUBLE监控指标值
client_ipNCHARTAGclient ip
endpointNCHARTAGtaosadpater endpoint
request_methodNCHARTAGrequest method
request_uriNCHARTAGrequest uri
status_codeNCHARTAGstatus code

taosadapter_restful_http_request_fail 表

taosadapter_restful_http_request_fail 记录 taosadapter rest 请求失败信息,该表为 schemaless 方式创建的表,时间戳字段名为 _ts

fieldtypeis_tagcomment
_tsTIMESTAMPtimestamp
gaugeDOUBLE监控指标值
client_ipNCHARTAGclient ip
endpointNCHARTAGtaosadpater endpoint
request_methodNCHARTAGrequest method
request_uriNCHARTAGrequest uri
status_codeNCHARTAGstatus code

taosadapter_restful_http_request_in_flight 表

taosadapter_restful_http_request_in_flight 记录 taosadapter rest 实时请求信息,该表为 schemaless 方式创建的表,时间戳字段名为 _ts

fieldtypeis_tagcomment
_tsTIMESTAMPtimestamp
gaugeDOUBLE监控指标值
endpointNCHARTAGtaosadpater endpoint

taosadapter_restful_http_request_summary_milliseconds 表

taosadapter_restful_http_request_summary_milliseconds 记录 taosadapter rest 请求汇总信息,该表为 schemaless 方式创建的表,时间戳字段名为 _ts

fieldtypeis_tagcomment
_tsTIMESTAMPtimestamp
countDOUBLE
sumDOUBLE
0.5DOUBLE
0.9DOUBLE
0.99DOUBLE
0.1DOUBLE
0.2DOUBLE
endpointNCHARTAGtaosadpater endpoint
request_methodNCHARTAGrequest method
request_uriNCHARTAGrequest uri

taosadapter_system_mem_percent 表

taosadapter_system_mem_percent 表记录 taosadapter 内存使用情况,该表为 schemaless 方式创建的表,时间戳字段名为 _ts

fieldtypeis_tagcomment
_tsTIMESTAMPtimestamp
gaugeDOUBLE监控指标值
endpointNCHARTAGtaosadpater endpoint

taosadapter_system_cpu_percent 表

taosadapter_system_cpu_percent 表记录 taosadapter cpu 使用情况,该表为 schemaless 方式创建的表,时间戳字段名为 _ts

fieldtypeis_tagcomment
_tsTIMESTAMPtimestamp
gaugeDOUBLE监控指标值
endpointNCHARTAGtaosadpater endpoint