From 1c8473cce9757bc63b15fbbaa7972b3a86d14272 Mon Sep 17 00:00:00 2001 From: trinity-1686a Date: Thu, 7 Mar 2024 15:29:01 +0100 Subject: [PATCH] warn on index/source creation failure (#4687) --- .../quickwit-serve/src/index_api/rest_handler.rs | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/quickwit/quickwit-serve/src/index_api/rest_handler.rs b/quickwit/quickwit-serve/src/index_api/rest_handler.rs index 603986d2686..a99c35eb922 100644 --- a/quickwit/quickwit-serve/src/index_api/rest_handler.rs +++ b/quickwit/quickwit-serve/src/index_api/rest_handler.rs @@ -40,7 +40,7 @@ use quickwit_proto::types::IndexUid; use quickwit_query::query_ast::{query_ast_from_user_text, QueryAst}; use serde::de::DeserializeOwned; use serde::{Deserialize, Serialize}; -use tracing::info; +use tracing::{info, warn}; use warp::{Filter, Rejection}; use crate::format::{extract_config_format, extract_format_from_qs}; @@ -67,6 +67,17 @@ use crate::with_arg; )] pub struct IndexApi; +fn log_failure( + message: &'static str, +) -> impl Fn(Result) -> Result + Clone { + move |result| { + if let Err(err) = &result { + warn!("{message}: {err}"); + }; + result + } +} + pub fn index_management_handlers( index_service: IndexService, node_config: Arc, @@ -471,6 +482,7 @@ fn create_index_handler( .and(with_arg(index_service)) .and(with_arg(node_config)) .then(create_index) + .map(log_failure("failed to create index")) .and(extract_format_from_qs()) .map(into_rest_api_response) } @@ -594,6 +606,7 @@ fn create_source_handler( .and(warp::filters::body::bytes()) .and(with_arg(index_service)) .then(create_source) + .map(log_failure("failed to create source")) .and(extract_format_from_qs()) .map(into_rest_api_response) }