Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
润土的好友猹
SkyWalking
提交
1753e5e0
S
SkyWalking
项目概览
润土的好友猹
/
SkyWalking
与 Fork 源项目一致
Fork自
apache / SkyWalking
通知
9
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
S
SkyWalking
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
1753e5e0
编写于
1月 30, 2021
作者:
W
wankai123
提交者:
GitHub
1月 30, 2021
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Support Prometheus node-exporter VM metrics monitoring (#6277)
上级
5d47d4d2
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
301 addition
and
0 deletion
+301
-0
CHANGES.md
CHANGES.md
+1
-0
docs/en/setup/backend/backend-receivers.md
docs/en/setup/backend/backend-receivers.md
+1
-0
oap-server/server-bootstrap/src/main/resources/otel-oc-rules/vm.yaml
...server-bootstrap/src/main/resources/otel-oc-rules/vm.yaml
+96
-0
oap-server/server-bootstrap/src/main/resources/ui-initialized-templates/vm.yml
...tstrap/src/main/resources/ui-initialized-templates/vm.yml
+203
-0
未找到文件。
CHANGES.md
浏览文件 @
1753e5e0
...
...
@@ -81,6 +81,7 @@ Release Notes.
*
Chore: Remove duplicate codes in Envoy ALS handler.
*
Remove the strict rule of OAL disable statement parameter.
*
Fix a legal metric query adoption bug. Don't support global level metric query.
*
Add VM MAL and ui-template configration, support Prometheus node-exporter VM metrics that pushed from OpenTelemetry-collector.
*
Remove unused log query parameters.
#### UI
...
...
docs/en/setup/backend/backend-receivers.md
浏览文件 @
1753e5e0
...
...
@@ -123,6 +123,7 @@ to be the identification of the metric data.
|----|----|-----|----|
|istio-controlplane| Metrics of Istio control panel | otel-oc-rules/istio-controlplane.yaml | Istio Control Panel -> OpenTelemetry Collector --OC format--> SkyWalking OAP Server |
|oap| Metrics of SkyWalking OAP server itself | otel-oc-rules/oap.yaml | SkyWalking OAP Server(SelfObservability) -> OpenTelemetry Collector --OC format--> SkyWalking OAP Server |
|vm| Metrics of VMs | otel-oc-rules/vm.yaml | Prometheus node-exporter(VMs) -> OpenTelemetry Collector --OC format--> SkyWalking OAP Server |
## Meter receiver
...
...
oap-server/server-bootstrap/src/main/resources/otel-oc-rules/vm.yaml
0 → 100644
浏览文件 @
1753e5e0
# 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.
# This will parse a textual representation of a duration. The formats
# accepted are based on the ISO-8601 duration format {@code PnDTnHnMn.nS}
# with days considered to be exactly 24 hours.
# <p>
# Examples:
# <pre>
# "PT20.345S" -- parses as "20.345 seconds"
# "PT15M" -- parses as "15 minutes" (where a minute is 60 seconds)
# "PT10H" -- parses as "10 hours" (where an hour is 3600 seconds)
# "P2D" -- parses as "2 days" (where a day is 24 hours or 86400 seconds)
# "P2DT3H4M" -- parses as "2 days, 3 hours and 4 minutes"
# "P-6H3M" -- parses as "-6 hours and +3 minutes"
# "-P6H3M" -- parses as "-6 hours and -3 minutes"
# "-P-6H+3M" -- parses as "+6 hours and -3 minutes"
# </pre>
expSuffix
:
tag({tags -> tags.node_identifier_host_name = 'vm::' + tags.node_identifier_host_name}).service(['node_identifier_host_name'])
metricPrefix
:
meter_vm
metricsRules
:
#node cpu
-
name
:
cpu_total_percentage
exp
:
(node_cpu_seconds_total * 100).tagNotEqual('mode' , 'idle').sum(['node_identifier_host_name']).rate('PT1M')
-
name
:
cpu_average_used
exp
:
(node_cpu_seconds_total * 100).sum(['node_identifier_host_name' , 'mode']).rate('PT1M')
-
name
:
cpu_load1
exp
:
node_load1 *
100
-
name
:
cpu_load5
exp
:
node_load5 *
100
-
name
:
cpu_load15
exp
:
node_load15 *
100
#node Memory
-
name
:
memory_total
exp
:
node_memory_MemTotal_bytes
-
name
:
memory_available
exp
:
node_memory_MemAvailable_bytes
-
name
:
memory_used
exp
:
node_memory_MemTotal_bytes - node_memory_MemAvailable_bytes
-
name
:
memory_swap_free
exp
:
node_memory_SwapFree_bytes
-
name
:
memory_swap_total
exp
:
node_memory_SwapTotal_bytes
-
name
:
memory_swap_percentage
exp
:
100 - ((node_memory_SwapFree_bytes * 100) / node_memory_SwapTotal_bytes)
#node filesystem
-
name
:
filesystem_percentage
exp
:
100 - ((node_filesystem_avail_bytes * 100).sum(['node_identifier_host_name' , 'mountpoint']) / node_filesystem_size_bytes.sum(['node_identifier_host_name' , 'mountpoint']))
#node disk
-
name
:
disk_read
exp
:
node_disk_read_bytes_total.sum(['node_identifier_host_name']).rate('PT1M')
-
name
:
disk_written
exp
:
node_disk_written_bytes_total.sum(['node_identifier_host_name']).rate('PT1M')
#node network
-
name
:
network_receive
exp
:
node_network_receive_bytes_total.sum(['node_identifier_host_name']).irate()
-
name
:
network_transmit
exp
:
node_network_transmit_bytes_total.sum(['node_identifier_host_name']).irate()
#node netstat
-
name
:
tcp_curr_estab
exp
:
node_netstat_Tcp_CurrEstab
-
name
:
tcp_tw
exp
:
node_sockstat_TCP_tw
-
name
:
tcp_alloc
exp
:
node_sockstat_TCP_alloc
-
name
:
sockets_used
exp
:
node_sockstat_sockets_used
-
name
:
udp_inuse
exp
:
node_sockstat_UDP_inuse
#node filefd
-
name
:
filefd_allocated
exp
:
node_filefd_allocated
-
name
:
filefd_maximum
exp
:
node_filefd_maximum
oap-server/server-bootstrap/src/main/resources/ui-initialized-templates/vm.yml
0 → 100644
浏览文件 @
1753e5e0
# 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.
# UI templates initialized file includes the default template when the SkyWalking OAP starts up at the first time.
#
# Also, SkyWalking would detect the existing templates in the database, once they are missing, all templates in this file
# could be added automatically.
templates
:
-
name
:
"
VM"
# The type includes DASHBOARD, TOPOLOGY_INSTANCE, TOPOLOGY_ENDPOINT.
# DASHBOARD type templates could have multiple definitions, by using different names.
# TOPOLOGY_INSTANCE, TOPOLOGY_ENDPOINT type templates should be defined once, as they are used in the topology page only.
type
:
"
DASHBOARD"
# Configuration could be defined through UI, and use `export` to format in the standard JSON.
configuration
:
|-
[
{
"name": "VM",
"type": "service",
"children": [
{
"name": "VM",
"children": [
{
"width": "4",
"title": "CPU Usage",
"height": "100",
"entityType": "Service",
"independentSelector": false,
"metricType": "REGULAR_VALUE",
"metricName": "meter_vm_cpu_total_percentage",
"queryMetricType": "readMetricsValue",
"chartType": "ChartNum",
"unit": "%"
},
{
"width": "4",
"title": "Memory RAM Usage",
"height": "100",
"entityType": "Service",
"independentSelector": false,
"metricType": "REGULAR_VALUE",
"metricName": "meter_vm_memory_used",
"queryMetricType": "readMetricsValue",
"chartType": "ChartNum",
"unit": "MB",
"aggregation": "/",
"aggregationNum": "1048576"
},
{
"width": "4",
"title": "Memory Swap Usage",
"height": "100",
"entityType": "Service",
"independentSelector": false,
"metricType": "REGULAR_VALUE",
"metricName": "meter_vm_memory_swap_percentage",
"queryMetricType": "readMetricsValue",
"chartType": "ChartNum",
"unit": "%"
},
{
"width": "4",
"title": "CPU Average Used",
"height": 350,
"entityType": "Service",
"independentSelector": false,
"metricType": "LABELED_VALUE",
"queryMetricType": "readLabeledMetricsValues",
"chartType": "ChartLine",
"metricName": "meter_vm_cpu_average_used",
"metricLabels": "",
"unit": "%",
"labelsIndex": ""
},
{
"width": "4",
"title": "CPU Load",
"height": 350,
"entityType": "Service",
"independentSelector": false,
"metricType": "REGULAR_VALUE",
"metricName": "meter_vm_cpu_load1,meter_vm_cpu_load5,meter_vm_cpu_load15",
"queryMetricType": "readMetricsValues",
"chartType": "ChartLine",
"aggregation": "/",
"aggregationNum": "100"
},
{
"width": "4",
"title": "Memory RAM",
"height": 350,
"entityType": "Service",
"independentSelector": false,
"metricType": "REGULAR_VALUE",
"metricName": "meter_vm_memory_total,meter_vm_memory_available,meter_vm_memory_used",
"queryMetricType": "readMetricsValues",
"chartType": "ChartArea",
"aggregation": "/",
"aggregationNum": "1048576",
"unit": "MB"
},
{
"width": "4",
"title": "Memory Swap",
"height": 350,
"entityType": "Service",
"independentSelector": false,
"metricType": "REGULAR_VALUE",
"metricName": "meter_vm_memory_swap_free,meter_vm_memory_swap_total",
"queryMetricType": "readMetricsValues",
"chartType": "ChartArea",
"aggregation": "/",
"aggregationNum": "1048576",
"unit": "MB"
},
{
"width": "4",
"title": "File System Mountpoint Usage",
"height": 350,
"entityType": "Service",
"independentSelector": false,
"metricType": "LABELED_VALUE",
"metricName": "meter_vm_filesystem_percentage",
"queryMetricType": "readLabeledMetricsValues",
"chartType": "ChartLine",
"aggregation": "+",
"aggregationNum": "0",
"unit": "%"
},
{
"width": "4",
"title": "Disk R/W",
"height": 350,
"entityType": "Service",
"independentSelector": false,
"metricType": "REGULAR_VALUE",
"metricName": "meter_vm_disk_read,meter_vm_disk_written",
"queryMetricType": "readMetricsValues",
"chartType": "ChartLine",
"aggregation": "/",
"aggregationNum": "1024",
"unit": "KB/s"
},
{
"width": "4",
"title": "Network Bandwidth Usage",
"height": 350,
"entityType": "Service",
"independentSelector": false,
"metricType": "REGULAR_VALUE",
"metricName": "meter_vm_network_receive,meter_vm_network_transmit",
"queryMetricType": "readMetricsValues",
"chartType": "ChartArea",
"aggregation": "/",
"aggregationNum": "1024",
"unit": "KB/s"
},
{
"width": "4",
"title": "Network Status",
"height": 350,
"entityType": "Service",
"independentSelector": false,
"metricType": "REGULAR_VALUE",
"metricName": "meter_vm_tcp_curr_estab,meter_vm_tcp_tw,meter_vm_tcp_alloc,meter_vm_sockets_used,meter_vm_udp_inuse",
"queryMetricType": "readMetricsValues",
"chartType": "ChartLine"
},
{
"width": "4",
"title": "Filefd Allocated",
"height": 350,
"entityType": "Service",
"independentSelector": false,
"metricType": "REGULAR_VALUE",
"metricName": "meter_vm_filefd_allocated",
"queryMetricType": "readMetricsValues",
"chartType": "ChartLine"
}
]
}
]
}
]
# Activated as the DASHBOARD type, makes this templates added into the UI page automatically.
# False means providing a basic template, user needs to add it manually.
activated
:
true
# True means wouldn't show up on the dashboard. Only keeps the definition in the storage.
disabled
:
false
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录