| <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Apache Dubbo – 服务状态监控</title><link>https://dubbo.apache.org/zh-cn/overview/mannual/golang-sdk/tutorial/governance/monitor/</link><description>Recent content in 服务状态监控 on Apache Dubbo</description><generator>Hugo -- gohugo.io</generator><language>zh-cn</language><atom:link href="https://dubbo.apache.org/zh-cn/overview/mannual/golang-sdk/tutorial/governance/monitor/index.xml" rel="self" type="application/rss+xml"/><item><title>Overview: 查看 RPC 调用的监控信息</title><link>https://dubbo.apache.org/zh-cn/overview/mannual/golang-sdk/tutorial/governance/monitor/rpc_metrics/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://dubbo.apache.org/zh-cn/overview/mannual/golang-sdk/tutorial/governance/monitor/rpc_metrics/</guid><description> |
| <h2 id="1-准备工作">1. 准备工作</h2> |
| <ul> |
| <li>dubbo-go cli 工具和依赖工具已安装</li> |
| <li>创建一个新的 demo 应用</li> |
| </ul> |
| <h2 id="2-修改客户端逻辑重复发起调用">2. 修改客户端逻辑,重复发起调用</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">// 重复发起调用 |
| </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-查看请求-rt-信息">3. 查看请求 RT 信息</h2> |
| <p>先后启动服务端、客户端服务应用。浏览器查看 localhost:9090/metrics, 搜索 &ldquo;dubbo&rdquo;, 即可查看服务端暴露接口的请求时延,单位 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>可看到当前最近一次请求 rt 为 41084 ns。</p></description></item><item><title>Overview: 基于 http metrics 的指标观测</title><link>https://dubbo.apache.org/zh-cn/overview/mannual/golang-sdk/tutorial/governance/monitor/http/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://dubbo.apache.org/zh-cn/overview/mannual/golang-sdk/tutorial/governance/monitor/http/</guid><description/></item><item><title>Overview: 数据上报 Promethus 教程</title><link>https://dubbo.apache.org/zh-cn/overview/mannual/golang-sdk/tutorial/governance/monitor/promethus/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://dubbo.apache.org/zh-cn/overview/mannual/golang-sdk/tutorial/governance/monitor/promethus/</guid><description/></item><item><title>Overview: 基于 Grafana 的可视化监控教程</title><link>https://dubbo.apache.org/zh-cn/overview/mannual/golang-sdk/tutorial/governance/monitor/grafana/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://dubbo.apache.org/zh-cn/overview/mannual/golang-sdk/tutorial/governance/monitor/grafana/</guid><description/></item><item><title>Overview: Dubbo Go 日志管理</title><link>https://dubbo.apache.org/zh-cn/overview/mannual/golang-sdk/tutorial/governance/monitor/logger/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://dubbo.apache.org/zh-cn/overview/mannual/golang-sdk/tutorial/governance/monitor/logger/</guid><description/></item><item><title>Overview: Metrics 数据上报</title><link>https://dubbo.apache.org/zh-cn/overview/mannual/golang-sdk/tutorial/governance/monitor/metrics/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://dubbo.apache.org/zh-cn/overview/mannual/golang-sdk/tutorial/governance/monitor/metrics/</guid><description> |
| <p>参考Samples: <a href="https://github.com/apache/dubbo-go-samples/tree/master/metrics">dubbo-go-samples/metrics</a></p> |
| <h2 id="1-数据上报配置">1. 数据上报配置</h2> |
| <p>在不指定 metrics: 字段的时候,默认开启拉模式 prometheus 数据上报,端口默认为9090,监听path默认为/metrics。可参考如下服务端配置例子来定制化。</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"># 版本号</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 作为数据上报 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"># 所属 group,需要与客户端一致</span> |
| </span></span><span style="display:flex;"><span> <span style="color:#268bd2">interface</span>: com.apache.dubbo.HelloService <span style="color:#586e75"># 接口名</span> |
| </span></span></code></pre></div><h2 id="2-默认数据上报指标">2. 默认数据上报指标</h2> |
| <p>本地启动上述服务端后,可于 localhost:9091/custom-metrics-path 收集到默认数据指标,包含gc、goroutine数目,内存占用情况等。</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-调用指标-rt">3. 调用指标 RT</h2> |
| <p>启动例子中的客户端,经过几次调用后,会发现增加了对应的数据指标,以默认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>可看到对应接口名、方法名的请求rt时间。该部分调用指标待后续完善。</p> |
| <h2 id="4-手动数据上报">4. 手动数据上报</h2> |
| <p>可在业务代码中调用API进行手动数据上报。支持Counter、Summary、Gauge 类型,并支持多个标签。上报后即可收集。</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>运行一段时间后,可以收集到如下用户定义指标</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> |