Skip to content

Commit 0ac45c6

Browse files
authored
[KVBlock.Index] Prometheus Metrics & Logging (#53)
* added kvblock.Index metrics collection for prometheus (+logging) Signed-off-by: Maroon Ayoub <[email protected]> * split metric collector registration into two explicit calls Signed-off-by: Maroon Ayoub <[email protected]> * refactored collectors Signed-off-by: Maroon Ayoub <[email protected]> --------- Signed-off-by: Maroon Ayoub <[email protected]>
1 parent 2d83929 commit 0ac45c6

File tree

6 files changed

+372
-21
lines changed

6 files changed

+372
-21
lines changed

examples/kv_events/online/main.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,9 @@ import (
2525
"os/signal"
2626
"strconv"
2727
"syscall"
28+
"time"
2829

30+
"github.com/llm-d/llm-d-kv-cache-manager/pkg/kvcache/metrics"
2931
"k8s.io/klog/v2"
3032

3133
"github.com/llm-d/llm-d-kv-cache-manager/pkg/kvcache"
@@ -115,6 +117,10 @@ func main() {
115117
eventsPool.Start(ctx)
116118
logger.Info("Events pool started and listening for ZMQ messages")
117119

120+
metrics.Register()
121+
metrics.StartMetricsLogging(ctx, time.Second*10)
122+
logger.Info("Started metrics thread")
123+
118124
// Setup graceful shutdown
119125
sigChan := make(chan os.Signal, 1)
120126
signal.Notify(sigChan, syscall.SIGINT, syscall.SIGTERM)

go.mod

Lines changed: 38 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,22 +8,57 @@ require (
88
github.com/fxamacker/cbor/v2 v2.7.0
99
github.com/hashicorp/golang-lru/v2 v2.0.7
1010
github.com/pebbe/zmq4 v1.4.0
11+
github.com/prometheus/client_golang v1.22.0
12+
github.com/prometheus/client_model v0.6.1
1113
github.com/redis/go-redis/v9 v9.7.3
1214
github.com/stretchr/testify v1.10.0
1315
github.com/vmihailenco/msgpack/v5 v5.4.1
14-
k8s.io/apimachinery v0.32.3
15-
k8s.io/client-go v0.32.3
16+
k8s.io/apimachinery v0.33.0
17+
k8s.io/client-go v0.33.0
1618
k8s.io/klog/v2 v2.130.1
19+
sigs.k8s.io/controller-runtime v0.21.0
1720
)
1821

1922
require (
23+
github.com/beorn7/perks v1.0.1 // indirect
2024
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
2125
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect
26+
github.com/emicklei/go-restful/v3 v3.11.0 // indirect
2227
github.com/go-logr/logr v1.4.2 // indirect
28+
github.com/go-openapi/jsonpointer v0.21.0 // indirect
29+
github.com/go-openapi/jsonreference v0.20.2 // indirect
30+
github.com/go-openapi/swag v0.23.0 // indirect
31+
github.com/gogo/protobuf v1.3.2 // indirect
32+
github.com/google/gnostic-models v0.6.9 // indirect
33+
github.com/google/go-cmp v0.7.0 // indirect
34+
github.com/google/uuid v1.6.0 // indirect
35+
github.com/josharian/intern v1.0.0 // indirect
36+
github.com/json-iterator/go v1.1.12 // indirect
37+
github.com/mailru/easyjson v0.7.7 // indirect
38+
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
39+
github.com/modern-go/reflect2 v1.0.2 // indirect
40+
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
41+
github.com/pkg/errors v0.9.1 // indirect
2342
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
43+
github.com/prometheus/common v0.62.0 // indirect
44+
github.com/prometheus/procfs v0.15.1 // indirect
2445
github.com/vmihailenco/tagparser/v2 v2.0.0 // indirect
2546
github.com/x448/float16 v0.8.4 // indirect
26-
golang.org/x/time v0.7.0 // indirect
47+
golang.org/x/net v0.38.0 // indirect
48+
golang.org/x/oauth2 v0.27.0 // indirect
49+
golang.org/x/sys v0.31.0 // indirect
50+
golang.org/x/term v0.30.0 // indirect
51+
golang.org/x/text v0.23.0 // indirect
52+
golang.org/x/time v0.9.0 // indirect
53+
google.golang.org/protobuf v1.36.5 // indirect
54+
gopkg.in/evanphx/json-patch.v4 v4.12.0 // indirect
55+
gopkg.in/inf.v0 v0.9.1 // indirect
2756
gopkg.in/yaml.v3 v3.0.1 // indirect
57+
k8s.io/api v0.33.0 // indirect
58+
k8s.io/kube-openapi v0.0.0-20250318190949-c8a335a9a2ff // indirect
2859
k8s.io/utils v0.0.0-20241104100929-3ea5e8cea738 // indirect
60+
sigs.k8s.io/json v0.0.0-20241010143419-9aa6b5e7a4b3 // indirect
61+
sigs.k8s.io/randfill v1.0.0 // indirect
62+
sigs.k8s.io/structured-merge-diff/v4 v4.6.0 // indirect
63+
sigs.k8s.io/yaml v1.4.0 // indirect
2964
)

0 commit comments

Comments
 (0)