| <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Apache Dubbo – Service Status Monitoring</title><link>https://dubbo.apache.org/en/docs3-v2/golang-sdk/tutorial/governance/monitor/</link><description>Recent content in Service Status Monitoring on Apache Dubbo</description><generator>Hugo -- gohugo.io</generator><language>en</language><atom:link href="https://dubbo.apache.org/en/docs3-v2/golang-sdk/tutorial/governance/monitor/index.xml" rel="self" type="application/rss+xml"/><item><title>Docs3-V2: Indicator observation based on http metrics</title><link>https://dubbo.apache.org/en/docs3-v2/golang-sdk/tutorial/governance/monitor/http/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://dubbo.apache.org/en/docs3-v2/golang-sdk/tutorial/governance/monitor/http/</guid><description/></item><item><title>Docs3-V2: View monitoring information of RPC calls</title><link>https://dubbo.apache.org/en/docs3-v2/golang-sdk/tutorial/governance/monitor/rpc_metrics/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://dubbo.apache.org/en/docs3-v2/golang-sdk/tutorial/governance/monitor/rpc_metrics/</guid><description> |
| <h2 id="1-preparations">1. Preparations</h2> |
| <ul> |
| <li>dubbo-go cli tools and dependent tools have been installed</li> |
| <li>Create a new demo application</li> |
| </ul> |
| <h2 id="2-modify-the-client-logic-and-initiate-calls-repeatedly">2. Modify the client logic and initiate calls repeatedly</h2> |
| <p>go-client/cmd/client.go</p> |
| <div class="highlight"><pre tabindex="0" style="color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-go" data-lang="go"><span style="display:flex;"><span><span style="color:#268bd2">func</span> <span style="color:#268bd2">main</span>() { |
| </span></span><span style="display:flex;"><span>config. <span style="color:#268bd2">SetConsumerService</span>(grpcGreeterImpl) |
| </span></span><span style="display:flex;"><span><span style="color:#719e07">if</span> err <span style="color:#719e07">:=</span> config.<span style="color:#268bd2">Load</span>(); err <span style="color:#719e07">!=</span> <span style="color:#cb4b16">nil</span> { |
| </span></span><span style="display:flex;"><span><span style="color:#b58900">panic</span>(err) |
| </span></span><span style="display:flex;"><span>} |
| </span></span><span style="display:flex;"><span> |
| </span></span><span style="display:flex;"><span>logger.<span style="color:#268bd2">Info</span>(<span style="color:#2aa198">&#34;start to test dubbo&#34;</span>) |
| </span></span><span style="display:flex;"><span>req <span style="color:#719e07">:=</span> <span style="color:#719e07">&amp;</span>api.HelloRequest{ |
| </span></span><span style="display:flex;"><span>Name: <span style="color:#2aa198">&#34;Laurence&#34;</span>, |
| </span></span><span style="display:flex;"><span>} |
| </span></span><span style="display:flex;"><span><span style="color:#719e07">for</span>{ <span style="color:#586e75">// repeat the call |
| </span></span></span><span style="display:flex;"><span><span style="color:#586e75"></span>reply, err <span style="color:#719e07">:=</span> grpcGreeterImpl.<span style="color:#268bd2">SayHello</span>(context.<span style="color:#268bd2">Background</span>(), req) |
| </span></span><span style="display:flex;"><span><span style="color:#719e07">if</span> err <span style="color:#719e07">!=</span> <span style="color:#cb4b16">nil</span> { |
| </span></span><span style="display:flex;"><span>logger. <span style="color:#268bd2">Error</span>(err) |
| </span></span><span style="display:flex;"><span>} |
| </span></span><span style="display:flex;"><span>logger.<span style="color:#268bd2">Infof</span>(<span style="color:#2aa198">&#34;client response result: %v\n&#34;</span>, reply) |
| </span></span><span style="display:flex;"><span>} |
| </span></span><span style="display:flex;"><span>} |
| </span></span></code></pre></div><h2 id="3-view-request-rt-information">3. View request RT information</h2> |
| <p>Start the server and client service applications successively. View localhost:9090/metrics in the browser, search for &ldquo;dubbo&rdquo;, and you can view the request delay of the exposed interface on the server, in ns.</p> |
| <div class="highlight"><pre tabindex="0" style="color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-fallback" data-lang="fallback"><span style="display:flex;"><span>$ curl localhost:9090/metrics | grep dubbo |
| </span></span><span style="display:flex;"><span> |
| </span></span><span style="display:flex;"><span># HELP dubbo_provider_service_rt |
| </span></span><span style="display:flex;"><span># TYPE dubbo_provider_service_rt gauge |
| </span></span><span style="display:flex;"><span>dubbo_provider_service_rt{group=&#34;&#34;,method=&#34;SayHello&#34;,service=&#34;api.Greeter&#34;,timeout=&#34;&#34;,version=&#34;3.0.0&#34;} 41084 |
| </span></span></code></pre></div><p>It can be seen that the latest request rt is 41084 ns.</p></description></item><item><title>Docs3-V2: Data Reporting Promethus Tutorial</title><link>https://dubbo.apache.org/en/docs3-v2/golang-sdk/tutorial/governance/monitor/promethus/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://dubbo.apache.org/en/docs3-v2/golang-sdk/tutorial/governance/monitor/promethus/</guid><description/></item><item><title>Docs3-V2: Grafana-based Visual Monitoring Tutorial</title><link>https://dubbo.apache.org/en/docs3-v2/golang-sdk/tutorial/governance/monitor/grafana/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://dubbo.apache.org/en/docs3-v2/golang-sdk/tutorial/governance/monitor/grafana/</guid><description/></item><item><title>Docs3-V2: Dubbo Go Log Management</title><link>https://dubbo.apache.org/en/docs3-v2/golang-sdk/tutorial/governance/monitor/logger/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://dubbo.apache.org/en/docs3-v2/golang-sdk/tutorial/governance/monitor/logger/</guid><description/></item><item><title>Docs3-V2: Metrics data reporting</title><link>https://dubbo.apache.org/en/docs3-v2/golang-sdk/tutorial/governance/monitor/metrics/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://dubbo.apache.org/en/docs3-v2/golang-sdk/tutorial/governance/monitor/metrics/</guid><description> |
| <p>Reference Samples: <a href="https://github.com/apache/dubbo-go-samples/tree/master/metrics">dubbo-go-samples/metrics</a></p> |
| <h2 id="1-data-reporting-configuration">1. Data reporting configuration</h2> |
| <p>When the metrics: field is not specified, the pull mode prometheus data reporting is enabled by default, the default port is 9090, and the monitoring path defaults to /metrics. You can customize it by referring to the server configuration example below.</p> |
| <div class="highlight"><pre tabindex="0" style="color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-yaml" data-lang="yaml"><span style="display:flex;"><span><span style="color:#268bd2">dubbo</span>: |
| </span></span><span style="display:flex;"><span> <span style="color:#268bd2">application</span>: |
| </span></span><span style="display:flex;"><span> <span style="color:#268bd2">version</span>: <span style="color:#2aa198">3.0.0</span>-rc3 <span style="color:#586e75"># version number</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#268bd2">metrics</span>: |
| </span></span><span style="display:flex;"><span> <span style="color:#268bd2">enable</span>: <span style="color:#cb4b16">true</span> <span style="color:#586e75"># default is true</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#268bd2">path</span>: /custom-metrics-path <span style="color:#586e75"># default is /metrics</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#268bd2">port</span>: <span style="color:#2aa198">9091</span> <span style="color:#586e75"># default is 9090</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#268bd2">namespace</span>: dubbo <span style="color:#586e75"># default is dubbo as the prefix for data reporting metrics</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#268bd2">registries</span>: |
| </span></span><span style="display:flex;"><span> <span style="color:#268bd2">myzk</span>: |
| </span></span><span style="display:flex;"><span> <span style="color:#268bd2">protocol</span>: zookeeper |
| </span></span><span style="display:flex;"><span> <span style="color:#268bd2">address</span>: localhost:2181 |
| </span></span><span style="display:flex;"><span> <span style="color:#268bd2">protocols</span>: |
| </span></span><span style="display:flex;"><span> <span style="color:#268bd2">triple</span>: |
| </span></span><span style="display:flex;"><span> <span style="color:#268bd2">name</span>: tri |
| </span></span><span style="display:flex;"><span> <span style="color:#268bd2">port</span>: <span style="color:#2aa198">20000</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#268bd2">provider</span>: |
| </span></span><span style="display:flex;"><span> <span style="color:#268bd2">services</span>: |
| </span></span><span style="display:flex;"><span> <span style="color:#268bd2">GreeterProvider</span>: |
| </span></span><span style="display:flex;"><span> <span style="color:#268bd2">group</span>: dubbo-go <span style="color:#586e75"># belongs to the group, need to be consistent with the client</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#268bd2">interface</span>: com.apache.dubbo.HelloService <span style="color:#586e75"># interface name</span> |
| </span></span></code></pre></div><h2 id="2-default-data-reporting-indicators">2. Default data reporting indicators</h2> |
| <p>After starting the above server locally, you can collect default data metrics at localhost:9091/custom-metrics-path, including gc, goroutine number, memory usage, etc.</p> |
| <div class="highlight"><pre tabindex="0" style="color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-yaml" data-lang="yaml"><span style="display:flex;"><span><span style="color:#586e75"># HELP go_gc_duration_seconds A summary of the pause duration of garbage collection cycles.</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE go_gc_duration_seconds summary</span> |
| </span></span><span style="display:flex;"><span>go_gc_duration_seconds{quantile=&#34;0&#34;} 3.0916e-05 |
| </span></span><span style="display:flex;"><span>go_gc_duration_seconds{quantile=&#34;0.25&#34;} 3.0916e-05 |
| </span></span><span style="display:flex;"><span>go_gc_duration_seconds{quantile=&#34;0.5&#34;} 3.1167e-05 |
| </span></span><span style="display:flex;"><span>go_gc_duration_seconds{quantile=&#34;0.75&#34;} 0.000164084 |
| </span></span><span style="display:flex;"><span>go_gc_duration_seconds{quantile=&#34;1&#34;} 0.000164084 |
| </span></span><span style="display:flex;"><span>go_gc_duration_seconds_sum 0.000226167 |
| </span></span><span style="display:flex;"><span>go_gc_duration_seconds_count 3 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP go_goroutines Number of goroutines that currently exist.</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE go_goroutines gauge</span> |
| </span></span><span style="display:flex;"><span>go_goroutines 25 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP go_info Information about the Go environment.</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE go_info gauge</span> |
| </span></span><span style="display:flex;"><span>go_info{version=&#34;go1.17.2&#34;} 1 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP go_memstats_alloc_bytes Number of bytes allocated and still in use.</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE go_memstats_alloc_bytes gauge</span> |
| </span></span><span style="display:flex;"><span>go_memstats_alloc_bytes 6.195808e+06 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP go_memstats_alloc_bytes_total Total number of bytes allocated, even if freed.</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE go_memstats_alloc_bytes_total counter</span> |
| </span></span><span style="display:flex;"><span>go_memstats_alloc_bytes_total 9.482768e+06 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP go_memstats_buck_hash_sys_bytes Number of bytes used by the profiling bucket hash table.</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE go_memstats_buck_hash_sys_bytes gauge</span> |
| </span></span><span style="display:flex;"><span>go_memstats_buck_hash_sys_bytes 1.449179e+06 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP go_memstats_frees_total Total number of frees.</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE go_memstats_frees_total counter</span> |
| </span></span><span style="display:flex;"><span>go_memstats_frees_total 29419 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP go_memstats_gc_cpu_fraction The fraction of this program&#39;s available CPU time used by the GC since the program started.</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE go_memstats_gc_cpu_fraction gauge</span> |
| </span></span><span style="display:flex;"><span>go_memstats_gc_cpu_fraction 0.022937924367975027 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP go_memstats_gc_sys_bytes Number of bytes used for garbage collection system metadata.</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE go_memstats_gc_sys_bytes gauge</span> |
| </span></span><span style="display:flex;"><span>go_memstats_gc_sys_bytes 5.235864e+06 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP go_memstats_heap_alloc_bytes Number of heap bytes allocated and still in use.</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE go_memstats_heap_alloc_bytes gauge</span> |
| </span></span><span style="display:flex;"><span>go_memstats_heap_alloc_bytes 6.195808e+06 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP go_memstats_heap_idle_bytes Number of heap bytes waiting to be used.</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE go_memstats_heap_idle_bytes gauge</span> |
| </span></span><span style="display:flex;"><span>go_memstats_heap_idle_bytes 3.792896e+06 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP go_memstats_heap_inuse_bytes Number of heap bytes that are in use.</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE go_memstats_heap_inuse_bytes gauge</span> |
| </span></span><span style="display:flex;"><span>go_memstats_heap_inuse_bytes 8.036352e+06 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP go_memstats_heap_objects Number of allocated objects.</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE go_memstats_heap_objects gauge</span> |
| </span></span><span style="display:flex;"><span>go_memstats_heap_objects 16489 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP go_memstats_heap_released_bytes Number of heap bytes released to OS.</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE go_memstats_heap_released_bytes gauge</span> |
| </span></span><span style="display:flex;"><span>go_memstats_heap_released_bytes 3.416064e+06 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP go_memstats_heap_sys_bytes Number of heap bytes obtained from system.</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE go_memstats_heap_sys_bytes gauge</span> |
| </span></span><span style="display:flex;"><span>go_memstats_heap_sys_bytes 1.1829248e+07 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP go_memstats_last_gc_time_seconds Number of seconds since 1970 of last garbage collection.</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE go_memstats_last_gc_time_seconds gauge</span> |
| </span></span><span style="display:flex;"><span>go_memstats_last_gc_time_seconds 1.635778234064745e+09 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP go_memstats_lookups_total Total number of pointer lookups.</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE go_memstats_lookups_total counter</span> |
| </span></span><span style="display:flex;"><span>go_memstats_lookups_total 0 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP go_memstats_mallocs_total Total number of mallocs.</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE go_memstats_mallocs_total counter</span> |
| </span></span><span style="display:flex;"><span>go_memstats_mallocs_total 45908 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP go_memstats_mcache_inuse_bytes Number of bytes in use by mcache structures.</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE go_memstats_mcache_inuse_bytes gauge</span> |
| </span></span><span style="display:flex;"><span>go_memstats_mcache_inuse_bytes 9600 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP go_memstats_mcache_sys_bytes Number of bytes used for mcache structures obtained from system.</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE go_memstats_mcache_sys_bytes gauge</span> |
| </span></span><span style="display:flex;"><span>go_memstats_mcache_sys_bytes 16384 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP go_memstats_mspan_inuse_bytes Number of bytes in use by mspan structures.</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE go_memstats_mspan_inuse_bytes gauge</span> |
| </span></span><span style="display:flex;"><span>go_memstats_mspan_inuse_bytes 116144 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP go_memstats_mspan_sys_bytes Number of bytes used for mspan structures obtained from system.</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE go_memstats_mspan_sys_bytes gauge</span> |
| </span></span><span style="display:flex;"><span>go_memstats_mspan_sys_bytes 131072 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP go_memstats_next_gc_bytes Number of heap bytes when next garbage collection will take place.</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE go_memstats_next_gc_bytes gauge</span> |
| </span></span><span style="display:flex;"><span>go_memstats_next_gc_bytes 7.935184e+06 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP go_memstats_other_sys_bytes Number of bytes used for other system allocations.</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE go_memstats_other_sys_bytes gauge</span> |
| </span></span><span style="display:flex;"><span>go_memstats_other_sys_bytes 1.426069e+06 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP go_memstats_stack_inuse_bytes Number of bytes in use by the stack allocator.</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE go_memstats_stack_inuse_bytes gauge</span> |
| </span></span><span style="display:flex;"><span>go_memstats_stack_inuse_bytes 753664 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP go_memstats_stack_sys_bytes Number of bytes obtained from system for stack allocator.</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE go_memstats_stack_sys_bytes gauge</span> |
| </span></span><span style="display:flex;"><span>go_memstats_stack_sys_bytes 753664 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP go_memstats_sys_bytes Number of bytes obtained from system.</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE go_memstats_sys_bytes gauge</span> |
| </span></span><span style="display:flex;"><span>go_memstats_sys_bytes 2.084148e+07 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP go_threads Number of OS threads created.</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE go_threads gauge</span> |
| </span></span><span style="display:flex;"><span>go_threads 12 |
| </span></span></code></pre></div><h2 id="3-call-indicator-rt">3. Call indicator RT</h2> |
| <p>Start the client in the example. After several calls, you will find that the corresponding data indicators have been added, prefixed with the default namespace dubbo.</p> |
| <div class="highlight"><pre tabindex="0" style="color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-yaml" data-lang="yaml"><span style="display:flex;"><span><span style="color:#586e75"># HELP dubbo_provider_service_rt</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE dubbo_provider_service_rt gauge</span> |
| </span></span><span style="display:flex;"><span>dubbo_provider_service_rt{group=&#34;dubbo-go&#34;, method=&#34;SayHello&#34;, service=&#34;com.apache.dubbo.HelloService&#34;, timeout=&#34;&#34;, version=&#34;3.0.0-rc3&#34;} 127542 |
| </span></span></code></pre></div><p>You can see the request rt time corresponding to the interface name and method name. This part of the calling indicators is to be improved later.</p> |
| <h2 id="4-manual-data-reporting">4. Manual data reporting</h2> |
| <p>The API can be called in the business code for manual data reporting. Supports Counter, Summary, Gauge types, and supports multiple labels. It can be collected after reporting.</p> |
| <div class="highlight"><pre tabindex="0" style="color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-go" data-lang="go"><span style="display:flex;"><span><span style="color:#719e07">import</span> <span style="color:#2aa198">&#34;dubbo.apache.org/dubbo-go/v3/metrics/prometheus&#34;</span> |
| </span></span><span style="display:flex;"><span> |
| </span></span><span style="display:flex;"><span><span style="color:#719e07">for</span> { |
| </span></span><span style="display:flex;"><span><span style="color:#586e75">// metrics refresh per second |
| </span></span></span><span style="display:flex;"><span><span style="color:#586e75"></span>time. <span style="color:#268bd2">Sleep</span>(time. Second) |
| </span></span><span style="display:flex;"><span>prometheus.<span style="color:#268bd2">IncSummary</span>(<span style="color:#2aa198">&#34;test_summary&#34;</span>, rand.<span style="color:#268bd2">Float64</span>()) |
| </span></span><span style="display:flex;"><span>prometheus.<span style="color:#268bd2">IncSummaryWithLabel</span>(<span style="color:#2aa198">&#34;test_summary_with_label&#34;</span>, rand.<span style="color:#268bd2">Float64</span>(), <span style="color:#268bd2">map</span>[<span style="color:#dc322f">string</span>]<span style="color:#dc322f">string</span>{ |
| </span></span><span style="display:flex;"><span><span style="color:#2aa198">&#34;summarylabel1&#34;</span>: <span style="color:#2aa198">&#34;value1&#34;</span>, <span style="color:#586e75">// label and value for this summary |
| </span></span></span><span style="display:flex;"><span><span style="color:#586e75"></span><span style="color:#2aa198">&#34;summarylabel2&#34;</span>: <span style="color:#2aa198">&#34;value2&#34;</span>, |
| </span></span><span style="display:flex;"><span>}) |
| </span></span><span style="display:flex;"><span> |
| </span></span><span style="display:flex;"><span>prometheus. <span style="color:#268bd2">IncCounter</span>(<span style="color:#2aa198">&#34;test_counter&#34;</span>) |
| </span></span><span style="display:flex;"><span>prometheus.<span style="color:#268bd2">IncCounterWithLabel</span>(<span style="color:#2aa198">&#34;test_counter_with_label&#34;</span>, <span style="color:#268bd2">map</span>[<span style="color:#dc322f">string</span>]<span style="color:#dc322f">string</span>{ |
| </span></span><span style="display:flex;"><span><span style="color:#2aa198">&#34;counterlabel1&#34;</span>: <span style="color:#2aa198">&#34;value1&#34;</span>, <span style="color:#586e75">// label and value for this counter |
| </span></span></span><span style="display:flex;"><span><span style="color:#586e75"></span><span style="color:#2aa198">&#34;counterlabel2&#34;</span>: <span style="color:#2aa198">&#34;value2&#34;</span>, |
| </span></span><span style="display:flex;"><span>}) |
| </span></span><span style="display:flex;"><span> |
| </span></span><span style="display:flex;"><span>prometheus. <span style="color:#268bd2">SetGauge</span>(<span style="color:#2aa198">&#34;test_gauge&#34;</span>, rand. <span style="color:#268bd2">Float64</span>()) |
| </span></span><span style="display:flex;"><span>prometheus.<span style="color:#268bd2">SetGaugeWithLabel</span>(<span style="color:#2aa198">&#34;test_gauge_with_label&#34;</span>, rand.<span style="color:#268bd2">Float64</span>(), <span style="color:#268bd2">map</span>[<span style="color:#dc322f">string</span>]<span style="color:#dc322f">string</span>{ |
| </span></span><span style="display:flex;"><span><span style="color:#2aa198">&#34;gaugelabel1&#34;</span>: <span style="color:#2aa198">&#34;value1&#34;</span>, |
| </span></span><span style="display:flex;"><span><span style="color:#2aa198">&#34;gaugelabel2&#34;</span>: <span style="color:#2aa198">&#34;value2&#34;</span>, |
| </span></span><span style="display:flex;"><span>}) |
| </span></span><span style="display:flex;"><span>} |
| </span></span></code></pre></div><p>After running for a period of time, the following user-defined indicators can be collected</p> |
| <div class="highlight"><pre tabindex="0" style="color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-yaml" data-lang="yaml"><span style="display:flex;"><span><span style="color:#586e75"># HELP dubbo_test_counter</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE dubbo_test_counter counter</span> |
| </span></span><span style="display:flex;"><span>dubbo_test_counter 463 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP dubbo_test_counter_with_label</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE dubbo_test_counter_with_label counter</span> |
| </span></span><span style="display:flex;"><span>dubbo_test_counter_with_label{counterlabel1=&#34;value1&#34;, counterlabel2=&#34;value2&#34;} 463 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP dubbo_test_gauge</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE dubbo_test_gauge gauge</span> |
| </span></span><span style="display:flex;"><span>dubbo_test_gauge 0.7402836247772934 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP dubbo_test_gauge_with_label</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE dubbo_test_gauge_with_label gauge</span> |
| </span></span><span style="display:flex;"><span>dubbo_test_gauge_with_label{gaugelabel1=&#34;value1&#34;, gaugelabel2=&#34;value2&#34;} 0.8360973807546456 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP dubbo_test_summary</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE dubbo_test_summary summary</span> |
| </span></span><span style="display:flex;"><span>dubbo_test_summary_sum 228.1800106582441 |
| </span></span><span style="display:flex;"><span>dubbo_test_summary_count 463 |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># HELP dubbo_test_summary_with_label</span> |
| </span></span><span style="display:flex;"><span><span style="color:#586e75"># TYPE dubbo_test_summary_with_label summary</span> |
| </span></span><span style="display:flex;"><span>dubbo_test_summary_with_label{summarylabel1=&#34;value1&#34;,summarylabel2=&#34;value2&#34;,quantile=&#34;0.5&#34;} 0.5174757569778469 |
| </span></span><span style="display:flex;"><span>dubbo_test_summary_with_label{summarylabel1=&#34;value1&#34;,summarylabel2=&#34;value2&#34;,quantile=&#34;0.75&#34;} 0.734268575017709 |
| </span></span><span style="display:flex;"><span>dubbo_test_summary_with_label{summarylabel1=&#34;value1&#34;,summarylabel2=&#34;value2&#34;,quantile=&#34;0.9&#34;} 0.9059918694279894 |
| </span></span><span style="display:flex;"><span>dubbo_test_summary_with_label{summarylabel1=&#34;value1&#34;,summarylabel2=&#34;value2&#34;,quantile=&#34;0.98&#34;} 0.9761803018478838 |
| </span></span><span style="display:flex;"><span>dubbo_test_summary_with_label{summarylabel1=&#34;value1&#34;,summarylabel2=&#34;value2&#34;,quantile=&#34;0.99&#34;} 0.9820270046489341 |
| </span></span><span style="display:flex;"><span>dubbo_test_summary_with_label{summarylabel1=&#34;value1&#34;,summarylabel2=&#34;value2&#34;,quantile=&#34;0.999&#34;} 0.9986025122460248 |
| </span></span><span style="display:flex;"><span>dubbo_test_summary_with_label_sum{summarylabel1=&#34;value1&#34;,summarylabel2=&#34;value2&#34;} 233.609026131067 |
| </span></span><span style="display:flex;"><span>dubbo_test_summary_with_label_count{summarylabel1=&#34;value1&#34;,summarylabel2=&#34;value2&#34;} 463 |
| </span></span></code></pre></div></description></item></channel></rss> |