Enhance error logging in change_falukant_user_money function: Added detailed logging for parameters before executing the database update and improved error handling for serialization issues, enhancing traceability and debugging capabilities.

This commit is contained in:
Torsten Schulz (local)
2025-12-08 16:01:25 +01:00
parent ad0033031d
commit f7c4919a2a

View File

@@ -162,7 +162,29 @@ impl BaseWorker {
let p2: &(dyn ToSql + Sync) = &money_change; let p2: &(dyn ToSql + Sync) = &money_change;
let p3: &(dyn ToSql + Sync) = &action; let p3: &(dyn ToSql + Sync) = &action;
let _ = conn.execute("update_money", &[p1, p2, p3])?; // Debug: Logge die Parameter kurz vor dem Execute (nur stderr)
eprintln!(
"[BaseWorker] change_falukant_user_money: calling update_money with user_id={}, money_change={}, action={}",
falukant_user_id, money_change, action
);
match conn.execute("update_money", &[p1, p2, p3]) {
Ok(rows) => {
// rows als Vec<Row> zurückgegeben, nichts weiter tun
let _ = rows;
}
Err(err) => {
// Wenn der Postgres-Client ein Serialisierungsproblem meldet,
// erweitern wir das Log um die tatsächlichen Parameterwerte.
if format!("{err}").contains("serializing parameter") {
eprintln!(
"[BaseWorker] Fehler beim Serialisieren der DB-Parameter: user_id={}, money_change={}, action={}. Original: {err}",
falukant_user_id, money_change, action
);
}
return Err(err.into());
}
}
Ok(()) Ok(())
} }