[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Dateikopien zwecks Debugging speichern - oder auch nicht. Aber wie?



Hi $LISTE,

ich grüble hier gerade über folgendem Problem:

Ein Debian-Linux-System bekommt über einen Netzwerkport Daten
angeliefert, verarbeitet diese, und schiebt sie über einen anderen
Netzwerkport weiter.

"Eigentlich" müsste es diese Daten nicht speichern, die ganze
Verarbeitung erfolgt im RAM.

Deswegen ist der Plattenplatz auf dem System auch nicht sonderlich groß.

Manchmal wäre es aber von Vorteil, eine Kopie der Daten zu haben, sei es
zum Debugging oder weil man sie noch mal von neuem losschicken möchte.

In den Datenverarbeitungsprozess so was wie ein tee /dateiname/hier
einzuschleusen, wäre kein Problem.

Aber wohin damit?

Auf der lokalen Platte ist nicht viel Platz, und wahrscheinlich ist sie
auch nicht sonderlich performant.

Ein vorhandener Netzwerkmount bzw. temporär angesteckter Datenträger?
Ließe sich mit "mountpoint" erkennen (mountpoint eingehängt, dann
dorthin wegschreiben, sonst nach /dev/null).
Setzt aber voraus, dass die Performance ausreichend schnell ist, dass
die Verarbeitung des Jobs nicht aufgehalten wird.

Per Mail rausschieben? Dann läuft der lokale Spool irgendwann über, wenn
der empfangende Server nicht erreichbar ist.

Syslog? Wäre für Statusnachrichten OK, aber nicht für dieses Datenvolumen.

Einen Server, der ebenfalls über Netzwerkport erreichbar ist, und die
Daten in Kopie bekommt? Aber wie darauf testen, dass der funktionsfähig
und performant ist (denn wenn er die Verbindung annimmt, aber dann zu
langsam ist, habe ich zig Netzwerkverbindungen zu ihm offen, während die
Jobs an ihr Originalziel längst übermittelt sind)?

Irgendein Mischkonstrukt mit lokal auf die Platte (oder in eine Ramdisk)
schreiben, im Hintergrund übers Netz schieben, und dann erst lokal löschen?

Hat einer von euch vielleicht so ein ähnliches Szenario und sich dafür
schon eine brauchbare Lösung überlegt?

Gruß
Stefan


Reply to: