taosAdapter
taosAdapter 是一個(gè) TDengine 的配套工具,是 TDengine 集群和應(yīng)用程序之間的橋梁和適配器。它提供了一種易于使用和高效的方式來(lái)直接從數(shù)據(jù)收集代理軟件(如 Telegraf、StatsD、collectd 等)攝取數(shù)據(jù)。它還提供了 InfluxDB/OpenTSDB 兼容的數(shù)據(jù)攝取接口,允許 InfluxDB/OpenTSDB 應(yīng)用程序無(wú)縫移植到 TDengine。
taosAdapter提供以下功能:
- RESTful 接口
- 兼容 InfluxDB v1寫(xiě)接口
- 兼容 OpenTSDB JSON 和 telnet 格式寫(xiě)入
- 無(wú)縫連接到 Telegraf
- 無(wú)縫連接到 collectd
- 無(wú)縫連接到 StatsD
- 支持 Prometheus remote_read 和 remote_write
taosAdapter 架構(gòu)圖

taosAdapter 部署方法
安裝 taosAdapter
taosAdapter 從 TDengine v2.4.0.0 版本開(kāi)始成為 TDengine 服務(wù)端軟件 的一部分,如果您使用 TDengine server 您不需要任何額外的步驟來(lái)安裝 taosAdapter。您可以從濤思數(shù)據(jù)官方網(wǎng)站下載TDengine server(taosAdapter 包含在 v2.4.0.0 及以上版本)安裝包。如果需要將 taosAdapter 分離部署在 TDengine server 之外的服務(wù)器上,則應(yīng)該在該服務(wù)器上安裝完整的 TDengine 來(lái)安裝 taosAdapter。如果您需要使用源代碼編譯生成 taosAdapter,您可以參考構(gòu)建 taosAdapter文檔。
start/stop taosAdapter
在 Linux 系統(tǒng)上 taosAdapter 服務(wù)默認(rèn)由 systemd 管理。使用命令 systemctl start taosadapter 可以啟動(dòng) taosAdapter 服務(wù)。使用命令 systemctl stop taosadapter 可以停止 taosAdapter 服務(wù)。
移除 taosAdapter
使用命令 rmtaos 可以移除包括 taosAdapter 在內(nèi)的 TDengine server 軟件。
升級(jí) taosAdapter
taosAdapter 和 TDengine server 需要使用相同版本。請(qǐng)通過(guò)升級(jí) TDengine server 來(lái)升級(jí) taosAdapter。 與taosd分離部署的taosAdapter必須通過(guò)升級(jí)其所在服務(wù)器的TDengine server才能得到升級(jí)。
taosAdapter 參數(shù)列表
taosAdapter 支持通過(guò)命令行參數(shù)、環(huán)境變量和配置文件來(lái)進(jìn)行配置。默認(rèn)配置文件是 /etc/taos/taosadapter.toml。
命令行參數(shù)優(yōu)先于環(huán)境變量?jī)?yōu)先于配置文件,命令行用法是arg=val,如 taosadapter -p=30000 --debug=true,詳細(xì)列表如下:
Usage of taosAdapter:
--collectd.db string collectd db name. Env "TAOS_ADAPTER_COLLECTD_DB" (default "collectd")
--collectd.enable enable collectd. Env "TAOS_ADAPTER_COLLECTD_ENABLE" (default true)
--collectd.password string collectd password. Env "TAOS_ADAPTER_COLLECTD_PASSWORD" (default "taosdata")
--collectd.port int collectd server port. Env "TAOS_ADAPTER_COLLECTD_PORT" (default 6045)
--collectd.user string collectd user. Env "TAOS_ADAPTER_COLLECTD_USER" (default "root")
--collectd.worker int collectd write worker. Env "TAOS_ADAPTER_COLLECTD_WORKER" (default 10)
-c, --config string config path default /etc/taos/taosadapter.toml
--cors.allowAllOrigins cors allow all origins. Env "TAOS_ADAPTER_CORS_ALLOW_ALL_ORIGINS" (default true)
--cors.allowCredentials cors allow credentials. Env "TAOS_ADAPTER_CORS_ALLOW_Credentials"
--cors.allowHeaders stringArray cors allow HEADERS. Env "TAOS_ADAPTER_ALLOW_HEADERS"
--cors.allowOrigins stringArray cors allow origins. Env "TAOS_ADAPTER_ALLOW_ORIGINS"
--cors.allowWebSockets cors allow WebSockets. Env "TAOS_ADAPTER_CORS_ALLOW_WebSockets"
--cors.exposeHeaders stringArray cors expose headers. Env "TAOS_ADAPTER_Expose_Headers"
--debug enable debug mode. Env "TAOS_ADAPTER_DEBUG"
--help Print this help message and exit
--influxdb.enable enable influxdb. Env "TAOS_ADAPTER_INFLUXDB_ENABLE" (default true)
--log.path string log path. Env "TAOS_ADAPTER_LOG_PATH" (default "/var/log/taos")
--log.rotationCount uint log rotation count. Env "TAOS_ADAPTER_LOG_ROTATION_COUNT" (default 30)
--log.rotationSize string log rotation size(KB MB GB), must be a positive integer. Env "TAOS_ADAPTER_LOG_ROTATION_SIZE" (default "1GB")
--log.rotationTime duration log rotation time. Env "TAOS_ADAPTER_LOG_ROTATION_TIME" (default 24h0m0s)
--logLevel string log level (panic fatal error warn warning info debug trace). Env "TAOS_ADAPTER_LOG_LEVEL" (default "info")
--monitor.collectDuration duration Set monitor duration. Env "TAOS_MONITOR_COLLECT_DURATION" (default 3s)
--monitor.identity string The identity of the current instance, or 'hostname:port' if it is empty. Env "TAOS_MONITOR_IDENTITY"
--monitor.incgroup Whether running in cgroup. Env "TAOS_MONITOR_INCGROUP"
--monitor.password string TDengine password. Env "TAOS_MONITOR_PASSWORD" (default "taosdata")
--monitor.pauseAllMemoryThreshold float Memory percentage threshold for pause all. Env "TAOS_MONITOR_PAUSE_ALL_MEMORY_THRESHOLD" (default 80)
--monitor.pauseQueryMemoryThreshold float Memory percentage threshold for pause query. Env "TAOS_MONITOR_PAUSE_QUERY_MEMORY_THRESHOLD" (default 70)
--monitor.user string TDengine user. Env "TAOS_MONITOR_USER" (default "root")
--monitor.writeInterval duration Set write to TDengine interval. Env "TAOS_MONITOR_WRITE_INTERVAL" (default 30s)
--monitor.writeToTD Whether write metrics to TDengine. Env "TAOS_MONITOR_WRITE_TO_TD" (default true)
--node_exporter.caCertFile string node_exporter ca cert file path. Env "TAOS_ADAPTER_NODE_EXPORTER_CA_CERT_FILE"
--node_exporter.certFile string node_exporter cert file path. Env "TAOS_ADAPTER_NODE_EXPORTER_CERT_FILE"
--node_exporter.db string node_exporter db name. Env "TAOS_ADAPTER_NODE_EXPORTER_DB" (default "node_exporter")
--node_exporter.enable enable node_exporter. Env "TAOS_ADAPTER_NODE_EXPORTER_ENABLE"
--node_exporter.gatherDuration duration node_exporter gather duration. Env "TAOS_ADAPTER_NODE_EXPORTER_GATHER_DURATION" (default 5s)
--node_exporter.httpBearerTokenString string node_exporter http bearer token. Env "TAOS_ADAPTER_NODE_EXPORTER_HTTP_BEARER_TOKEN_STRING"
--node_exporter.httpPassword string node_exporter http password. Env "TAOS_ADAPTER_NODE_EXPORTER_HTTP_PASSWORD"
--node_exporter.httpUsername string node_exporter http username. Env "TAOS_ADAPTER_NODE_EXPORTER_HTTP_USERNAME"
--node_exporter.insecureSkipVerify node_exporter skip ssl check. Env "TAOS_ADAPTER_NODE_EXPORTER_INSECURE_SKIP_VERIFY" (default true)
--node_exporter.keyFile string node_exporter cert key file path. Env "TAOS_ADAPTER_NODE_EXPORTER_KEY_FILE"
--node_exporter.password string node_exporter password. Env "TAOS_ADAPTER_NODE_EXPORTER_PASSWORD" (default "taosdata")
--node_exporter.responseTimeout duration node_exporter response timeout. Env "TAOS_ADAPTER_NODE_EXPORTER_RESPONSE_TIMEOUT" (default 5s)
--node_exporter.urls strings node_exporter urls. Env "TAOS_ADAPTER_NODE_EXPORTER_URLS" (default [http://localhost:9100])
--node_exporter.user string node_exporter user. Env "TAOS_ADAPTER_NODE_EXPORTER_USER" (default "root")
--opentsdb.enable enable opentsdb. Env "TAOS_ADAPTER_OPENTSDB_ENABLE" (default true)
--opentsdb_telnet.dbs strings opentsdb_telnet db names. Env "TAOS_ADAPTER_OPENTSDB_TELNET_DBS" (default [opentsdb_telnet,collectd_tsdb,icinga2_tsdb,tcollector_tsdb])
--opentsdb_telnet.enable enable opentsdb telnet,warning: without auth info(default false). Env "TAOS_ADAPTER_OPENTSDB_TELNET_ENABLE"
--opentsdb_telnet.maxTCPConnections int max tcp connections. Env "TAOS_ADAPTER_OPENTSDB_TELNET_MAX_TCP_CONNECTIONS" (default 250)
--opentsdb_telnet.password string opentsdb_telnet password. Env "TAOS_ADAPTER_OPENTSDB_TELNET_PASSWORD" (default "taosdata")
--opentsdb_telnet.ports ints opentsdb telnet tcp port. Env "TAOS_ADAPTER_OPENTSDB_TELNET_PORTS" (default [6046,6047,6048,6049])
--opentsdb_telnet.tcpKeepAlive enable tcp keep alive. Env "TAOS_ADAPTER_OPENTSDB_TELNET_TCP_KEEP_ALIVE"
--opentsdb_telnet.user string opentsdb_telnet user. Env "TAOS_ADAPTER_OPENTSDB_TELNET_USER" (default "root")
--pool.idleTimeout duration Set idle connection timeout. Env "TAOS_ADAPTER_POOL_IDLE_TIMEOUT" (default 1h0m0s)
--pool.maxConnect int max connections to taosd. Env "TAOS_ADAPTER_POOL_MAX_CONNECT" (default 4000)
--pool.maxIdle int max idle connections to taosd. Env "TAOS_ADAPTER_POOL_MAX_IDLE" (default 4000)
-P, --port int http port. Env "TAOS_ADAPTER_PORT" (default 6041)
--prometheus.enable enable prometheus. Env "TAOS_ADAPTER_PROMETHEUS_ENABLE" (default true)
--restfulRowLimit int restful returns the maximum number of rows (-1 means no limit). Env "TAOS_ADAPTER_RESTFUL_ROW_LIMIT" (default -1)
--ssl.certFile string ssl cert file path. Env "TAOS_ADAPTER_SSL_CERT_FILE"
--ssl.enable enable ssl. Env "TAOS_ADAPTER_SSL_ENABLE"
--ssl.keyFile string ssl key file path. Env "TAOS_ADAPTER_SSL_KEY_FILE"
--statsd.allowPendingMessages int statsd allow pending messages. Env "TAOS_ADAPTER_STATSD_ALLOW_PENDING_MESSAGES" (default 50000)
--statsd.db string statsd db name. Env "TAOS_ADAPTER_STATSD_DB" (default "statsd")
--statsd.deleteCounters statsd delete counter cache after gather. Env "TAOS_ADAPTER_STATSD_DELETE_COUNTERS" (default true)
--statsd.deleteGauges statsd delete gauge cache after gather. Env "TAOS_ADAPTER_STATSD_DELETE_GAUGES" (default true)
--statsd.deleteSets statsd delete set cache after gather. Env "TAOS_ADAPTER_STATSD_DELETE_SETS" (default true)
--statsd.deleteTimings statsd delete timing cache after gather. Env "TAOS_ADAPTER_STATSD_DELETE_TIMINGS" (default true)
--statsd.enable enable statsd. Env "TAOS_ADAPTER_STATSD_ENABLE" (default true)
--statsd.gatherInterval duration statsd gather interval. Env "TAOS_ADAPTER_STATSD_GATHER_INTERVAL" (default 5s)
--statsd.maxTCPConnections int statsd max tcp connections. Env "TAOS_ADAPTER_STATSD_MAX_TCP_CONNECTIONS" (default 250)
--statsd.password string statsd password. Env "TAOS_ADAPTER_STATSD_PASSWORD" (default "taosdata")
--statsd.port int statsd server port. Env "TAOS_ADAPTER_STATSD_PORT" (default 6044)
--statsd.protocol string statsd protocol [tcp or udp]. Env "TAOS_ADAPTER_STATSD_PROTOCOL" (default "udp")
--statsd.tcpKeepAlive enable tcp keep alive. Env "TAOS_ADAPTER_STATSD_TCP_KEEP_ALIVE"
--statsd.user string statsd user. Env "TAOS_ADAPTER_STATSD_USER" (default "root")
--statsd.worker int statsd write worker. Env "TAOS_ADAPTER_STATSD_WORKER" (default 10)
--taosConfigDir string load taos client config path. Env "TAOS_ADAPTER_TAOS_CONFIG_FILE"
--version Print the version and exit
備注: 使用瀏覽器進(jìn)行接口調(diào)用請(qǐng)根據(jù)實(shí)際情況設(shè)置如下跨源資源共享(CORS)參數(shù):
AllowAllOrigins
AllowOrigins
AllowHeaders
ExposeHeaders
AllowCredentials
AllowWebSockets
如果不通過(guò)瀏覽器進(jìn)行接口調(diào)用無(wú)需關(guān)心這幾項(xiàng)配置。
關(guān)于 CORS 協(xié)議細(xì)節(jié)請(qǐng)參考:https://www.w3.org/wiki/CORS_Enabled 或 https://developer.mozilla.org/zh-CN/docs/Web/HTTP/CORS。
示例配置文件參見(jiàn) example/config/taosadapter.toml。
功能列表
- 與 RESTful 接口兼容 http://m.fjzmyy.cn/cn/documentation/connector#restful
- 兼容 InfluxDB v1 寫(xiě)接口 https://docs.influxdata.com/influxdb/v2.0/reference/api/influxdb-1x/write/
- 兼容 OpenTSDB JSON 和 telnet 格式寫(xiě)入
- 與collectd無(wú)縫連接 collectd 是一個(gè)系統(tǒng)統(tǒng)計(jì)收集守護(hù)程序,請(qǐng)?jiān)L問(wèn) https://collectd.org/ 了解更多信息。
- Seamless connection with StatsD StatsD 是一個(gè)簡(jiǎn)單而強(qiáng)大的統(tǒng)計(jì)信息匯總的守護(hù)程序。請(qǐng)?jiān)L問(wèn) https://github.com/statsd/statsd 了解更多信息。
- 與 icinga2 的無(wú)縫連接 icinga2 是一個(gè)收集檢查結(jié)果指標(biāo)和性能數(shù)據(jù)的軟件。請(qǐng)?jiān)L問(wèn) https://icinga.com/docs/icinga-2/latest/doc/14-features/#opentsdb-writer 了解更多信息。
- 與 tcollector 無(wú)縫連接 TCollector是一個(gè)客戶端進(jìn)程,從本地收集器收集數(shù)據(jù),并將數(shù)據(jù)推送到OpenTSDB。請(qǐng)?jiān)L問(wèn) http://opentsdb.net/docs/build/html/user_guide/utilities/tcollector.html 了解更多信息。
- 無(wú)縫連接 node_exporter node_export 是一個(gè)機(jī)器指標(biāo)的導(dǎo)出器。請(qǐng)?jiān)L問(wèn) https://github.com/prometheus/node_exporter 了解更多信息。
- 支持 Prometheus remote_read 和 remote_write remote_read 和 remote_write 是 Prometheus 數(shù)據(jù)讀寫(xiě)分離的集群方案。請(qǐng)?jiān)L問(wèn)https://prometheus.io/blog/2019/10/10/remote-read-meets-streaming/#remote-apis 了解更多信息。
接口
TDengine RESTful 接口
您可以使用任何支持 http 協(xié)議的客戶端通過(guò)訪問(wèn) RESTful 接口地址 http://<fqdn>:6041/<APIEndPoint> 來(lái)寫(xiě)入數(shù)據(jù)到 TDengine 或從 TDengine 中查詢數(shù)據(jù)。細(xì)節(jié)請(qǐng)參考官方文檔。支持如下 EndPoint :
/rest/sql
/rest/sqlt
/rest/sqlutc
InfluxDB
您可以使用任何支持 http 協(xié)議的客戶端訪問(wèn) Restful 接口地址 http://<fqdn>:6041/<APIEndPoint> 來(lái)寫(xiě)入 InfluxDB 兼容格式的數(shù)據(jù)到 TDengine。EndPoint 如下:
/influxdb/v1/write
支持 InfluxDB 查詢參數(shù)如下:
db指定 TDengine 使用的數(shù)據(jù)庫(kù)名precisionTDengine 使用的時(shí)間精度uTDengine 用戶名pTDengine 密碼
注意: 目前不支持 InfluxDB 的 token 驗(yàn)證方式只支持 Basic 驗(yàn)證和查詢參數(shù)驗(yàn)證。
OpenTSDB
您可以使用任何支持 http 協(xié)議的客戶端訪問(wèn) Restful 接口地址 http://<fqdn>:6041/<APIEndPoint> 來(lái)寫(xiě)入 OpenTSDB 兼容格式的數(shù)據(jù)到 TDengine。EndPoint 如下:
/opentsdb/v1/put/json/<db>
/opentsdb/v1/put/telnet/<db>
collectd
直接采集
修改 collectd 配置文件 /etc/collectd/collectd.conf,taosAdapter 默認(rèn)使用端口 6045 來(lái)接收 collectd 直接采集方式的數(shù)據(jù)。
LoadPlugin network
<Plugin network>
Server "127.0.0.1" "6045"
</Plugin>
tsdb 寫(xiě)入方式
修改 collectd 配置文件 /etc/collectd/collectd.conf,taosAdapter 默認(rèn)使用端口 6047 來(lái)接收 collectd tsdb 寫(xiě)入方式的數(shù)據(jù)。
LoadPlugin write_tsdb
<Plugin write_tsdb>
<Node>
Host "localhost"
Port "6047"
HostTags "status=production"
StoreRates false
AlwaysAppendDS false
</Node>
</Plugin>
StatsD
修改 StatsD 配置文件 config.js,taosAdapter 默認(rèn)使用 6044 端口接收 StatsD 的寫(xiě)入數(shù)據(jù)。
backendsadd"./backends/repeater"repeateradd{ host:'host to taosAdapter', port: 6044}
配置文件示例
{
port: 8125,
backends: ["./backends/repeater"],
repeater: [{ host: '127.0.0.1', port: 6044}]
}
icinga2 OpenTSDB writer
使用 icinga2 收集監(jiān)控?cái)?shù)據(jù)的方法參見(jiàn):
- 參考文檔: opentsdb-writer https://icinga.com/docs/icinga-2/latest/doc/14-features/#opentsdb-writer
- 使能 taosAdapter
opentsdb_telnet.enable來(lái)支持寫(xiě)入 - 修改配置文件
/etc/icinga2/features-enabled/opentsdb.conf, taosAdapter 默認(rèn)使用 6048 端口接收 icinga2 的數(shù)據(jù)。
object OpenTsdbWriter "opentsdb" {
host = "host to taosAdapter"
port = 6048
}
TCollector
Tcollector 是一個(gè)客戶端進(jìn)程,它從本地收集器中收集數(shù)據(jù)并將數(shù)據(jù)推送到 OpenTSDB。您在您的所有主機(jī)上運(yùn)行它,它完成將每個(gè)主機(jī)的數(shù)據(jù)發(fā)送到 TSD (OpenTSDB 后臺(tái)服務(wù)進(jìn)程)的工作。
- 啟用 taosAdapter 配置 opentsdb_telnet.enable
- 修改 TCollector 配置文件,將 OpenTSDB 主機(jī)修改為部署 taosAdapter 的主機(jī),并修改端口為6049
node_exporter
Prometheus 使用的由*NIX內(nèi)核暴露的硬件和操作系統(tǒng)指標(biāo)的輸出器
- 啟用 taosAdapter 的配置 node_exporter.enable
- 設(shè)置 node_exporter 的相關(guān)配置
- 重新啟動(dòng) taosAdapter
prometheus
remote_read 和 remote_write 是 Prometheus 數(shù)據(jù)讀寫(xiě)分離的集群方案。 只需要將 remote_read 和 remote_write url 指向 taosAdapter 對(duì)應(yīng)的 url 同時(shí)設(shè)置 Basic 驗(yàn)證即可使用。
- remote_read url :
http://host_to_taosAdapter:port(default 6041)/prometheus/v1/remote_read/:db - remote_write url :
http://host_to_taosAdapter:port(default 6041)/prometheus/v1/remote_write/:db
Basic驗(yàn)證:
- username: TDengine 連接用戶名
- password: TDengine 連接密碼
示例 prometheus.yml 如下:
remote_write:
- url: "http://localhost:6041/prometheus/v1/remote_write/prometheus_data"
basic_auth:
username: root
password: taosdata
remote_read:
- url: "http://localhost:6041/prometheus/v1/remote_read/prometheus_data"
basic_auth:
username: root
password: taosdata
remote_timeout: 10s
read_recent: true
內(nèi)存使用優(yōu)化方法
taosAdapter 將監(jiān)測(cè)自身運(yùn)行過(guò)程中內(nèi)存使用率并通過(guò)兩個(gè)閾值進(jìn)行調(diào)節(jié)。有效值范圍為 -1 到 100 的整數(shù),單位為系統(tǒng)物理內(nèi)存的百分比。
- pauseQueryMemoryThreshold
- pauseAllMemoryThreshold
當(dāng)超過(guò) pauseQueryMemoryThreshold 閾值時(shí)時(shí)停止處理查詢請(qǐng)求。
http 返回內(nèi)容:
- code 503
- body "query memory exceeds threshold"
當(dāng)超過(guò) pauseAllMemoryThreshold 閾值時(shí)停止處理所有寫(xiě)入和查詢請(qǐng)求。
http 返回內(nèi)容:
- code 503
- body "memory exceeds threshold"
當(dāng)內(nèi)存回落到閾值之下時(shí)恢復(fù)對(duì)應(yīng)功能。
狀態(tài)檢查接口 http://<fqdn>:6041/-/ping
- 正常返回
code 200 - 無(wú)參數(shù) 如果內(nèi)存超過(guò) pauseAllMemoryThreshold 將返回
code 503 - 請(qǐng)求參數(shù)
action=query如果內(nèi)存超過(guò) pauseQueryMemoryThreshold 或 pauseAllMemoryThreshold 將返回code 503
對(duì)應(yīng)配置參數(shù)
monitor.collectDuration 監(jiān)測(cè)間隔 環(huán)境變量 "TAOS_MONITOR_COLLECT_DURATION" (默認(rèn)值 3s)
monitor.incgroup 是否是cgroup中運(yùn)行(容器中運(yùn)行設(shè)置為 true) 環(huán)境變量 "TAOS_MONITOR_INCGROUP"
monitor.pauseAllMemoryThreshold 不再進(jìn)行插入和查詢的內(nèi)存閾值 環(huán)境變量 "TAOS_MONITOR_PAUSE_ALL_MEMORY_THRESHOLD" (默認(rèn)值 80)
monitor.pauseQueryMemoryThreshold 不再進(jìn)行查詢的內(nèi)存閾值 環(huán)境變量 "TAOS_MONITOR_PAUSE_QUERY_MEMORY_THRESHOLD" (默認(rèn)值 70)
您可以根據(jù)具體項(xiàng)目應(yīng)用場(chǎng)景和運(yùn)營(yíng)策略進(jìn)行相應(yīng)調(diào)整,并建議使用運(yùn)營(yíng)監(jiān)控軟件及時(shí)進(jìn)行系統(tǒng)內(nèi)存狀態(tài)監(jiān)控。負(fù)載均衡器也可以通過(guò)這個(gè)接口檢查 taosAdapter 運(yùn)行狀態(tài)。
taosAdapter 監(jiān)控指標(biāo)
taosAdapter 采集 http 相關(guān)指標(biāo)、cpu 百分比和內(nèi)存百分比。
http 接口
提供符合 OpenMetrics 接口:
http://<fqdn>:6041/metrics
寫(xiě)入 TDengine
taosAdapter 支持將 http 監(jiān)控、cpu 百分比和內(nèi)存百分比寫(xiě)入 TDengine。
有關(guān)配置參數(shù)
| 配置項(xiàng) | 描述 | 默認(rèn)值 |
|---|---|---|
| monitor.collectDuration | cpu 和內(nèi)存采集間隔 | 3s |
| monitor.identity | 當(dāng)前taosadapter 的標(biāo)識(shí)符如果不設(shè)置將使用 'hostname:port' | |
| monitor.incgroup | 是否是 cgroup 中運(yùn)行(容器中運(yùn)行設(shè)置為 true) | false |
| monitor.writeToTD | 是否寫(xiě)入到 TDengine | true |
| monitor.user | TDengine 連接用戶名 | root |
| monitor.password | TDengine 連接密碼 | taosdata |
| monitor.writeInterval | 寫(xiě)入TDengine 間隔 | 30s |
結(jié)果返回條數(shù)限制
taosAdapter 通過(guò)參數(shù) restfulRowLimit 來(lái)控制結(jié)果的返回條數(shù),-1 代表無(wú)限制,默認(rèn)無(wú)限制。
該參數(shù)控制以下接口返回
http://<fqdn>:6041/rest/sqlhttp://<fqdn>:6041/rest/sqlthttp://<fqdn>:6041/rest/sqlutchttp://<fqdn>:6041/prometheus/v1/remote_read/:db
故障解決
您可以通過(guò)命令 systemctl status taosadapter 來(lái)檢查 taosAdapter 運(yùn)行狀態(tài)。
您也可以通過(guò)設(shè)置 --logLevel 參數(shù)或者環(huán)境變量 TAOS_ADAPTER_LOG_LEVEL 來(lái)調(diào)節(jié) taosAdapter 日志輸出詳細(xì)程度。有效值包括: panic、fatal、error、warn、warning、info、debug以及trace。
如何從舊版本 TDengine 遷移到 taosAdapter
在 TDengine server 2.2.x.x 或更早期版本中,taosd 進(jìn)程包含一個(gè)內(nèi)嵌的 http 服務(wù)。如前面所述,taosAdapter 是一個(gè)使用 systemd 管理的獨(dú)立軟件,擁有自己的進(jìn)程。并且兩者有一些配置參數(shù)和行為是不同的,請(qǐng)見(jiàn)下表:
| # | embedded httpd | taosAdapter | comment |
|---|---|---|---|
| 1 | httpEnableRecordSql | --logLevel=debug | |
| 2 | httpMaxThreads | n/a | taosAdapter 自動(dòng)管理線程池,無(wú)需此參數(shù) |
| 3 | telegrafUseFieldNum | 請(qǐng)參考 taosAdapter telegraf 配置方法 | |
| 4 | restfulRowLimit | restfulRowLimit | 內(nèi)嵌 httpd 默認(rèn)輸出 10240 行數(shù)據(jù),最大允許值為 102400。taosAdapter 也提供 restfulRowLimit 但是默認(rèn)不做限制。您可以根據(jù)實(shí)際場(chǎng)景需求進(jìn)行配置 |
| 5 | httpDebugFlag | 不適用 | httpdDebugFlag 對(duì) taosAdapter 不起作用 |
| 6 | httpDBNameMandatory | 不適用 | taosAdapter 要求 URL 中必須指定數(shù)據(jù)庫(kù)名 |

