Add some new metrics about load new revision jobs
This commit is contained in:
parent
fd3ba489d9
commit
af2e12a9ef
2 changed files with 36 additions and 0 deletions
|
|
@ -62,6 +62,7 @@
|
||||||
combine-log-parts!
|
combine-log-parts!
|
||||||
fetch-unlocked-jobs
|
fetch-unlocked-jobs
|
||||||
process-load-new-guix-revision-job
|
process-load-new-guix-revision-job
|
||||||
|
select-load-new-guix-revision-job-metrics
|
||||||
select-job-for-commit
|
select-job-for-commit
|
||||||
select-jobs-and-events
|
select-jobs-and-events
|
||||||
select-recent-job-events
|
select-recent-job-events
|
||||||
|
|
@ -1327,6 +1328,25 @@ RETURNING id;")
|
||||||
result)
|
result)
|
||||||
(() #f)))
|
(() #f)))
|
||||||
|
|
||||||
|
(define (select-load-new-guix-revision-job-metrics conn)
|
||||||
|
(define query
|
||||||
|
"
|
||||||
|
SELECT COALESCE(git_repositories.label, git_repositories.url) AS repository_label,
|
||||||
|
succeeded_at IS NOT NULL AS completed,
|
||||||
|
COUNT(*)
|
||||||
|
FROM load_new_guix_revision_jobs
|
||||||
|
INNER JOIN git_repositories
|
||||||
|
ON load_new_guix_revision_jobs.git_repository_id =
|
||||||
|
git_repositories.id
|
||||||
|
GROUP BY 1, 2")
|
||||||
|
|
||||||
|
(map (match-lambda
|
||||||
|
((label completed count)
|
||||||
|
(list label
|
||||||
|
(string=? "t" completed)
|
||||||
|
(string->number count))))
|
||||||
|
(exec-query conn query)))
|
||||||
|
|
||||||
(define (select-job-for-commit conn commit)
|
(define (select-job-for-commit conn commit)
|
||||||
(let ((result
|
(let ((result
|
||||||
(exec-query
|
(exec-query
|
||||||
|
|
|
||||||
|
|
@ -89,6 +89,12 @@
|
||||||
(revisions-count-metric (make-gauge-metric registry
|
(revisions-count-metric (make-gauge-metric registry
|
||||||
"revision_count"))
|
"revision_count"))
|
||||||
|
|
||||||
|
(load-new-guix-revision-job-count (make-gauge-metric
|
||||||
|
registry
|
||||||
|
"load_new_guix_revision_job_count"
|
||||||
|
#:labels '(repository_label
|
||||||
|
completed)))
|
||||||
|
|
||||||
(table-row-estimate-metric (make-gauge-metric registry
|
(table-row-estimate-metric (make-gauge-metric registry
|
||||||
"table_row_estimate"
|
"table_row_estimate"
|
||||||
#:labels '(name)))
|
#:labels '(name)))
|
||||||
|
|
@ -123,6 +129,16 @@
|
||||||
(metric-set revisions-count-metric
|
(metric-set revisions-count-metric
|
||||||
(count-guix-revisions conn))
|
(count-guix-revisions conn))
|
||||||
|
|
||||||
|
(for-each (match-lambda
|
||||||
|
((repository-label completed count)
|
||||||
|
(metric-set
|
||||||
|
load-new-guix-revision-job-count
|
||||||
|
count
|
||||||
|
#:label-values
|
||||||
|
`((repository_label . ,repository-label)
|
||||||
|
(completed . ,(if completed "yes" "no"))))))
|
||||||
|
(select-load-new-guix-revision-job-metrics conn))
|
||||||
|
|
||||||
(list (build-response
|
(list (build-response
|
||||||
#:code 200
|
#:code 200
|
||||||
#:headers '((content-type . (text/plain))))
|
#:headers '((content-type . (text/plain))))
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue