diff --git a/src/bin/dual-iir.rs b/src/bin/dual-iir.rs index 0d924c3..3b2b702 100644 --- a/src/bin/dual-iir.rs +++ b/src/bin/dual-iir.rs @@ -201,7 +201,19 @@ const APP: () = { env!("CARGO_BIN_NAME"), stabilizer.net.mac_address, option_env!("BROKER") - .and_then(|data| data.parse().ok()) + .and_then(|data| { + data.parse::().map_or_else( + |err| { + log::error!( + "{:?}: Failed to parse broker IP ({:?}) - Falling back to default", + err, + data + ); + None + }, + |ip| Some(ip), + ) + }) .unwrap_or(DEFAULT_MQTT_BROKER.into()), ); diff --git a/src/bin/lockin.rs b/src/bin/lockin.rs index ee85dd9..334aeab 100644 --- a/src/bin/lockin.rs +++ b/src/bin/lockin.rs @@ -242,7 +242,19 @@ const APP: () = { env!("CARGO_BIN_NAME"), stabilizer.net.mac_address, option_env!("BROKER") - .and_then(|data| data.parse().ok()) + .and_then(|data| { + data.parse::().map_or_else( + |err| { + log::error!( + "{:?}: Failed to parse broker IP ({:?}) - Falling back to default", + err, + data + ); + None + }, + |ip| Some(ip), + ) + }) .unwrap_or(DEFAULT_MQTT_BROKER.into()), );