1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130
|
Description: Disable metrics from the server.
Depends on unavailable deps. Plus, some might prefer not on public servers.
Forwarded: not-needed
Last-Update: 2025-08-16
--- a/crates/atuin-server/src/lib.rs
+++ b/crates/atuin-server/src/lib.rs
@@ -12,3 +12,3 @@
mod handlers;
-mod metrics;
+//mod metrics;
mod router;
@@ -24,2 +24,7 @@
+macro_rules! null_counter {
+ ($($t:expr),*) => {};
+}
+pub(crate) use null_counter;
+
#[cfg(target_family = "unix")]
@@ -115,3 +120,4 @@
// the public.
-pub async fn launch_metrics_server(host: String, port: u16) -> Result<()> {
+pub async fn launch_metrics_server(host: String, port: u16) -> Result<()> { Ok(()) }
+#[cfg(any())] pub async fn launch_metrics_server(host: String, port: u16) -> Result<()> {
let listener = TcpListener::bind((host, port))
--- a/crates/atuin-server/src/handlers/history.rs
+++ b/crates/atuin-server/src/handlers/history.rs
@@ -7,3 +7,3 @@
};
-use metrics::counter;
+use crate::null_counter as counter;
use time::{Month, UtcOffset};
--- a/crates/atuin-server/src/handlers/user.rs
+++ b/crates/atuin-server/src/handlers/user.rs
@@ -13,3 +13,3 @@
};
-use metrics::counter;
+use crate::null_counter as counter;
--- a/crates/atuin-server/src/router.rs
+++ b/crates/atuin-server/src/router.rs
@@ -17,3 +17,3 @@
handlers::{ErrorResponseStatus, RespExt},
- metrics,
+ //metrics,
settings::Settings,
@@ -151,3 +151,3 @@
.layer(TraceLayer::new_for_http())
- .layer(axum::middleware::from_fn(metrics::track_metrics))
+ //.layer(axum::middleware::from_fn(metrics::track_metrics))
.layer(axum::middleware::from_fn(semver)),
--- a/crates/atuin-server/src/handlers/v0/record.rs
+++ b/crates/atuin-server/src/handlers/v0/record.rs
@@ -1,3 +1,3 @@
use axum::{Json, extract::Query, extract::State, http::StatusCode};
-use metrics::counter;
+use crate::null_counter as counter;
use serde::Deserialize;
--- a/crates/atuin-server/src/handlers/v0/store.rs
+++ b/crates/atuin-server/src/handlers/v0/store.rs
@@ -1,3 +1,3 @@
use axum::{extract::Query, extract::State, http::StatusCode};
-use metrics::counter;
+use crate::null_counter as counter;
use serde::Deserialize;
--- a/crates/atuin-server/Cargo.toml
+++ b/crates/atuin-server/Cargo.toml
@@ -34,4 +34,4 @@
semver = { workspace = true }
-metrics-exporter-prometheus = "0.12.1"
-metrics = "0.21.1"
+#metrics-exporter-prometheus = "0.12.1"
+#metrics = "0.21.1"
postmark = {version= "0.11", features=["reqwest", "reqwest-rustls-tls"]}
--- a/crates/atuin-server/server.toml
+++ b/crates/atuin-server/server.toml
@@ -26,2 +26,3 @@
+## Debian: metrics is disabled in Debian. This section takes no effect.
# [metrics]
--- a/crates/atuin-server-postgres/Cargo.toml
+++ b/crates/atuin-server-postgres/Cargo.toml
@@ -22,3 +22,3 @@
uuid = { workspace = true }
-metrics = "0.21.1"
+#metrics = "0.21.1"
futures-util = "0.3"
--- a/crates/atuin-server-sqlite/Cargo.toml
+++ b/crates/atuin-server-sqlite/Cargo.toml
@@ -22,3 +22,3 @@
uuid = { workspace = true }
-metrics = "0.21.1"
+#metrics = "0.21.1"
futures-util = "0.3"
--- a/crates/atuin/src/command/server.rs
+++ b/crates/atuin/src/command/server.rs
@@ -10,3 +10,3 @@
-use atuin_server::{Settings, example_config, launch, launch_metrics_server};
+use atuin_server::{Settings, example_config, launch, /*launch_metrics_server*/};
@@ -47,3 +47,3 @@
- if settings.metrics.enable {
+ #[cfg(feature = "metrics")] if settings.metrics.enable {
tokio::spawn(launch_metrics_server(
--- a/crates/atuin/tests/common/mod.rs
+++ b/crates/atuin/tests/common/mod.rs
@@ -39,3 +39,3 @@
db_settings: DbSettings { db_uri },
- metrics: atuin_server::settings::Metrics::default(),
+ //metrics: atuin_server::settings::Metrics::default(),
tls: atuin_server::settings::Tls::default(),
--- a/crates/atuin-server/src/settings.rs
+++ b/crates/atuin-server/src/settings.rs
@@ -38,3 +38,3 @@
#[derive(Clone, Debug, Deserialize, Serialize)]
-pub struct Metrics {
+#[cfg(feature = "metrics")] pub struct Metrics {
#[serde(alias = "enabled")]
@@ -45,3 +45,3 @@
-impl Default for Metrics {
+#[cfg(feature = "metrics")] impl Default for Metrics {
fn default() -> Self {
@@ -66,3 +66,3 @@
pub register_webhook_username: String,
- pub metrics: Metrics,
+ #[cfg(feature = "metrics")] pub metrics: Metrics,
pub tls: Tls,
|