(Summer 2022)Feat add golang runtime metrics (#9711)
This commit is contained in:
parent
f1e0558ce3
commit
001a2ec454
|
|
@ -42,6 +42,7 @@
|
|||
(explicit_bounds[i-1], explicit_bounds[i]] for 0 < i < size(explicit_bounds)
|
||||
(explicit_bounds[i-1], +infinity) for i == size(explicit_bounds)
|
||||
```
|
||||
* Support Golang runtime metrics analysis.
|
||||
* Add APISIX metrics monitoring
|
||||
* Support skywalking-client-js report empty `service version` and `page path` , set default version as `latest` and
|
||||
default page path as `/`(root). Fix the
|
||||
|
|
@ -71,6 +72,7 @@
|
|||
* Remove All from the endpoints selector.
|
||||
* Enhance menu configurations to make it easier to change.
|
||||
* Update PostgreSQL dashboard to visualize collected slow SQLs.
|
||||
* Add Golang runtime metrics and cpu/memory used rate panels in General-Instance dashboard
|
||||
* Add gateway apisix menu
|
||||
* Query logs with the specific service ID
|
||||
* Bump d3-color from 3.0.1 to 3.1.0
|
||||
|
|
|
|||
|
|
@ -248,7 +248,7 @@ agent-analyzer:
|
|||
# Nginx and Envoy agents can't get the real remote address.
|
||||
# Exit spans with the component in the list would not generate the client-side instance relation metrics.
|
||||
noUpstreamRealAddressAgents: ${SW_NO_UPSTREAM_REAL_ADDRESS:6000,9000}
|
||||
meterAnalyzerActiveFiles: ${SW_METER_ANALYZER_ACTIVE_FILES:datasource,threadpool,satellite} # Which files could be meter analyzed, files split by ","
|
||||
meterAnalyzerActiveFiles: ${SW_METER_ANALYZER_ACTIVE_FILES:datasource,threadpool,satellite,go-runtime} # Which files could be meter analyzed, files split by ","
|
||||
slowCacheReadThreshold: ${SW_SLOW_CACHE_SLOW_READ_THRESHOLD:default:20,redis:10} # The slow cache write operation thresholds. Unit ms.
|
||||
slowCacheWriteThreshold: ${SW_SLOW_CACHE_SLOW_WRITE_THRESHOLD:default:20,redis:10} # The slow cache write operation thresholds. Unit ms.
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,34 @@
|
|||
# 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.
|
||||
|
||||
expSuffix: instance(['service'], ['instance'], Layer.GENERAL)
|
||||
metricPrefix: meter
|
||||
metricsRules:
|
||||
- name: instance_golang_heap_alloc
|
||||
exp: instance_golang_heap_alloc
|
||||
- name: instance_golang_stack_used
|
||||
exp: instance_golang_stack_used
|
||||
- name: instance_golang_gc_pause_time
|
||||
exp: instance_golang_gc_pause_time.increase('PT1M')
|
||||
- name: instance_golang_gc_count
|
||||
exp: instance_golang_gc_count.increase('PT1M')
|
||||
- name: instance_golang_os_threads_num
|
||||
exp: instance_golang_os_threads_num
|
||||
- name: instance_golang_live_goroutines_num
|
||||
exp: instance_golang_live_goroutines_num
|
||||
- name: instance_host_cpu_used_rate
|
||||
exp: instance_host_cpu_used_rate
|
||||
- name: instance_host_mem_used_rate
|
||||
exp: instance_host_mem_used_rate
|
||||
|
|
@ -1012,6 +1012,226 @@
|
|||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Golang",
|
||||
"children": [
|
||||
{
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"w": 8,
|
||||
"h": 13,
|
||||
"i": "24",
|
||||
"type": "Widget",
|
||||
"widget": {
|
||||
"title": "Heap Alloc (MB)"
|
||||
},
|
||||
"graph": {
|
||||
"type": "Line",
|
||||
"step": false,
|
||||
"smooth": false,
|
||||
"showSymbol": false,
|
||||
"showXAxis": true,
|
||||
"showYAxis": true
|
||||
},
|
||||
"metrics": [
|
||||
"meter_instance_golang_heap_alloc"
|
||||
],
|
||||
"metricTypes": [
|
||||
"readMetricsValues"
|
||||
],
|
||||
"metricConfig": [
|
||||
{
|
||||
"calculation": "byteToMB"
|
||||
}
|
||||
],
|
||||
"moved": false
|
||||
},
|
||||
{
|
||||
"x": 8,
|
||||
"y": 0,
|
||||
"w": 8,
|
||||
"h": 13,
|
||||
"i": "16",
|
||||
"type": "Widget",
|
||||
"widget": {
|
||||
"title": "Stack Used (MB)"
|
||||
},
|
||||
"graph": {
|
||||
"type": "Line",
|
||||
"step": false,
|
||||
"smooth": false,
|
||||
"showSymbol": false,
|
||||
"showXAxis": true,
|
||||
"showYAxis": true
|
||||
},
|
||||
"metrics": [
|
||||
"meter_instance_golang_stack_used"
|
||||
],
|
||||
"metricTypes": [
|
||||
"readMetricsValues"
|
||||
],
|
||||
"metricConfig": [
|
||||
{
|
||||
"calculation": "byteToMB"
|
||||
}
|
||||
],
|
||||
"moved": false
|
||||
},
|
||||
{
|
||||
"x": 16,
|
||||
"y": 0,
|
||||
"w": 8,
|
||||
"h": 13,
|
||||
"i": "17",
|
||||
"type": "Widget",
|
||||
"widget": {
|
||||
"title": "Golang GC Pause Time Per Minute (ms)"
|
||||
},
|
||||
"graph": {
|
||||
"type": "Bar",
|
||||
"showBackground": true
|
||||
},
|
||||
"metrics": [
|
||||
"meter_instance_golang_gc_pause_time"
|
||||
],
|
||||
"metricTypes": [
|
||||
"readMetricsValues"
|
||||
],
|
||||
"metricConfig": [
|
||||
{
|
||||
"calculation": "nanosecondToMillisecond"
|
||||
}
|
||||
],
|
||||
"moved": false
|
||||
},
|
||||
{
|
||||
"x": 0,
|
||||
"y": 13,
|
||||
"w": 8,
|
||||
"h": 13,
|
||||
"i": "18",
|
||||
"type": "Widget",
|
||||
"widget": {
|
||||
"title": "Golang GC Count Per Minute"
|
||||
},
|
||||
"graph": {
|
||||
"type": "Bar",
|
||||
"showBackground": true
|
||||
},
|
||||
"metrics": [
|
||||
"meter_instance_golang_gc_count"
|
||||
],
|
||||
"metricTypes": [
|
||||
"readMetricsValues"
|
||||
],
|
||||
"moved": false
|
||||
},
|
||||
{
|
||||
"x": 8,
|
||||
"y": 13,
|
||||
"w": 8,
|
||||
"h": 13,
|
||||
"i": "19",
|
||||
"type": "Widget",
|
||||
"widget": {
|
||||
"title": "Live Goroutines Num"
|
||||
},
|
||||
"graph": {
|
||||
"type": "Line",
|
||||
"step": false,
|
||||
"smooth": false,
|
||||
"showSymbol": false,
|
||||
"showXAxis": true,
|
||||
"showYAxis": true
|
||||
},
|
||||
"metrics": [
|
||||
"meter_instance_golang_live_goroutines_num"
|
||||
],
|
||||
"metricTypes": [
|
||||
"readMetricsValues"
|
||||
],
|
||||
"moved": false
|
||||
},
|
||||
{
|
||||
"x": 16,
|
||||
"y": 13,
|
||||
"w": 8,
|
||||
"h": 13,
|
||||
"i": "20",
|
||||
"type": "Widget",
|
||||
"widget": {
|
||||
"title": "Golang OS Threads Num"
|
||||
},
|
||||
"graph": {
|
||||
"type": "Line",
|
||||
"step": false,
|
||||
"smooth": false,
|
||||
"showSymbol": false,
|
||||
"showXAxis": true,
|
||||
"showYAxis": true
|
||||
},
|
||||
"metrics": [
|
||||
"meter_instance_golang_os_threads_num"
|
||||
],
|
||||
"metricTypes": [
|
||||
"readMetricsValues"
|
||||
],
|
||||
"moved": false
|
||||
},
|
||||
{
|
||||
"x": 0,
|
||||
"y": 26,
|
||||
"w": 8,
|
||||
"h": 13,
|
||||
"i": "21",
|
||||
"type": "Widget",
|
||||
"widget": {
|
||||
"title": "Host CPU Used Rate (%)"
|
||||
},
|
||||
"graph": {
|
||||
"type": "Line",
|
||||
"step": false,
|
||||
"smooth": false,
|
||||
"showSymbol": false,
|
||||
"showXAxis": true,
|
||||
"showYAxis": true
|
||||
},
|
||||
"metrics": [
|
||||
"meter_instance_host_cpu_used_rate"
|
||||
],
|
||||
"metricTypes": [
|
||||
"readMetricsValues"
|
||||
],
|
||||
"moved": false
|
||||
},
|
||||
{
|
||||
"x": 8,
|
||||
"y": 26,
|
||||
"w": 8,
|
||||
"h": 13,
|
||||
"i": "22",
|
||||
"type": "Widget",
|
||||
"widget": {
|
||||
"title": "Host Memory Used Rate (%)"
|
||||
},
|
||||
"graph": {
|
||||
"type": "Line",
|
||||
"step": false,
|
||||
"smooth": false,
|
||||
"showSymbol": false,
|
||||
"showXAxis": true,
|
||||
"showYAxis": true
|
||||
},
|
||||
"metrics": [
|
||||
"meter_instance_host_mem_used_rate"
|
||||
],
|
||||
"metricTypes": [
|
||||
"readMetricsValues"
|
||||
],
|
||||
"moved": false
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
|
|
|
|||
Loading…
Reference in New Issue