From e3a0fb45373476f79fffa85ea7ca1b5b068fcb09 Mon Sep 17 00:00:00 2001 From: aias00 Date: Wed, 7 Aug 2024 23:16:46 +0800 Subject: [PATCH] [improve] add vastbase template (#2487) --- .../main/resources/define/app-vastbase.yml | 753 ++++++++++++++++++ 1 file changed, 753 insertions(+) create mode 100644 manager/src/main/resources/define/app-vastbase.yml diff --git a/manager/src/main/resources/define/app-vastbase.yml b/manager/src/main/resources/define/app-vastbase.yml new file mode 100644 index 0000000000..951615ed95 --- /dev/null +++ b/manager/src/main/resources/define/app-vastbase.yml @@ -0,0 +1,753 @@ +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. +# The ASF licenses this file to You under the Apache License, Version 2.0 +# (the "License"); you may not use this file except in compliance with +# the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# The monitoring type category:service-application service monitoring db-database monitoring custom-custom monitoring os-operating system monitoring +category: db +# The monitoring type eg: linux windows tomcat mysql aws... +app: vastbase +# The monitoring i18n name +name: + zh-CN: Vastbase数据库 + en-US: Vastbase DB +# The description and help of this monitoring type +help: + zh-CN: HertzBeat 使用 JDBC 协议 通过配置 SQL 对 Vastbase 数据库的通用性能指标 (basic、state、activity etc) 进行采集监控,支持版本为 Vastbase 9.2.4+。
您可以点击“新建 Vastbase 数据库”并进行配置,或者选择“更多操作”,导入已有配置。 + en-US: HertzBeat uses JDBC Protocol to configure SQL for collecting general metrics of Vastbase database (basic、state、activity etc). Supported version is Vastbase 9.2.4+.
You can click "New Vastbase Database" and configure it, or select "More Action" to import the existing configuration. + zh-TW: HertzBeat 使用 JDBC 協議 通過配置 SQL 對 Vastbase 數據庫的通用性能指標 (basic、state、activity etc)進行采集監控,支持版本爲 Vastbase 9.2.4+。
您可以點擊“新建 Vastbase 數據庫”並進行配置,或者選擇“更多操作”,導入已有配置。 +helpLink: + zh-CN: https://hertzbeat.apache.org/zh-cn/docs/help/vastbase + en-US: https://hertzbeat.apache.org/docs/help/vastbase +# Input params define for monitoring(render web ui by the definition) +params: + # field-param field key + - field: host + # name-param field display i18n name + name: + zh-CN: 目标Host + en-US: Target Host + # type-param field type(most mapping the html input type) + type: host + # required-true or false + required: true + # field-param field key + - field: port + # name-param field display i18n name + name: + zh-CN: 端口 + en-US: Port + # type-param field type(most mapping the html input type) + type: number + # when type is number, range is required + range: '[0,65535]' + # required-true or false + required: true + # default value + defaultValue: 5432 + - field: timeout + name: + zh-CN: 查询超时时间(ms) + en-US: Query Timeout(ms) + type: number + range: '[400,200000]' + required: false + hide: true + defaultValue: 6000 + - field: database + name: + zh-CN: 数据库名称 + en-US: Database Name + type: text + defaultValue: postgres + required: false + - field: username + name: + zh-CN: 用户名 + en-US: Username + type: text + limit: 50 + required: false + - field: password + name: + zh-CN: 密码 + en-US: Password + type: password + required: false + - field: url + name: + zh-CN: URL + en-US: URL + type: text + required: false + hide: true + +# collect metrics config list +metrics: + # metrics - basic + - name: basic + i18n: + zh-CN: 基本信息 + en-US: Basic Info + # metrics scheduling priority(0->127)->(high->low), metrics with the same priority will be scheduled in parallel + # priority 0's metrics is availability metrics, it will be scheduled first, only availability metrics collect success will the scheduling continue + priority: 0 + # collect metrics content + fields: + # field-metric name, type-metric type(0-number,1-string), unit-metric unit('%','ms','MB'), label-whether it is a metrics label field + - field: server_version + type: 1 + label: true + i18n: + zh-CN: 服务器版本 + en-US: Server Version + - field: port + type: 1 + i18n: + zh-CN: 端口 + en-US: Port + - field: server_encoding + type: 1 + i18n: + zh-CN: 服务器编码 + en-US: Server Encoding + - field: data_directory + type: 1 + i18n: + zh-CN: 数据目录 + en-US: Data Directory + - field: max_connections + type: 0 + i18n: + zh-CN: 最大连接数 + en-US: Max Connections + # the protocol used for monitoring, eg: sql, ssh, http, telnet, wmi, snmp, sdk + protocol: jdbc + # the config content when protocol is jdbc + jdbc: + # host: ipv4 ipv6 host + host: ^_^host^_^ + port: ^_^port^_^ + timeout: ^_^timeout^_^ + # database platform name + platform: postgresql + username: ^_^username^_^ + password: ^_^password^_^ + database: ^_^database^_^ + # SQL Query Method:oneRow, multiRow, columns + queryType: columns + # sql + sql: select name, setting as value from pg_settings where name = 'max_connections' or name = 'server_version' or name = 'server_encoding' or name = 'port' or name = 'data_directory'; + # JDBC url + url: ^_^url^_^ + + - name: state + i18n: + zh-CN: 状态信息 + en-US: State Info + priority: 1 + fields: + - field: db_name + type: 1 + label: true + i18n: + zh-CN: 数据库名称 + en-US: Database Name + - field: conflicts + type: 0 + unit: times + i18n: + zh-CN: 冲突次数 + en-US: Conflicts + - field: deadlocks + type: 0 + unit: times + i18n: + zh-CN: 死锁次数 + en-US: Deadlocks + - field: blks_read + type: 0 + unit: blocks per second + i18n: + zh-CN: 读取块 + en-US: Blocks Read + - field: blks_hit + type: 0 + unit: blocks per second + i18n: + zh-CN: 命中块 + en-US: Blocks Hit + - field: blk_read_time + type: 0 + unit: ms + i18n: + zh-CN: 读取时间 + en-US: Read Time + - field: blk_write_time + type: 0 + unit: ms + i18n: + zh-CN: 写入时间 + en-US: Write Time + - field: stats_reset + type: 1 + i18n: + zh-CN: 统计重置 + en-US: Stats Reset + protocol: jdbc + jdbc: + host: ^_^host^_^ + port: ^_^port^_^ + timeout: ^_^timeout^_^ + platform: postgresql + username: ^_^username^_^ + password: ^_^password^_^ + database: ^_^database^_^ + queryType: multiRow + sql: SELECT COALESCE(datname,'shared-object') as db_name, conflicts, deadlocks, blks_read, blks_hit, blk_read_time, blk_write_time, stats_reset from pg_stat_database where (datname != 'template1' and datname != 'template0') or datname is null; + url: ^_^url^_^ + + - name: activity + i18n: + zh-CN: 活动信息 + en-US: Activity Info + priority: 2 + fields: + - field: running + type: 0 + unit: sbc + i18n: + zh-CN: 运行中 + en-US: Running + protocol: jdbc + jdbc: + host: ^_^host^_^ + port: ^_^port^_^ + timeout: ^_^timeout^_^ + platform: postgresql + username: ^_^username^_^ + password: ^_^password^_^ + database: ^_^database^_^ + queryType: oneRow + sql: SELECT count(*) as running FROM pg_stat_activity WHERE NOT pid=pg_backend_pid(); + url: ^_^url^_^ + + - name: resource_config + i18n: + zh-CN: 资源配置 + en-US: Resource Config + priority: 1 + fields: + - field: work_mem + type: 0 + unit: MB + i18n: + zh-CN: 工作内存 + en-US: Work Memory + - field: shared_buffers + type: 0 + unit: MB + i18n: + zh-CN: 共享缓冲区 + en-US: Shared Buffers + - field: autovacuum + type: 1 + i18n: + zh-CN: 自动清理 + en-US: Auto Vacuum + - field: max_connections + type: 0 + i18n: + zh-CN: 最大连接数 + en-US: Max Connections + - field: effective_cache_size + type: 0 + unit: MB + i18n: + zh-CN: 有效缓存大小 + en-US: Effective Cache Size + - field: wal_buffers + type: 0 + unit: MB + i18n: + zh-CN: WAL缓冲区 + en-US: WAL Buffers + protocol: jdbc + jdbc: + host: ^_^host^_^ + port: ^_^port^_^ + timeout: ^_^timeout^_^ + platform: postgresql + username: ^_^username^_^ + password: ^_^password^_^ + database: ^_^database^_^ + queryType: columns + sql: show all; + url: ^_^url^_^ + + - name: connection + i18n: + zh-CN: 连接信息 + en-US: Connection Info + priority: 1 + fields: + - field: active + type: 0 + i18n: + zh-CN: 活动连接 + en-US: Active Connection + protocol: jdbc + jdbc: + host: ^_^host^_^ + port: ^_^port^_^ + timeout: ^_^timeout^_^ + platform: postgresql + username: ^_^username^_^ + password: ^_^password^_^ + database: ^_^database^_^ + queryType: oneRow + sql: select count(1) as active from pg_stat_activity; + url: ^_^url^_^ + + - name: connection_state + i18n: + zh-CN: 连接状态 + en-US: Connection State + priority: 1 + fields: + - field: state + type: 1 + label: true + i18n: + zh-CN: 状态 + en-US: State + - field: num + type: 0 + i18n: + zh-CN: 数量 + en-US: Num + protocol: jdbc + jdbc: + host: ^_^host^_^ + port: ^_^port^_^ + timeout: ^_^timeout^_^ + platform: postgresql + username: ^_^username^_^ + password: ^_^password^_^ + database: ^_^database^_^ + queryType: multiRow + sql: select COALESCE(state, 'other') as state, count(*) as num from pg_stat_activity group by state; + url: ^_^url^_^ + + - name: connection_db + i18n: + zh-CN: 连接数据库 + en-US: Connection Db + priority: 1 + fields: + - field: db_name + type: 1 + label: true + i18n: + zh-CN: 数据库名称 + en-US: Database Name + - field: active + type: 0 + i18n: + zh-CN: 活动连接 + en-US: Active Connection + protocol: jdbc + jdbc: + host: ^_^host^_^ + port: ^_^port^_^ + timeout: ^_^timeout^_^ + platform: postgresql + username: ^_^username^_^ + password: ^_^password^_^ + database: ^_^database^_^ + queryType: multiRow + sql: select count(*) as active, COALESCE(datname, 'other') as db_name from pg_stat_activity group by datname; + url: ^_^url^_^ + + - name: tuple + i18n: + zh-CN: 元组信息 + en-US: Tuple Info + priority: 1 + fields: + - field: fetched + type: 0 + i18n: + zh-CN: 获取次数 + en-US: Fetched + - field: returned + type: 0 + i18n: + zh-CN: 返回次数 + en-US: Returned + - field: inserted + type: 0 + i18n: + zh-CN: 插入次数 + en-US: Inserted + - field: updated + type: 0 + i18n: + zh-CN: 更新次数 + en-US: Updated + - field: deleted + type: 0 + i18n: + zh-CN: 删除次数 + en-US: Deleted + protocol: jdbc + jdbc: + host: ^_^host^_^ + port: ^_^port^_^ + timeout: ^_^timeout^_^ + platform: postgresql + username: ^_^username^_^ + password: ^_^password^_^ + database: ^_^database^_^ + queryType: multiRow + sql: select sum(tup_fetched) as fetched, sum(tup_updated) as updated, sum(tup_deleted) as deleted, sum(tup_inserted) as inserted, sum(tup_returned) as returned from pg_stat_database; + url: ^_^url^_^ + + - name: temp_file + i18n: + zh-CN: 临时文件 + en-US: Temp File + priority: 1 + fields: + - field: db_name + type: 1 + label: true + i18n: + zh-CN: 数据库名称 + en-US: Database Name + - field: num + type: 0 + i18n: + zh-CN: 次数 + en-US: Num + - field: size + type: 0 + unit: B + i18n: + zh-CN: 大小 + en-US: Size + protocol: jdbc + jdbc: + host: ^_^host^_^ + port: ^_^port^_^ + timeout: ^_^timeout^_^ + platform: postgresql + username: ^_^username^_^ + password: ^_^password^_^ + database: ^_^database^_^ + queryType: multiRow + sql: select COALESCE(datname, 'other') as db_name, sum(temp_files) as num, sum(temp_bytes) as size from pg_stat_database group by datname; + url: ^_^url^_^ + + - name: lock + i18n: + zh-CN: 锁信息 + en-US: Lock Info + priority: 1 + fields: + - field: db_name + type: 1 + label: true + i18n: + zh-CN: 数据库名称 + en-US: Database Name + - field: conflicts + type: 0 + unit: times + i18n: + zh-CN: 冲突次数 + en-US: Conflicts + - field: deadlocks + type: 0 + unit: times + i18n: + zh-CN: 死锁次数 + en-US: Deadlocks + protocol: jdbc + jdbc: + host: ^_^host^_^ + port: ^_^port^_^ + timeout: ^_^timeout^_^ + platform: postgresql + username: ^_^username^_^ + password: ^_^password^_^ + database: ^_^database^_^ + queryType: multiRow + sql: SELECT COALESCE(datname,'shared-object') as db_name, conflicts, deadlocks from pg_stat_database where (datname != 'template1' and datname != 'template0') or datname is null; + url: ^_^url^_^ + + - name: slow_sql + i18n: + zh-CN: 慢查询 + en-US: Slow Sql + priority: 1 + fields: + - field: sql_text + type: 1 + label: true + i18n: + zh-CN: SQL语句 + en-US: SQL Text + - field: calls + type: 0 + i18n: + zh-CN: 调用次数 + en-US: Calls + - field: rows + type: 0 + i18n: + zh-CN: 行数 + en-US: Rows + - field: avg_time + type: 0 + unit: ms + i18n: + zh-CN: 平均时间 + en-US: Avg Time + - field: total_time + type: 0 + unit: ms + i18n: + zh-CN: 总时间 + en-US: Total Time + aliasFields: + - query + - calls + - rows + - total_exec_time + - mean_exec_time + calculates: + - sql_text=query + - avg_time=mean_exec_time + - total_time=total_exec_time + protocol: jdbc + jdbc: + host: ^_^host^_^ + port: ^_^port^_^ + timeout: ^_^timeout^_^ + platform: postgresql + username: ^_^username^_^ + password: ^_^password^_^ + database: ^_^database^_^ + queryType: multiRow + sql: select * from pg_stat_statements; + url: ^_^url^_^ + + - name: transaction + i18n: + zh-CN: 事务信息 + en-US: Transaction Info + priority: 2 + fields: + - field: db_name + type: 1 + label: true + i18n: + zh-CN: 数据库名称 + en-US: Database Name + - field: commits + type: 0 + unit: times + i18n: + zh-CN: 提交次数 + en-US: Commits + - field: rollbacks + type: 0 + unit: times + i18n: + zh-CN: 回滚次数 + en-US: Rollbacks + protocol: jdbc + jdbc: + host: ^_^host^_^ + port: ^_^port^_^ + timeout: ^_^timeout^_^ + platform: postgresql + username: ^_^username^_^ + password: ^_^password^_^ + database: ^_^database^_^ + queryType: multiRow + sql: select COALESCE(datname, 'other') as db_name, sum(xact_commit) as commits, sum(xact_rollback) as rollbacks from pg_stat_database group by datname; + url: ^_^url^_^ + + - name: conflicts + i18n: + zh-CN: 冲突信息 + en-US: Conflicts Info + priority: 2 + fields: + - field: db_name + type: 1 + label: true + i18n: + zh-CN: 数据库名称 + en-US: Database Name + - field: tablespace + type: 0 + i18n: + zh-CN: 表空间 + en-US: Tablespace + - field: lock + type: 0 + i18n: + zh-CN: 锁 + en-US: Lock + - field: snapshot + type: 0 + i18n: + zh-CN: 快照 + en-US: Snapshot + - field: bufferpin + type: 0 + i18n: + zh-CN: 缓冲区 + en-US: Bufferpin + - field: deadlock + type: 0 + i18n: + zh-CN: 死锁 + en-US: Deadlock + protocol: jdbc + jdbc: + host: ^_^host^_^ + port: ^_^port^_^ + timeout: ^_^timeout^_^ + platform: postgresql + username: ^_^username^_^ + password: ^_^password^_^ + database: ^_^database^_^ + queryType: multiRow + sql: select datname as db_name, confl_tablespace as tablespace, confl_lock as lock, confl_snapshot as snapshot, confl_bufferpin as bufferpin, confl_deadlock as deadlock from pg_stat_database_conflicts; + url: ^_^url^_^ + + - name: cache_hit_ratio + i18n: + zh-CN: 缓存命中率 + en-US: Cache Hit Ratio + priority: 2 + fields: + - field: db_name + type: 1 + label: true + i18n: + zh-CN: 数据库名称 + en-US: Database Name + - field: ratio + type: 0 + unit: '%' + i18n: + zh-CN: 命中率 + en-US: Hit Ratio + aliasFields: + - blks_hit + - blks_read + - db_name + calculates: + - ratio=(blks_hit + 1) / (blks_read + blks_hit + 1) * 100 + protocol: jdbc + jdbc: + host: ^_^host^_^ + port: ^_^port^_^ + timeout: ^_^timeout^_^ + platform: postgresql + username: ^_^username^_^ + password: ^_^password^_^ + database: ^_^database^_^ + queryType: multiRow + sql: select datname as db_name, blks_hit, blks_read from pg_stat_database; + url: ^_^url^_^ + + - name: checkpoint + i18n: + zh-CN: Checkpoint信息 + en-US: Checkpoint Info + priority: 2 + fields: + - field: checkpoint_sync_time + type: 0 + unit: ms + i18n: + zh-CN: Checkpoint同步时间 + en-US: Checkpoint Sync Time + - field: checkpoint_write_time + type: 0 + unit: ms + i18n: + zh-CN: Checkpoint写入时间 + en-US: Checkpoint Write Time + protocol: jdbc + jdbc: + host: ^_^host^_^ + port: ^_^port^_^ + timeout: ^_^timeout^_^ + platform: postgresql + username: ^_^username^_^ + password: ^_^password^_^ + database: ^_^database^_^ + queryType: oneRow + sql: select checkpoint_sync_time, checkpoint_write_time from pg_stat_bgwriter; + url: ^_^url^_^ + + - name: buffer + i18n: + zh-CN: Buffer信息 + en-US: Buffer Info + priority: 2 + fields: + - field: allocated + type: 0 + i18n: + zh-CN: 已分配 + en-US: Allocated + - field: fsync_calls_by_backend + type: 0 + i18n: + zh-CN: 后端进程直接执行的文件同步调用次数 + en-US: Fsync Calls By Backend + - field: written_directly_by_backend + type: 0 + i18n: + zh-CN: 后台写入到数据文件 + en-US: Written Directly By Backend + - field: written_by_background_writer + type: 0 + i18n: + zh-CN: 后台写入 + en-US: Written By Background Writer + - field: written_during_checkpoints + type: 0 + i18n: + zh-CN: 检查点期间写入 + en-US: Written During Checkpoints + protocol: jdbc + jdbc: + host: ^_^host^_^ + port: ^_^port^_^ + timeout: ^_^timeout^_^ + platform: postgresql + username: ^_^username^_^ + password: ^_^password^_^ + database: ^_^database^_^ + queryType: oneRow + sql: select buffers_alloc as allocated, buffers_backend_fsync as fsync_calls_by_backend, buffers_backend as written_directly_by_backend, buffers_clean as written_by_background_writer, buffers_checkpoint as written_during_checkpoints from pg_stat_bgwriter; + url: ^_^url^_^