Für einen reibungslosen Zugriff auf die Log-Datei, solltest du die Datei zum Schreiben öffnen, die Daten schreiben und dann die Datei wieder schließen.
Dann dürfte es auch keine gravierenden Geschwindigkeitseinbußen geben.
Genauso würde ich es auch machen bzw. mache ich das auch heute noch, wenn's denn schon mal keine
DB sein soll/darf/kann. Noch zu DOS-Zeiten war das schon so, und es hat im Netzwerk mit vielen Usern funktioniert. Damals waren es eben typisierte Dateien. Heute macht man das mit Streams, das ist aber schon der einzige Unterschied.
Für den Shared-Zugriff erstellt man während des Schreibvorganges eine temporäre Lock-Datei, die beispielsweise das Suffix '.$$$' hat. Wenn nun die Lockdatei existiert, wartet der Client mit dem lesen eine einstellbare Zeit (ca. 2 Sekunden) darauf, dass sie wieder verschwindet (sprich vom schreibenden Prozess gelöscht wird). Ist das nicht der Fall, hat sich der schreibende Prozess wohl verabschiedet. Dann versucht der Client vielleicht alternativ noch, die Lockdatei zu löschen. Funktioniert auch das nicht, muss wohl der Admin ran. Aber, ich kann mich - ausser bei Systemabstürzen - nicht daran erinnern.