web: enable prometheus again
This commit is contained in:
parent
b428116189
commit
a31d69d111
|
@ -949,6 +949,7 @@ dependencies = [
|
||||||
"rocket_codegen",
|
"rocket_codegen",
|
||||||
"rocket_dyn_templates",
|
"rocket_dyn_templates",
|
||||||
"rocket_i18n",
|
"rocket_i18n",
|
||||||
|
"rocket_prometheus",
|
||||||
"sequoia-openpgp",
|
"sequoia-openpgp",
|
||||||
"serde",
|
"serde",
|
||||||
"serde_derive",
|
"serde_derive",
|
||||||
|
@ -2067,6 +2068,20 @@ dependencies = [
|
||||||
"yansi",
|
"yansi",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "prometheus"
|
||||||
|
version = "0.13.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "b7f64969ffd5dd8f39bd57a68ac53c163a095ed9d0fb707146da1b27025a3504"
|
||||||
|
dependencies = [
|
||||||
|
"cfg-if 1.0.0",
|
||||||
|
"fnv",
|
||||||
|
"lazy_static",
|
||||||
|
"memchr",
|
||||||
|
"parking_lot",
|
||||||
|
"thiserror",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "quick-error"
|
name = "quick-error"
|
||||||
version = "1.2.3"
|
version = "1.2.3"
|
||||||
|
@ -2505,6 +2520,15 @@ dependencies = [
|
||||||
"rocket",
|
"rocket",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "rocket_prometheus"
|
||||||
|
version = "0.9.0"
|
||||||
|
source = "git+https://github.com/sd2k/rocket_prometheus?branch=async#a913a451555ba1344e88c9e730c4164b20032c40"
|
||||||
|
dependencies = [
|
||||||
|
"prometheus",
|
||||||
|
"rocket",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "rustc-demangle"
|
name = "rustc-demangle"
|
||||||
version = "0.1.21"
|
version = "0.1.21"
|
||||||
|
|
|
@ -33,7 +33,7 @@ num_cpus = "1.0"
|
||||||
ring = "0.13"
|
ring = "0.13"
|
||||||
base64 = "0.10"
|
base64 = "0.10"
|
||||||
uuid = { version = "0.7", features = [ "v4" ] }
|
uuid = { version = "0.7", features = [ "v4" ] }
|
||||||
# rocket_prometheus = "0.2"
|
rocket_prometheus = { git = "https://github.com/sd2k/rocket_prometheus", branch = "async" }
|
||||||
lazy_static = "1.3.0"
|
lazy_static = "1.3.0"
|
||||||
gettext-macros = "0.6"
|
gettext-macros = "0.6"
|
||||||
gettext-utils = "0.1"
|
gettext-utils = "0.1"
|
||||||
|
|
|
@ -1,12 +1,10 @@
|
||||||
use lazy_static::lazy_static;
|
use lazy_static::lazy_static;
|
||||||
// use rocket_prometheus::prometheus;
|
use rocket_prometheus::prometheus;
|
||||||
|
|
||||||
use crate::anonymize_utils;
|
use crate::anonymize_utils;
|
||||||
|
|
||||||
use crate::database::types::Email;
|
use crate::database::types::Email;
|
||||||
|
|
||||||
// TODO this module is a stub at the moment for rocket 0.5 migration. reintroduce later on?
|
|
||||||
|
|
||||||
lazy_static! {
|
lazy_static! {
|
||||||
static ref KEY_UPLOAD: LabelCounter =
|
static ref KEY_UPLOAD: LabelCounter =
|
||||||
LabelCounter::new("hagrid_key_upload", "Uploaded keys", &["result"]);
|
LabelCounter::new("hagrid_key_upload", "Uploaded keys", &["result"]);
|
||||||
|
@ -20,7 +18,6 @@ lazy_static! {
|
||||||
LabelCounter::new("hagrid_key_address_unpublished", "Unpublished email addresses", &["domain"]);
|
LabelCounter::new("hagrid_key_address_unpublished", "Unpublished email addresses", &["domain"]);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
pub fn register_counters(registry: &prometheus::Registry) {
|
pub fn register_counters(registry: &prometheus::Registry) {
|
||||||
KEY_UPLOAD.register(registry);
|
KEY_UPLOAD.register(registry);
|
||||||
|
|
||||||
|
@ -29,7 +26,6 @@ pub fn register_counters(registry: &prometheus::Registry) {
|
||||||
KEY_ADDRESS_PUBLISHED.register(registry);
|
KEY_ADDRESS_PUBLISHED.register(registry);
|
||||||
KEY_ADDRESS_UNPUBLISHED.register(registry);
|
KEY_ADDRESS_UNPUBLISHED.register(registry);
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
|
|
||||||
pub fn inc_key_upload(upload_result: &str) {
|
pub fn inc_key_upload(upload_result: &str) {
|
||||||
KEY_UPLOAD.inc(&[upload_result]);
|
KEY_UPLOAD.inc(&[upload_result]);
|
||||||
|
@ -51,24 +47,21 @@ pub fn inc_address_unpublished(email: &Email) {
|
||||||
}
|
}
|
||||||
|
|
||||||
struct LabelCounter {
|
struct LabelCounter {
|
||||||
// prometheus_counter: prometheus::IntCounterVec,
|
prometheus_counter: prometheus::IntCounterVec,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl LabelCounter {
|
impl LabelCounter {
|
||||||
fn new(name: &str, help: &str, labels: &[&str]) -> Self {
|
fn new(name: &str, help: &str, labels: &[&str]) -> Self {
|
||||||
// let opts = prometheus::Opts::new(name, help);
|
let opts = prometheus::Opts::new(name, help);
|
||||||
// let prometheus_counter = prometheus::IntCounterVec::new(opts, labels).unwrap();
|
let prometheus_counter = prometheus::IntCounterVec::new(opts, labels).unwrap();
|
||||||
// Self { prometheus_counter }
|
Self { prometheus_counter }
|
||||||
Self { }
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
fn register(&self, registry: &prometheus::Registry) {
|
fn register(&self, registry: &prometheus::Registry) {
|
||||||
registry.register(Box::new(self.prometheus_counter.clone())).unwrap();
|
registry.register(Box::new(self.prometheus_counter.clone())).unwrap();
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
|
|
||||||
fn inc(&self, values: &[&str]) {
|
fn inc(&self, values: &[&str]) {
|
||||||
// self.prometheus_counter.with_label_values(values).inc();
|
self.prometheus_counter.with_label_values(values).inc();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,6 +8,7 @@ use rocket::response::{Responder, Response};
|
||||||
use rocket::response::status::Custom;
|
use rocket::response::status::Custom;
|
||||||
use rocket_dyn_templates::{Engines, Template};
|
use rocket_dyn_templates::{Engines, Template};
|
||||||
use rocket_i18n::I18n;
|
use rocket_i18n::I18n;
|
||||||
|
use rocket_prometheus::PrometheusMetrics;
|
||||||
use hyperx::header::{ContentDisposition, DispositionType, DispositionParam, Charset};
|
use hyperx::header::{ContentDisposition, DispositionType, DispositionParam, Charset};
|
||||||
|
|
||||||
use gettext_macros::{compile_i18n, include_i18n};
|
use gettext_macros::{compile_i18n, include_i18n};
|
||||||
|
@ -18,6 +19,7 @@ use std::path::PathBuf;
|
||||||
|
|
||||||
use crate::mail;
|
use crate::mail;
|
||||||
use crate::tokens;
|
use crate::tokens;
|
||||||
|
use crate::counters;
|
||||||
use crate::i18n_helpers::describe_query_error;
|
use crate::i18n_helpers::describe_query_error;
|
||||||
use crate::template_helpers::TemplateOverrides;
|
use crate::template_helpers::TemplateOverrides;
|
||||||
use crate::i18n::I18NHelper;
|
use crate::i18n::I18NHelper;
|
||||||
|
@ -404,7 +406,7 @@ fn rocket_factory(mut rocket: rocket::Rocket<rocket::Build>) -> Result<rocket::R
|
||||||
let localized_template_list = configure_localized_template_list(figment)?;
|
let localized_template_list = configure_localized_template_list(figment)?;
|
||||||
println!("{:?}", localized_template_list);
|
println!("{:?}", localized_template_list);
|
||||||
|
|
||||||
// let prometheus = configure_prometheus(rocket.config());
|
let prometheus = configure_prometheus(figment);
|
||||||
|
|
||||||
rocket = rocket
|
rocket = rocket
|
||||||
.attach(Template::custom(|engines: &mut Engines| {
|
.attach(Template::custom(|engines: &mut Engines| {
|
||||||
|
@ -423,18 +425,15 @@ fn rocket_factory(mut rocket: rocket::Rocket<rocket::Build>) -> Result<rocket::R
|
||||||
.manage(localized_template_list)
|
.manage(localized_template_list)
|
||||||
.mount("/", routes);
|
.mount("/", routes);
|
||||||
|
|
||||||
/*
|
|
||||||
if let Some(prometheus) = prometheus {
|
if let Some(prometheus) = prometheus {
|
||||||
rocket = rocket
|
rocket = rocket
|
||||||
.attach(prometheus.clone())
|
.attach(prometheus.clone())
|
||||||
.mount("/metrics", prometheus);
|
.mount("/metrics", prometheus);
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
|
|
||||||
Ok(rocket)
|
Ok(rocket)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
fn configure_prometheus(config: &Figment) -> Option<PrometheusMetrics> {
|
fn configure_prometheus(config: &Figment) -> Option<PrometheusMetrics> {
|
||||||
if !config.extract_inner("enable_prometheus").unwrap_or(false) {
|
if !config.extract_inner("enable_prometheus").unwrap_or(false) {
|
||||||
return None;
|
return None;
|
||||||
|
@ -443,7 +442,6 @@ fn configure_prometheus(config: &Figment) -> Option<PrometheusMetrics> {
|
||||||
counters::register_counters(&prometheus.registry());
|
counters::register_counters(&prometheus.registry());
|
||||||
return Some(prometheus);
|
return Some(prometheus);
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
|
|
||||||
fn configure_db_service(config: &Figment) -> Result<KeyDatabase> {
|
fn configure_db_service(config: &Figment) -> Result<KeyDatabase> {
|
||||||
let keys_internal_dir: PathBuf = config.extract_inner("keys_internal_dir")?;
|
let keys_internal_dir: PathBuf = config.extract_inner("keys_internal_dir")?;
|
||||||
|
|
Loading…
Reference in New Issue