This is an automated email from the ASF dual-hosted git repository.
gongchao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hertzbeat.git
The following commit(s) were added to refs/heads/master by this push:
new 3c01298e8 [feature] add iceberg template (#2503)
3c01298e8 is described below
commit 3c01298e865c93eff7e5a7089065e945bb9db389
Author: aias00 <[email protected]>
AuthorDate: Sun Aug 11 16:00:48 2024 +0800
[feature] add iceberg template (#2503)
---
manager/src/main/resources/define/app-iceberg.yml | 266 ++++++++++++++++++++++
1 file changed, 266 insertions(+)
diff --git a/manager/src/main/resources/define/app-iceberg.yml
b/manager/src/main/resources/define/app-iceberg.yml
new file mode 100644
index 000000000..baf932f9b
--- /dev/null
+++ b/manager/src/main/resources/define/app-iceberg.yml
@@ -0,0 +1,266 @@
+# 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: bigdata
+# The monitoring type eg: springboot2 linux windows tomcat mysql aws...
+app: iceberg
+# The monitoring i18n name
+name:
+ zh-CN: Apache Iceberg
+ en-US: Apache Iceberg
+# The description and help of this monitoring type
+help:
+ zh-CN: HertzBeat 对 <a class='help_module_content'
href='https://cwiki.apache.org/confluence/display/Hive/Hive+Metrics'> HServer2
</a> 暴露的通用性能指标(basic、environment、thread、code_cache)进行采集监控。<span
class='help_module_span'>⚠️注意:如果要监控 Apache Iceberg 中的信息,需要您的 Apache Iceberg
应用集成并开启 Hive Server2, <a class='help_module_content'
href='https://hertzbeat.apache.org/zh-cn/docs/help/hive'>点击查看具体步骤</a>。</span>
+ en-US: HertzBeat collects and monitors Apache Iceberg through general
performance metric(health, environment, threads, memory_used) that exposed by
the Hive Server2. <br><span class='help_module_span'>⚠️Note:You should make
sure that your Apache Iceberg application have already integrated and enabled
the Hive Server2, <a class='help_module_content'
href='https://hertzbeat.apache.org/docs/help/hive'>click here to see the
specific steps.</a></span>
+ zh-TW: HertzBeat 對<a class='help_module_content'
href='https://cwiki.apache.org/confluence/display/Hive/Hive+Metrics'> HServer2
</a>暴露的通用性能指標(basic、environment、thread、code_cache)進行採集監控。< span
class='help_module_span'> ⚠️ 注意:如果要監控Apache Iceberg 中的指標,需要您的Apache Iceberg
應用集成並開啟 Hive Server2,<a class='help_module_content'
href='https://hertzbeat.apache.org/zh-cn/docs/help/hive'>點擊查看具體步驟</a>。</span>
+helpLink:
+ zh-CN: https://hertzbeat.apache.org/zh-cn/docs/help/iceberg
+ en-US: https://hertzbeat.apache.org/docs/help/iceberg
+# 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: 10002
+ # field-param field key
+ - field: ssl
+ # name-param field display i18n name
+ name:
+ zh-CN: 启动SSL
+ en-US: SSL
+ # When the type is boolean, the frontend will display a switch for it.
+ type: boolean
+ # required-true or false
+ required: false
+ # field-param field key
+ - field: base_path
+ # name-param field display i18n name
+ name:
+ zh-CN: Base Path
+ en-US: Base Path
+ # type-param field type(most mapping the html input type) The type "text"
belongs to a text input field.
+ type: text
+ # default value
+ defaultValue: /jmx
+ # required-true or false
+ required: true
+ # hide-true or false
+ hide: true
+# collect metrics config list
+metrics:
+ # metrics - available
+ - name: available
+ # 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: responseTime
+ type: 0
+ unit: ms
+ # the protocol used for monitoring, eg: sql, ssh, http, telnet, wmi, snmp,
sdk
+ protocol: http
+ # Specific collection configuration when protocol is http protocol
+ http:
+ # http host: ipv4 ipv6 domain
+ host: ^_^host^_^
+ # http port
+ port: ^_^port^_^
+ # http url
+ url: ^_^base_path^_^
+ # http request method GET POST PUT DELETE PATCH
+ method: GET
+ # enable SSL/TLS, that is, whether it is http or https, the default is
false
+ ssl: ^_^ssl^_^
+ # http response data parse type: default-hertzbeat rule,
jsonpath-jsonpath script, website-api availability monitoring
+ parseType: default
+
+ - name: basic
+ priority: 1
+ fields:
+ - field: vm_name
+ type: 1
+ - field: vm_vendor
+ type: 1
+ - field: vm_version
+ type: 1
+ - field: up_time
+ type: 0
+ unit: ms
+ aliasFields:
+ - $.beans[?(@.name == 'java.lang:type=Runtime')].VmName
+ - $.beans[?(@.name == 'java.lang:type=Runtime')].VmVendor
+ - $.beans[?(@.name == 'java.lang:type=Runtime')].VmVersion
+ - $.beans[?(@.name == 'java.lang:type=Runtime')].Uptime
+ calculates:
+ - vm_name=$.beans[?(@.name == 'java.lang:type=Runtime')].VmName
+ - vm_vendor=$.beans[?(@.name == 'java.lang:type=Runtime')].VmVendor
+ - vm_version=$.beans[?(@.name == 'java.lang:type=Runtime')].VmVersion
+ - up_time=$.beans[?(@.name == 'java.lang:type=Runtime')].Uptime
+ protocol: http
+ http:
+ host: ^_^host^_^
+ port: ^_^port^_^
+ url: ^_^base_path^_^
+ method: GET
+ ssl: ^_^ssl^_^
+ parseType: jsonPath
+ parseScript: '$'
+
+ # metrics - environment
+ - name: environment
+ priority: 2
+ # 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: https_proxyPort
+ type: 0
+ - field: os_name
+ type: 1
+ - field: os_version
+ type: 1
+ - field: os_arch
+ type: 1
+ - field: java_runtime_name
+ type: 1
+ - field: java_runtime_version
+ type: 1
+ # metric alias list, used to identify metrics in query results
+ aliasFields:
+ - $.beans[?(@.name ==
'java.lang:type=Runtime')].SystemProperties[?(@.key == 'os.name')].value
+ - $.beans[?(@.name ==
'java.lang:type=Runtime')].SystemProperties[?(@.key == 'os.version')].value
+ - $.beans[?(@.name ==
'java.lang:type=Runtime')].SystemProperties[?(@.key == 'os.arch')].value
+ - $.beans[?(@.name ==
'java.lang:type=Runtime')].SystemProperties[?(@.key ==
'java.runtime.name')].value
+ - $.beans[?(@.name ==
'java.lang:type=Runtime')].SystemProperties[?(@.key ==
'java.runtime.version')].value
+ - $.beans[?(@.name ==
'java.lang:type=Runtime')].SystemProperties[?(@.key == 'https.proxyPort')].value
+ # A list of calculation scripts for metric values.
+ calculates:
+ - https_proxyPort=$.beans[?(@.name ==
'java.lang:type=Runtime')].SystemProperties[?(@.key == 'https.proxyPort')].value
+ - os_name=$.beans[?(@.name ==
'java.lang:type=Runtime')].SystemProperties[?(@.key == 'os.name')].value
+ - os_version=$.beans[?(@.name ==
'java.lang:type=Runtime')].SystemProperties[?(@.key == 'os.version')].value
+ - os_arch=$.beans[?(@.name ==
'java.lang:type=Runtime')].SystemProperties[?(@.key == 'os.arch')].value
+ - java_runtime_name=$.beans[?(@.name ==
'java.lang:type=Runtime')].SystemProperties[?(@.key ==
'java.runtime.name')].value
+ - java_runtime_version=$.beans[?(@.name ==
'java.lang:type=Runtime')].SystemProperties[?(@.key ==
'java.runtime.version')].value
+ # The protocol used for monitoring, eg: sql, ssh, http, telnet, wmi, snmp,
sdk
+ protocol: http
+ # Specific collection configuration when protocol is http protocol
+ http:
+ # http host: ipv4 ipv6 domain
+ host: ^_^host^_^
+ # http port
+ port: ^_^port^_^
+ # http url
+ url: ^_^base_path^_^
+ # http request method GET POST PUT DELETE PATCH
+ method: GET
+ # enable SSL/TLS, that is, whether it is http or https, the default is
false
+ ssl: ^_^ssl^_^
+ # http response data parse type: default-hertzbeat rule,
jsonpath-jsonpath script, website-api availability monitoring
+ parseType: jsonPath
+ # http response data parse script
+ parseScript: '$'
+
+ - name: thread
+ priority: 4
+ fields:
+ - field: thread_count
+ type: 0
+ - field: total_started_thread
+ type: 0
+ - field: peak_thread_count
+ type: 0
+ - field: daemon_thread_count
+ type: 0
+ aliasFields:
+ - $.beans[?(@.name == 'java.lang:type=Threading')].ThreadCount
+ - $.beans[?(@.name ==
'java.lang:type=Threading')].TotalStartedThreadCount
+ - $.beans[?(@.name == 'java.lang:type=Threading')].PeakThreadCount
+ - $.beans[?(@.name == 'java.lang:type=Threading')].DaemonThreadCount
+ calculates:
+ - thread_count=$.beans[?(@.name ==
'java.lang:type=Threading')].ThreadCount
+ - total_started_thread=$.beans[?(@.name ==
'java.lang:type=Threading')].TotalStartedThreadCount
+ - peak_thread_count=$.beans[?(@.name ==
'java.lang:type=Threading')].PeakThreadCount
+ - daemon_thread_count=$.beans[?(@.name ==
'java.lang:type=Threading')].DaemonThreadCount
+ protocol: http
+ http:
+ host: ^_^host^_^
+ port: ^_^port^_^
+ url: ^_^base_path^_^
+ method: GET
+ ssl: ^_^ssl^_^
+ parseType: jsonPath
+ parseScript: '$'
+
+ - name: code_cache
+ priority: 5
+ fields:
+ - field: committed
+ type: 1
+ unit: MB
+ - field: init
+ type: 0
+ unit: MB
+ - field: max
+ type: 0
+ unit: MB
+ - field: used
+ type: 0
+ unit: MB
+ aliasFields:
+ - $.beans[?(@.Name == 'Code Cache')].Usage.committed
+ - $.beans[?(@.Name == 'Code Cache')].Usage.init
+ - $.beans[?(@.Name == 'Code Cache')].Usage.max
+ - $.beans[?(@.Name == 'Code Cache')].Usage.used
+ calculates:
+ - committed=$.beans[?(@.Name == 'Code Cache')].Usage.committed
+ - init=$.beans[?(@.Name == 'Code Cache')].Usage.init
+ - max=$.beans[?(@.Name == 'Code Cache')].Usage.max
+ - used=$.beans[?(@.Name == 'Code Cache')].Usage.used
+ units:
+ - committed=B->MB
+ - init=B->MB
+ - max=B->MB
+ - used=B->MB
+ protocol: http
+ http:
+ host: ^_^host^_^
+ port: ^_^port^_^
+ url: ^_^base_path^_^
+ method: GET
+ ssl: ^_^ssl^_^
+ parseType: jsonPath
+ parseScript: '$'
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]