From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id cG8NLCvRVF8ZNwAA0tVLHw (envelope-from ) for ; Sun, 06 Sep 2020 12:08:11 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id iG/RJyvRVF+xdQAAB5/wlQ (envelope-from ) for ; Sun, 06 Sep 2020 12:08:11 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 6F766940390 for ; Sun, 6 Sep 2020 12:08:11 +0000 (UTC) Received: from localhost ([::1]:49344 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kEtSs-0003S9-EI for larch@yhetil.org; Sun, 06 Sep 2020 08:08:10 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:51914) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kEtSl-0003Qk-B6 for guix-patches@gnu.org; Sun, 06 Sep 2020 08:08:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:33388) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kEtSl-0003DU-2H for guix-patches@gnu.org; Sun, 06 Sep 2020 08:08:03 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1kEtSk-0001TY-U4 for guix-patches@gnu.org; Sun, 06 Sep 2020 08:08:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#43240] [PATCH] Use the #:namespace argument for metric registries Resent-From: Christopher Baines Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 06 Sep 2020 12:08:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 43240 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 43240@debbugs.gnu.org X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.15993940745640 (code B ref -1); Sun, 06 Sep 2020 12:08:02 +0000 Received: (at submit) by debbugs.gnu.org; 6 Sep 2020 12:07:54 +0000 Received: from localhost ([127.0.0.1]:44932 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kEtSb-0001St-LK for submit@debbugs.gnu.org; Sun, 06 Sep 2020 08:07:54 -0400 Received: from lists.gnu.org ([209.51.188.17]:43854) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kEtSL-0001SH-Ug for submit@debbugs.gnu.org; Sun, 06 Sep 2020 08:07:52 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:51820) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kEtSL-0003Mt-Pt for guix-patches@gnu.org; Sun, 06 Sep 2020 08:07:37 -0400 Received: from mira.cbaines.net ([212.71.252.8]:48588) by eggs.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kEtSJ-0003B8-Ec for guix-patches@gnu.org; Sun, 06 Sep 2020 08:07:37 -0400 Received: from localhost (unknown [46.237.162.226]) by mira.cbaines.net (Postfix) with ESMTPSA id DB36216F0F for ; Sun, 6 Sep 2020 13:07:32 +0100 (BST) Received: from localhost (localhost [local]) by localhost (OpenSMTPD) with ESMTPA id ee736d91 for ; Sun, 6 Sep 2020 12:07:29 +0000 (UTC) From: Christopher Baines Date: Sun, 6 Sep 2020 13:07:29 +0100 Message-Id: <20200906120729.20493-1-mail@cbaines.net> X-Mailer: git-send-email 2.28.0 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Received-SPF: pass client-ip=212.71.252.8; envelope-from=mail@cbaines.net; helo=mira.cbaines.net X-detected-operating-system: by eggs.gnu.org: First seen = 2020/09/06 08:07:33 X-ACL-Warn: Detected OS = Linux 2.2.x-3.x [generic] [fuzzy] X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, UNPARSEABLE_RELAY=0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: 1.0 (+) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-Spam-Score: -2.3 (--) X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: "Guix-patches" X-Scanner: scn0 Authentication-Results: aspmx1.migadu.com; dkim=none; dmarc=none; spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Spam-Score: 3.99 X-TUID: UbndglvV9ISB --- .../agent-messaging/http.scm | 22 +++++-------------- guix-build-coordinator/coordinator.scm | 18 ++++++++------- guix-build-coordinator/datastore/sqlite.scm | 11 ++++------ scripts/guix-build-coordinator.in | 4 +++- 4 files changed, 23 insertions(+), 32 deletions(-) diff --git a/guix-build-coordinator/agent-messaging/http.scm b/guix-build-coordinator/agent-messaging/http.scm index 1a9a9e9..91b686b 100644 --- a/guix-build-coordinator/agent-messaging/http.scm +++ b/guix-build-coordinator/agent-messaging/http.scm @@ -142,9 +142,6 @@ port. Also, the port used can be changed by passing the --port option.\n" "")) (define (base-datastore-metrics-updater build-coordinator) - (define namespace - "guixbuildcoordinator") - (define datastore (build-coordinator-datastore build-coordinator)) @@ -152,34 +149,27 @@ port. Also, the port used can be changed by passing the --port option.\n" (build-coordinator-metrics-registry build-coordinator)) (let ((builds-total - (make-gauge-metric registry - (string-append namespace - "_builds_total") + (make-gauge-metric registry "builds_total" #:labels '(system))) (allocated-builds-total (make-gauge-metric registry - (string-append namespace - "_allocated_builds_total") + "allocated_builds_total" #:labels '(agent_id))) (build-results-total (make-gauge-metric registry - (string-append namespace - "_build_results_total") + "build_results_total" #:labels '(agent_id result))) (setup-failures-total (make-gauge-metric registry - (string-append namespace - "_setup_failures_total") + "setup_failures_total" #:labels '(agent_id reason))) (build-allocation-plan-total (make-gauge-metric registry - (string-append namespace - "_build_allocation_plan_total") + "build_allocation_plan_total" #:labels '(agent_id))) (unprocessed-hook-events-total (make-gauge-metric registry - (string-append namespace - "_unprocessed_hook_events_total") + "unprocessed_hook_events_total" #:labels '(event)))) (define (zero-metric-for-agents metric) (for-each (lambda (agent-details) diff --git a/guix-build-coordinator/coordinator.scm b/guix-build-coordinator/coordinator.scm index 33b5afe..c8727c8 100644 --- a/guix-build-coordinator/coordinator.scm +++ b/guix-build-coordinator/coordinator.scm @@ -68,7 +68,9 @@ set-build-coordinator-allocator-thread!)) (define* (make-build-coordinator #:key datastore hooks - (metrics-registry (make-metrics-registry)) + (metrics-registry (make-metrics-registry + #:namespace + "guixbuildcoordinator_")) (allocation-strategy basic-build-allocation-strategy)) (let ((build-coordinator @@ -198,12 +200,12 @@ (define success-counter-metric (make-counter-metric (build-coordinator-metrics-registry build-coordinator) - "guixbuildcoordinator_allocator_allocations_total")) + "allocator_allocations_total")) (define failure-counter-metric (make-counter-metric (build-coordinator-metrics-registry build-coordinator) - "guixbuildcoordinator_allocator_failures_total")) + "allocator_failures_total")) (define (allocate-builds-loop) (while #t @@ -215,7 +217,7 @@ (atomic-box-set! allocation-needed #f))) (call-with-duration-metric (build-coordinator-metrics-registry build-coordinator) - "guixbuildcoordinator_allocate_builds_duration_seconds" + "allocate_builds_duration_seconds" (lambda () (with-exception-handler (lambda (exn) @@ -270,13 +272,13 @@ (define success-counter-metric (make-counter-metric (build-coordinator-metrics-registry build-coordinator) - "guixbuildcoordinator_hook_success_total" + "hook_success_total" #:labels '(event))) (define failure-counter-metric (make-counter-metric (build-coordinator-metrics-registry build-coordinator) - "guixbuildcoordinator_hook_failure_total" + "hook_failure_total" #:labels '(event))) (define (process-events event-name handler) @@ -330,7 +332,7 @@ (define (fetch-builds build-coordinator agent systems count) (call-with-duration-metric (build-coordinator-metrics-registry build-coordinator) - "guixbuildcoordinator_coordinator_fetch_builds_duration_seconds" + "coordinator_fetch_builds_duration_seconds" (lambda () (let ((update-made (datastore-update-agent-requested-systems (build-coordinator-datastore build-coordinator) @@ -393,7 +395,7 @@ (call-with-duration-metric (build-coordinator-metrics-registry build-coordinator) - "guixbuildcoordinator_coordinator_handle_build_result_duration_seconds" + "coordinator_handle_build_result_duration_seconds" (lambda () (let* ((result (assoc-ref result-json "result")) (success? (string=? result "success"))) diff --git a/guix-build-coordinator/datastore/sqlite.scm b/guix-build-coordinator/datastore/sqlite.scm index f3e3bbf..13d9ec7 100644 --- a/guix-build-coordinator/datastore/sqlite.scm +++ b/guix-build-coordinator/datastore/sqlite.scm @@ -126,13 +126,10 @@ (define registry (slot-ref datastore 'metrics-registry)) (if registry - (let* ((namespaced-metric-name - (string-append "guixbuildcoordinator_" metric-name)) - (metric - (or (metrics-registry-fetch-metric registry namespaced-metric-name) - (make-histogram-metric - registry - namespaced-metric-name))) + (let* ((metric + (or (metrics-registry-fetch-metric registry metric-name) + (make-histogram-metric registry + metric-name))) (start-time (current-time))) (let ((result (thunk))) (metric-observe metric (- (current-time) start-time)) diff --git a/scripts/guix-build-coordinator.in b/scripts/guix-build-coordinator.in index 87982c0..f4c5048 100644 --- a/scripts/guix-build-coordinator.in +++ b/scripts/guix-build-coordinator.in @@ -434,7 +434,9 @@ processed?: ~A (append %service-option-defaults %base-option-defaults) arguments)) - (metrics-registry (make-metrics-registry)) + (metrics-registry (make-metrics-registry + #:namespace + "guixbuildcoordinator_")) (datastore (database-uri->datastore (assq-ref opts 'database) #:metrics-registry metrics-registry)) -- 2.28.0