summaryrefslogtreecommitdiffstats
path: root/src/api/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/api/mod.rs')
-rw-r--r--src/api/mod.rs16
1 files changed, 11 insertions, 5 deletions
diff --git a/src/api/mod.rs b/src/api/mod.rs
index 98400c7..a2bd7e0 100644
--- a/src/api/mod.rs
+++ b/src/api/mod.rs
@@ -1,17 +1,19 @@
//! HTTP API: router, OpenAPI document and shared response helpers.
+pub(crate) mod auth;
mod debug;
+mod log;
mod peers;
mod store;
use axum::{
+ Router,
http::{
- header::{CONTENT_TYPE, ETAG},
HeaderValue, StatusCode,
+ header::{CONTENT_TYPE, ETAG},
},
response::{IntoResponse, Response},
routing::{delete, get, put},
- Router,
};
use serde_json::Value as JsonValue;
use sha2::{Digest, Sha256};
@@ -19,9 +21,9 @@ use tracing::{error, warn};
use utoipa::OpenApi;
use utoipa_swagger_ui::SwaggerUi;
-use crate::auth::{basic_auth, AuthState};
+use crate::api::auth::{AuthState, basic_auth};
+use crate::document::store::StoreError;
use crate::state::AppState;
-use crate::store::StoreError;
/// Builds the complete HTTP router. Everything except Swagger is authenticated.
pub(crate) fn router(state: AppState, auth_state: AuthState, debug_api: bool) -> Router {
@@ -36,7 +38,11 @@ pub(crate) fn router(state: AppState, auth_state: AuthState, debug_api: bool) ->
.route("/stream/{*key}", get(store::stream_store_entry))
.route("/peers", get(peers::list_peers))
.route("/peers/{peer}", delete(peers::delete_peer))
- .merge(crate::compaction::router::<AppState>());
+ .route(
+ "/admin/log",
+ get(log::get_log_filter).put(log::put_log_filter),
+ )
+ .merge(crate::remake::router::<AppState>());
if debug_api {
warn!("Debug API enabled");