From 0fac9d8454529964cd4eb9f762dadd8280f7d5b4 Mon Sep 17 00:00:00 2001 From: Joshua Ferge Date: Thu, 19 Dec 2024 17:46:15 -0700 Subject: [PATCH] fix consumer --- .../src/processors/uptime_monitor_checks.rs | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/rust_snuba/src/processors/uptime_monitor_checks.rs b/rust_snuba/src/processors/uptime_monitor_checks.rs index 80069091353..c6d6378b845 100644 --- a/rust_snuba/src/processors/uptime_monitor_checks.rs +++ b/rust_snuba/src/processors/uptime_monitor_checks.rs @@ -37,7 +37,7 @@ pub fn deserialize_message( duration: monitor_message.duration_ms, region_slug: Some("global".to_string()), check_status: monitor_message.status, - check_status_reason: monitor_message.status_reason, + check_status_reason: monitor_message.status_reason.map(|r| r.r#type), http_status_code: monitor_message .request_info .unwrap() @@ -66,7 +66,7 @@ struct UptimeMonitorCheckMessage { actual_check_time_ms: f64, duration_ms: u64, status: String, - status_reason: Option, + status_reason: Option, trace_id: Uuid, request_info: Option, } @@ -74,6 +74,15 @@ struct UptimeMonitorCheckMessage { pub struct RequestInfo { pub http_status_code: Option, } +#[derive(Debug, PartialEq, Deserialize, Serialize)] +#[serde(rename_all = "snake_case")] +pub struct CheckStatusReason { + /// The type of the status reason + pub r#type: String, + + /// A human readable description of the status reason + pub description: String, +} #[derive(Debug, Default, Serialize)] pub struct UptimeMonitorCheckRow { @@ -109,7 +118,10 @@ mod tests { "actual_check_time_ms": 1702659277, "duration_ms": 100, "status": "ok", - "status_reason": "Request successful", + "status_reason": { + "type": "Request successful", + "description": "Request successful" + }, "http_status_code": 200, "trace_id": "550e8400-e29b-41d4-a716-446655440000", "request_info": {