Skip to content

Commit ac62c9e

Browse files
authored
merge: Merge pull request #406 from arunaengine/feat/observability
[feat] Node observability: metrics, probes, and structured logs
2 parents 5f57aed + 1faaa78 commit ac62c9e

30 files changed

Lines changed: 2346 additions & 184 deletions

.env.example

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,10 @@ ARUNA_FJALL_PERSIST_MODE=buffer
66
BLOB_ROOT=/tmp/aruna/blobstore
77
BLOB_MULTIPART_BUCKET=uploaded-parts
88
SOCKET_ADDRESS=0.0.0.0:3000
9+
# Dedicated operations listener serving /health, /ready (and /healthz, /readyz
10+
# aliases) plus /metrics. Keep this port cluster-internal: it is unauthenticated
11+
# by design. Defaults to 127.0.0.1:3002 (loopback) when unset.
12+
OPS_SOCKET_ADDRESS=127.0.0.1:3002
913
P2P_SOCKET_ADDRESS=0.0.0.0:3001
1014
P2P_ADDITIONAL_RELAY_URLS=
1115
REALM_DESCRIPTION="Aruna Realm"
@@ -57,4 +61,6 @@ MAX_HTTP_BODY_SIZE=1048576
5761
MAX_CLOCK_SKEW_SECS=
5862

5963
RUST_LOG=
64+
# Log output format: text (default) or json for structured log ingestion.
65+
LOG_FORMAT=text
6066
OTEL_EXPORTER_OTLP_ENDPOINT=

Cargo.lock

Lines changed: 44 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,7 @@ oxrdf = "0.3.3"
115115
parking_lot = { version = "0.12.5", features = ["deadlock_detection"] }
116116
percent-encoding = "2.3.2"
117117
postcard = { version = "1.1.3", features = ["alloc"] }
118+
prometheus-client = "0.23"
118119
proptest = "1.11.0"
119120
rand = "0.10.2"
120121
reqwest = { version = "0.13.4", default-features = false, features = [
@@ -133,14 +134,15 @@ tempfile = "3.27.0"
133134
thiserror = "2.0.18"
134135
tokio = { version = "1.52.3", features = ["full", "tracing"] }
135136
tokio-util = "0.7.18"
136-
tower = "0.5.3"
137-
tower-http = { version = "0.7.0", features = ["cors", "fs"] }
137+
tower = { version = "0.5.3", features = ["limit"] }
138+
tower-http = { version = "0.7.0", features = ["cors", "fs", "timeout"] }
138139
tracing = "0.1.44"
139140
tracing-opentelemetry = { version = "0.33.0", default-features = false }
140141
tracing-subscriber = { version = "0.3.23", features = [
141142
"env-filter",
142143
"time",
143144
"fmt",
145+
"json",
144146
"registry",
145147
] }
146148
ulid = { version = "2.0.1", features = ["serde"] }

api/Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ base64 = { workspace = true }
1717
hex.workspace = true
1818
opentelemetry = { workspace = true }
1919
percent-encoding = { workspace = true }
20+
prometheus-client = { workspace = true }
2021
serde = { workspace = true }
2122
serde_json = { workspace = true }
2223
thiserror = { workspace = true }

api/src/lib.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ pub mod auth;
44
pub mod cors;
55
pub mod error;
66
pub mod openapi;
7+
pub mod ops;
78
mod portal;
89
pub mod routes;
910
pub mod s3;

0 commit comments

Comments
 (0)