From: Felix Geisendörfer Date: Tue, 23 May 2023 10:35:48 +0000 (+0200) Subject: runtime/metrics: add /gc/scan/heap:bytes X-Git-Tag: go1.21rc1~330 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=131267f1476d35c8daab4368aebd274b2f180fe4;p=gostls13.git runtime/metrics: add /gc/scan/heap:bytes For #56857 Change-Id: If3b962f575c33b2cc29f89e33c7aafb476d98ce9 Reviewed-on: https://go-review.googlesource.com/c/go/+/497575 Auto-Submit: Michael Knyszek TryBot-Result: Gopher Robot Reviewed-by: David Chase Run-TryBot: Felix Geisendörfer Reviewed-by: Michael Knyszek --- diff --git a/src/runtime/metrics.go b/src/runtime/metrics.go index da189565c5..356d21ae7d 100644 --- a/src/runtime/metrics.go +++ b/src/runtime/metrics.go @@ -195,6 +195,12 @@ func initMetrics() { out.scalar = gcController.globalsScan.Load() }, }, + "/gc/scan/heap:bytes": { + compute: func(in *statAggregate, out *metricValue) { + out.kind = metricKindUint64 + out.scalar = gcController.heapScan.Load() + }, + }, "/gc/heap/allocs-by-size:bytes": { deps: makeStatDepSet(heapStatsDep), compute: func(in *statAggregate, out *metricValue) { diff --git a/src/runtime/metrics/description.go b/src/runtime/metrics/description.go index 8275148fdd..ac6f437075 100644 --- a/src/runtime/metrics/description.go +++ b/src/runtime/metrics/description.go @@ -299,6 +299,11 @@ var allDesc = []Description{ Description: "The total amount of global variable space that is scannable.", Kind: KindUint64, }, + { + Name: "/gc/scan/heap:bytes", + Description: "The total amount of heap space that is scannable.", + Kind: KindUint64, + }, { Name: "/gc/scan/stack:bytes", Description: "The number of bytes of stack that were scanned last GC cycle.", diff --git a/src/runtime/metrics/doc.go b/src/runtime/metrics/doc.go index 0392e76677..15fba2b5d4 100644 --- a/src/runtime/metrics/doc.go +++ b/src/runtime/metrics/doc.go @@ -219,6 +219,9 @@ Below is the full list of supported metrics, ordered lexicographically. /gc/scan/globals:bytes The total amount of global variable space that is scannable. + /gc/scan/heap:bytes + The total amount of heap space that is scannable. + /gc/scan/stack:bytes The number of bytes of stack that were scanned last GC cycle.