diff --git a/quickwit/quickwit-indexing/src/actors/doc_processor.rs b/quickwit/quickwit-indexing/src/actors/doc_processor.rs index d8c86faca8c..cf1aca7752e 100644 --- a/quickwit/quickwit-indexing/src/actors/doc_processor.rs +++ b/quickwit/quickwit-indexing/src/actors/doc_processor.rs @@ -21,6 +21,7 @@ use std::string::FromUtf8Error; use std::sync::atomic::{AtomicU64, Ordering}; use std::sync::Arc; +use thiserror::Error; use anyhow::{bail, Context}; use async_trait::async_trait; use bytes::Bytes; @@ -79,12 +80,16 @@ impl JsonDoc { } } -#[derive(Debug)] +#[derive(Error, Debug)] pub enum DocProcessorError { + #[error("doc mapper parsing error: {0}")] DocMapperParsing(DocParsingError), + #[error("OLTP trace parsing error: {0}")] OltpTraceParsing(OtlpTraceError), + #[error("doc parsing error: {0}")] Parsing(String), #[cfg(feature = "vrl")] + #[error("VRL transform error: {0}")] Transform(VrlTerminate), } @@ -309,7 +314,7 @@ impl DocProcessorCounters { } DocProcessorError::Parsing(_) => { self.num_doc_parsing_errors.fetch_add(1, Ordering::Relaxed); - "json_parsing_error" + "parsing_error" } #[cfg(feature = "vrl")] DocProcessorError::Transform(_) => { @@ -408,7 +413,7 @@ impl DocProcessor { processed_docs.push(processed_doc); } Err(error) => { - warn!(index_id=self.counters.index_id, source_id=self.counters.source_id, error=?error); + warn!(index_id=self.counters.index_id, source_id=self.counters.source_id, "{}", error); self.counters.record_error(error, num_bytes as u64); } }