Entferne Info-Logs aus den Worker-Klassen: Reduziere die Protokollierung in ProduceWorker, DirectorWorker und TransportWorker, um die Ausgabe zu optimieren und nur Fehler zu protokollieren.

This commit is contained in:
Torsten Schulz (local)
2025-12-16 12:58:37 +01:00
parent d2e253b79a
commit 6d12c70d84
4 changed files with 10 additions and 89 deletions

View File

@@ -117,7 +117,7 @@ impl BaseWorker {
// beim Debuggen selten. Deshalb nur loggen, wenn der Worker // beim Debuggen selten. Deshalb nur loggen, wenn der Worker
// sich nicht im Idle-Zustand befindet. // sich nicht im Idle-Zustand befindet.
if !step.ends_with(" idle") { if !step.ends_with(" idle") {
eprintln!("[{name}] Watchdog: current step = {step}"); // keine Info-Logs im Watchdog
} }
} }
})); }));

View File

@@ -153,7 +153,7 @@ impl DirectorWorker {
.collect(); .collect();
if directors.is_empty() { if directors.is_empty() {
eprintln!("[DirectorWorker] Keine Direktoren für Aktionen gefunden (Zeitfenster oder DB-Daten)."); // keine Info-Logs
} }
for director in directors { for director in directors {

View File

@@ -126,14 +126,7 @@ impl ProduceWorker {
self.base self.base
.set_current_step("Process Finished Productions"); .set_current_step("Process Finished Productions");
if finished_productions.is_empty() { // Nur Fehler loggen; keine Debug-Infos
eprintln!("[ProduceWorker] Keine abgeschlossenen Produktionen gefunden.");
} else {
eprintln!(
"[ProduceWorker] Verarbeite {} abgeschlossene Produktionen.",
finished_productions.len()
);
}
for production in finished_productions { for production in finished_productions {
self.handle_finished_production(&production); self.handle_finished_production(&production);
@@ -182,15 +175,7 @@ impl ProduceWorker {
} }
}; };
if stocks.is_empty() { // Ruhemodus: keine Info-Logs, nur Fehler
eprintln!("[ProduceWorker] Keine Stocks für Branch {branch_id} gefunden.");
} else {
eprintln!(
"[ProduceWorker] {} Stocks gefunden für Branch {}.",
stocks.len(),
branch_id
);
}
for stock in stocks { for stock in stocks {
if remaining_quantity <= 0 { if remaining_quantity <= 0 {
@@ -198,35 +183,18 @@ impl ProduceWorker {
} }
let free_capacity = stock.total_capacity - stock.filled; let free_capacity = stock.total_capacity - stock.filled;
eprintln!( // keine Debug-Ausgabe
"[ProduceWorker] Stock {}: capacity={}, filled={}, free={}",
stock.stock_id,
stock.total_capacity,
stock.filled,
free_capacity
);
if free_capacity <= 0 { if free_capacity <= 0 {
continue; continue;
} }
let to_store = min(remaining_quantity, free_capacity); let to_store = min(remaining_quantity, free_capacity);
eprintln!( // keine Debug-Ausgabe
"[ProduceWorker] Versuche Einlagerung: stock={}, product={}, qty={}, quality={}",
stock.stock_id,
product_id,
to_store,
quality
);
if !self.store_in_stock(stock.stock_id, product_id, to_store, quality) { if !self.store_in_stock(stock.stock_id, product_id, to_store, quality) {
return false; return false;
} }
remaining_quantity -= to_store; remaining_quantity -= to_store;
eprintln!( // keine Debug-Ausgabe
"[ProduceWorker] Eingelagert: stock={}, qty={} (remaining={})",
stock.stock_id,
to_store,
remaining_quantity
);
} }
if remaining_quantity == 0 { if remaining_quantity == 0 {
@@ -358,12 +326,7 @@ impl ProduceWorker {
.map_err(|e| crate::db::DbError::new(format!("DB-Verbindung fehlgeschlagen: {e}")))?; .map_err(|e| crate::db::DbError::new(format!("DB-Verbindung fehlgeschlagen: {e}")))?;
conn.prepare("insert_inventory", QUERY_INSERT_INVENTORY)?; conn.prepare("insert_inventory", QUERY_INSERT_INVENTORY)?;
let rows = conn.execute("insert_inventory", &[&stock_id, &product_id, &quantity, &quality])?; let _rows = conn.execute("insert_inventory", &[&stock_id, &product_id, &quantity, &quality])?;
if let Some(row) = rows.get(0) {
if let Some(id) = row.get("id") {
eprintln!("[ProduceWorker] Insert inventory id={}", id);
}
}
Ok(()) Ok(())
} }

View File

@@ -12,7 +12,6 @@ use crate::worker::sql::{
QUERY_INSERT_INVENTORY, QUERY_INSERT_INVENTORY,
QUERY_UPDATE_VEHICLE_AFTER_TRANSPORT, QUERY_UPDATE_VEHICLE_AFTER_TRANSPORT,
QUERY_DELETE_TRANSPORT, QUERY_DELETE_TRANSPORT,
QUERY_ADD_TRANSPORT_WAITING_NOTIFICATION,
QUERY_GET_BRANCH_REGION, QUERY_GET_BRANCH_REGION,
QUERY_UPDATE_TRANSPORT_SIZE, QUERY_UPDATE_TRANSPORT_SIZE,
}; };
@@ -141,10 +140,7 @@ impl TransportWorker {
// Leere Transporte (ohne Produkt) werden anders behandelt // Leere Transporte (ohne Produkt) werden anders behandelt
if t.product_id.is_none() { if t.product_id.is_none() {
// Leerer Transport: Nur Fahrzeug-Region aktualisieren und Transport löschen // Leerer Transport: Nur Fahrzeug-Region aktualisieren und Transport löschen
eprintln!( // keine Info-Logs
"[TransportWorker] Leerer Transport {} angekommen: Fahrzeug {} zurückgeholt",
t.id, t.vehicle_id
);
Self::update_vehicle_after_transport(pool, t.vehicle_id, t.target_branch_id, t.distance)?; Self::update_vehicle_after_transport(pool, t.vehicle_id, t.target_branch_id, t.distance)?;
Self::delete_transport(pool, t.id)?; Self::delete_transport(pool, t.id)?;
@@ -229,18 +225,7 @@ impl TransportWorker {
} }
} }
// Nutzer informieren, dass Ware noch im Transportmittel liegt. // Keine Notification für wartende Transporte, um Notification-System zu entlasten.
if t.user_id > 0 && let Err(err) = Self::insert_transport_waiting_notification(
pool,
t.user_id,
product_id,
remaining_quantity,
)
{
eprintln!(
"[TransportWorker] Fehler beim Schreiben der Transport-Waiting-Notification: {err}"
);
}
} }
Ok(()) Ok(())
@@ -394,33 +379,6 @@ impl TransportWorker {
Ok(()) Ok(())
} }
fn insert_transport_waiting_notification(
pool: &ConnectionPool,
user_id: i32,
product_id: i32,
remaining_quantity: i32,
) -> Result<(), DbError> {
let mut conn = pool
.get()
.map_err(|e| DbError::new(format!("DB-Verbindung fehlgeschlagen: {e}")))?;
conn.prepare(
"add_transport_waiting_notification",
QUERY_ADD_TRANSPORT_WAITING_NOTIFICATION,
)?;
let notification = format!(
r#"{{"tr":"transport.waiting","productId":{},"value":{}}}"#,
product_id, remaining_quantity
);
conn.execute(
"add_transport_waiting_notification",
&[&user_id, &notification],
)?;
Ok(())
}
} }
impl Worker for TransportWorker { impl Worker for TransportWorker {