diff options
author | Christopher Baines <mail@cbaines.net> | 2025-02-19 23:21:06 +0000 |
---|---|---|
committer | Christopher Baines <mail@cbaines.net> | 2025-02-19 23:21:06 +0000 |
commit | e7a13603d7c90c6a5b9ce25bf34ee297b297a0df (patch) | |
tree | 24c1702a37ffc84f71cfdb7e98359138281aa816 | |
parent | eb2812b737d6976a7bef3a390d47cd46c29ea845 (diff) | |
download | build-coordinator-e7a13603d7c90c6a5b9ce25bf34ee297b297a0df.tar build-coordinator-e7a13603d7c90c6a5b9ce25bf34ee297b297a0df.tar.gz |
Instrument hook threads being used
-rw-r--r-- | guix-build-coordinator/coordinator.scm | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/guix-build-coordinator/coordinator.scm b/guix-build-coordinator/coordinator.scm index 8087338..b5eba4f 100644 --- a/guix-build-coordinator/coordinator.scm +++ b/guix-build-coordinator/coordinator.scm @@ -1459,6 +1459,18 @@ "hook_failure_total" #:labels '(event))) + (define process-events-thread-pool-thread-total-metric + (make-gauge-metric + (build-coordinator-metrics-registry build-coordinator) + "hook_thread_pool_thread_total" + #:labels '(event))) + + (define process-events-thread-pool-used-thread-total-metric + (make-gauge-metric + (build-coordinator-metrics-registry build-coordinator) + "hook_thread_pool_used_thread_total" + #:labels '(event))) + (define (process-event id event arguments handler) (log-msg (build-coordinator-logger build-coordinator) 'DEBUG @@ -1587,9 +1599,16 @@ (coordination-channel (make-channel))) + (metric-set process-events-thread-pool-thread-total-metric + thread-count + #:label-values `((event . ,event-name))) + (spawn-fiber (lambda () (let loop ((running-ids '())) + (metric-set process-events-thread-pool-used-thread-total-metric + (length running-ids) + #:label-values `((event . ,event-name))) (match (get-message coordination-channel) (('process id event arguments) (if (member id running-ids) |