Skip to main content

系统监控

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

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

TDinsight - 使用监控数据库 + Grafana 对 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

log 库

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

taosd_cluster_basic 表

taosd_cluster_basic 表记录集群基础信息。

fieldtypeis_tagcomment
tsTIMESTAMPtimestamp
first_epVARCHAR集群 first ep
first_ep_dnode_idINT集群 first ep 的 dnode id
cluster_versionVARCHARtdengine version。例如:3.0.4.0
cluster_idVARCHARTAGcluster id

taosd_cluster_info 表

taosd_cluster_info 表记录集群信息。

fieldtypeis_tagcomment
tsTIMESTAMPtimestamp
cluster_uptimeDOUBLE当前 master 节点的uptime。单位:秒
dbs_totalDOUBLEdatabase 总数
tbs_totalDOUBLE当前集群 table 总数
stbs_totalDOUBLE当前集群 stable 总数
dnodes_totalDOUBLE当前集群 dnode 总数
dnodes_aliveDOUBLE当前集群 dnode 存活总数
mnodes_totalDOUBLE当前集群 mnode 总数
mnodes_aliveDOUBLE当前集群 mnode 存活总数
vgroups_totalDOUBLE当前集群 vgroup 总数
vgroups_aliveDOUBLE当前集群 vgroup 存活总数
vnodes_totalDOUBLE当前集群 vnode 总数
vnodes_aliveDOUBLE当前集群 vnode 存活总数
connections_totalDOUBLE当前集群连接总数
topics_totalDOUBLE当前集群 topic 总数
streams_totalDOUBLE当前集群 stream 总数
grants_expire_timeDOUBLE认证过期时间,企业版有效,社区版为 DOUBLE 最大值
grants_timeseries_usedDOUBLE已用测点数
grants_timeseries_totalDOUBLE总测点数,开源版本为 DOUBLE 最大值
cluster_idVARCHARTAGcluster id

taosd_vgroups_info 表

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

fieldtypeis_tagcomment
tsTIMESTAMPtimestamp
tables_numDOUBLEvgroup 中 table 数量
statusDOUBLEvgroup 状态, 取值范围:unsynced = 0, ready = 1
vgroup_idVARCHARTAGvgroup id
database_nameVARCHARTAGvgroup 所属的 database 名字
cluster_idVARCHARTAGcluster id

taosd_dnodes_info 表

taosd_dnodes_info 记录 dnode 信息。

fieldtypeis_tagcomment
tsTIMESTAMPtimestamp
uptimeDOUBLEdnode uptime,单位:秒
cpu_engineDOUBLEtaosd cpu 使用率,从 /proc/<taosd_pid>/stat 读取
cpu_systemDOUBLE服务器 cpu 使用率,从 /proc/stat 读取
cpu_coresDOUBLE服务器 cpu 核数
mem_engineDOUBLEtaosd 内存使用率,从 /proc/<taosd_pid>/status 读取
mem_freeDOUBLE服务器可用内存,单位 KB
mem_totalDOUBLE服务器内存总量,单位 KB
disk_usedDOUBLEdata dir 挂载的磁盘使用量,单位 bytes
disk_totalDOUBLEdata dir 挂载的磁盘总容量,单位 bytes
system_net_inDOUBLE网络吞吐率,从 /proc/net/dev 中读取的 received bytes。单位 byte/s
system_net_outDOUBLE网络吞吐率,从 /proc/net/dev 中读取的 transmit bytes。单位 byte/s
io_readDOUBLEio 吞吐率,从 /proc/<taosd_pid>/io 中读取的 rchar 与上次数值计算之后,计算得到速度。单位 byte/s
io_writeDOUBLEio 吞吐率,从 /proc/<taosd_pid>/io 中读取的 wchar 与上次数值计算之后,计算得到速度。单位 byte/s
io_read_diskDOUBLE磁盘 io 吞吐率,从 /proc/<taosd_pid>/io 中读取的 read_bytes。单位 byte/s
io_write_diskDOUBLE磁盘 io 吞吐率,从 /proc/<taosd_pid>/io 中读取的 write_bytes。单位 byte/s
vnodes_numDOUBLEdnode 上 vnodes 数量
mastersDOUBLEdnode 上 master node 数量
has_mnodeDOUBLEdnode 是否包含 mnode,取值范围:包含=1,不包含=0
has_qnodeDOUBLEdnode 是否包含 qnode,取值范围:包含=1,不包含=0
has_snodeDOUBLEdnode 是否包含 snode,取值范围:包含=1,不包含=0
has_bnodeDOUBLEdnode 是否包含 bnode,取值范围:包含=1,不包含=0
error_log_countDOUBLEerror 总数
info_log_countDOUBLEinfo 总数
debug_log_countDOUBLEdebug 总数
trace_log_countDOUBLEtrace 总数
dnode_idVARCHARTAGdnode id
dnode_epVARCHARTAGdnode endpoint
cluster_idVARCHARTAGcluster id

taosd_dnodes_status 表

taosd_dnodes_status 表记录 dnode 状态信息。

fieldtypeis_tagcomment
tsTIMESTAMPtimestamp
statusDOUBLEdnode 状态,取值范围:ready=1,offline =0
dnode_idVARCHARTAGdnode id
dnode_epVARCHARTAGdnode endpoint
cluster_idVARCHARTAGcluster id

taosd_dnodes_log_dir 表

taosd_dnodes_log_dir 表记录 log 目录信息。

fieldtypeis_tagcomment
tsTIMESTAMPtimestamp
availDOUBLElog 目录可用空间。单位 byte
usedDOUBLElog 目录已使用空间。单位 byte
totalDOUBLElog 目录空间。单位 byte
nameVARCHARTAGlog 目录名,一般为 /var/log/taos/
dnode_idVARCHARTAGdnode id
dnode_epVARCHARTAGdnode endpoint
cluster_idVARCHARTAGcluster id

taosd_dnodes_data_dir 表

taosd_dnodes_data_dir 表记录 data 目录信息。

fieldtypeis_tagcomment
tsTIMESTAMPtimestamp
availDOUBLEdata 目录可用空间。单位 byte
usedDOUBLEdata 目录已使用空间。单位 byte
totalDOUBLEdata 目录空间。单位 byte
levelVARCHARTAG0、1、2 多级存储级别
nameVARCHARTAGdata 目录,一般为 /var/lib/taos
dnode_idVARCHARTAGdnode id
dnode_epVARCHARTAGdnode endpoint
cluster_idVARCHARTAGcluster id

taosd_mnodes_info 表

taosd_mnodes_info 表记录 mnode 角色信息。

fieldtypeis_tagcomment
tsTIMESTAMPtimestamp
roleDOUBLEmnode 角色, 取值范围:offline = 0,follower = 100,candidate = 101,leader = 102,error = 103,learner = 104
mnode_idVARCHARTAGmaster node id
mnode_epVARCHARTAGmaster node endpoint
cluster_idVARCHARTAGcluster id

taosd_vnodes_role 表

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

fieldtypeis_tagcomment
tsTIMESTAMPtimestamp
vnode_roleDOUBLEvnode 角色,取值范围:offline = 0,follower = 100,candidate = 101,leader = 102,error = 103,learner = 104
vgroup_idVARCHARTAGdnode id
dnode_idVARCHARTAGdnode id
database_nameVARCHARTAGvgroup 所属的 database 名字
cluster_idVARCHARTAGcluster id

taosd_sql_req 表

taosd_sql_req 记录授权信息。

fieldtypeis_tagcomment
tsTIMESTAMPtimestamp
countDOUBLEsql 数量
resultVARCHARTAGsql的执行结果,取值范围:Success, Failed
usernameVARCHARTAG执行sql的user name
sql_typeVARCHARTAGsql类型,取值范围:inserted_rows
dnode_idVARCHARTAGdnode id
dnode_epVARCHARTAGdnode endpoint
vgroup_idVARCHARTAGdnode id
cluster_idVARCHARTAGcluster id

taos_sql_req 表

taos_sql_req 记录授权信息。

fieldtypeis_tagcomment
tsTIMESTAMPtimestamp
countDOUBLEsql 数量
resultVARCHARTAGsql的执行结果,取值范围:Success, Failed
usernameVARCHARTAG执行sql的user name
sql_typeVARCHARTAGsql类型,取值范围:select, insert,delete
cluster_idVARCHARTAGcluster id

taos_slow_sql 表

taos_slow_sql 记录授权信息。

fieldtypeis_tagcomment
tsTIMESTAMPtimestamp
countDOUBLEsql 数量
resultVARCHARTAGsql的执行结果,取值范围:Success, Failed
usernameVARCHARTAG执行sql的user name
durationVARCHARTAGsql执行耗时,取值范围:3-10s,10-100s,100-1000s,1000s-
cluster_idVARCHARTAGcluster id

keeper_monitor 表

keeper_monitor 记录 taoskeeper 监控数据。

fieldtypeis_tagcomment
tsTIMESTAMPtimestamp
cpuDOUBLEcpu 使用率
memDOUBLE内存使用率
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