WIP configurable metrics

Jef Roosens 2022-12-28 17:39:45 +01:00
parent 4041d02760
commit aec97f498d
4 changed files with 14 additions and 1 deletions

View File

@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [Unreleased](https://git.rustybever.be/vieter-v/vieter/src/branch/dev)
### Added
* Metrics endpoint for Prometheus integration
## [0.5.0-rc.2](https://git.rustybever.be/vieter-v/vieter/src/tag/0.5.0-rc.2)
### Added

View File

@ -15,6 +15,7 @@ pub:
base_image string = 'archlinux:base-devel'
max_log_age int = -1
log_removal_schedule string = '0 0'
collect_metrics int = -1
}
// cmd returns the cli submodule that handles starting the server

View File

@ -101,14 +101,21 @@ pub fn server(conf Config) ! {
util.exit_with_message(1, 'Failed to initialize database: $err.msg()')
}
collector := if conf.collect_metrics > 0 {
&metrics.MetricsCollector(metrics.new_default_collector())
} else {
&metrics.MetricsCollector(metrics.new_null_collector())
}
mut app := &App{
logger: logger
api_key: conf.api_key
conf: conf
repo: repo
db: db
collector: collector
job_queue: build.new_job_queue(global_ce, conf.base_image)
collector: metrics.new_default_collector()
}
app.init_job_queue() or {
util.exit_with_message(1, 'Failed to inialize job queue: $err.msg()')

View File

@ -13,3 +13,4 @@ api_update_frequency = 2
image_rebuild_frequency = 1
max_concurrent_builds = 3
max_log_age = 64
collect_metrics = false