Hallo Forum,
wie managed ihr die Tabelle OS_LOG ?
Vielleicht habe ich im sehr umfangreichen Handbuch die entsprechende Stellen übersehen. Mir ist die Tabelle zunächst nur über die Datenbank-Admin-Ansicht in Ordersprinter wegen zig-Millionen Einträgen aufgefallen. Über phpmyadmin sieht man das es sich im wesentlichen um Print-Logs handelt.
Habe bisher keine Einstellung in Ordersprinter gefunden, um die Anzahl beeinflussen zu können.
Die Funktion DB-Optimierung in Ordersprinter löscht offensichtlich keine veraltete OS_LOG Einträge. Hatte zumindest bei mir keinen Effekt, aber vielleicht habe ich da noch was übersehen.
Aktuell nehme ich an, man muss die OS_LOG über MySql oder besser phpmyadmin regelmäßig bereinigen.
Gibt es bessere Methoden/Vorschläge von erfahrenen OS-Anwendern ?
Danke und Gruß
Jürgen
Tabelle OS_LOG wächst schnell
-
pichel
- Administrator
- Beiträge: 1460
- Registriert: So 13. Sep 2015, 19:48
- Wohnort: Hamburg
- Kontaktdaten:
Re: Tabelle OS_LOG wächst schnell
Hallo Jürgen,
das persistente Schreiben in die Log-Tabelle kann man über den Schalter "Debug-Logging" in der Kongiguration/Einstellungen für spezielle Abläufe deaktivieren. In dem Fall werden die Einträge der Tabelle mit jeder Tageserfassung wieder gelöscht. In der Version 3.0.0, an der ich gerade arbeite, habe ich die Einstellung nun standardmäßig gesetzt, weil bereits andere Anwender die gleiche Frage hatten. Unabh. davon hat die Größe der Logtabelle keinen Einfluss auf die Performance der Datenbank und bei der Datensicherung wird die Log-Tabelle im Standard explizit ausgenommen (der größere und oben stehende Sicherungs-Button ist deswegen mit "Alles (ohne Logs)" beschriftet. Aber im Fehlerfall, insbesondere bei Druckproblemen, hilft die Tabelle mir beim Nachvollziehen, warum bei einem Anwender der Druck nicht so geklappt hat wie er erwartet hat.
"Optimieren" der Tabellen bedeutet übrigens, dass die Tabellen im Falle von MySQL/MariaDb komplett neu geschrieben werden. Dadurch wird Speicher freigegeben, der bei SQL-Lösch-Operationen zwar als frei deklariert, aber nicht tatsächlich freigegeben wird und so die Datenbank auf Dauer fragmentiert. OrderSprinter "optimiert" dabei nur die Tabellen, bei denen tatsächlich regelmäßig DELETE-Operationen stattfinden. Der Wartungsbefehl heißt bei MySQL/MariaDB OPTIMIZE (daher habe ich den Button auch so bezeichnet), bei Potgresql VACUUM - und andere Datenbanksysteme haben ihre eigenen Befehle dafür - aber vorhanden ist so ein Befehl eigentlich in jeder Datenbank.
Gruß,
Stefan
das persistente Schreiben in die Log-Tabelle kann man über den Schalter "Debug-Logging" in der Kongiguration/Einstellungen für spezielle Abläufe deaktivieren. In dem Fall werden die Einträge der Tabelle mit jeder Tageserfassung wieder gelöscht. In der Version 3.0.0, an der ich gerade arbeite, habe ich die Einstellung nun standardmäßig gesetzt, weil bereits andere Anwender die gleiche Frage hatten. Unabh. davon hat die Größe der Logtabelle keinen Einfluss auf die Performance der Datenbank und bei der Datensicherung wird die Log-Tabelle im Standard explizit ausgenommen (der größere und oben stehende Sicherungs-Button ist deswegen mit "Alles (ohne Logs)" beschriftet. Aber im Fehlerfall, insbesondere bei Druckproblemen, hilft die Tabelle mir beim Nachvollziehen, warum bei einem Anwender der Druck nicht so geklappt hat wie er erwartet hat.
"Optimieren" der Tabellen bedeutet übrigens, dass die Tabellen im Falle von MySQL/MariaDb komplett neu geschrieben werden. Dadurch wird Speicher freigegeben, der bei SQL-Lösch-Operationen zwar als frei deklariert, aber nicht tatsächlich freigegeben wird und so die Datenbank auf Dauer fragmentiert. OrderSprinter "optimiert" dabei nur die Tabellen, bei denen tatsächlich regelmäßig DELETE-Operationen stattfinden. Der Wartungsbefehl heißt bei MySQL/MariaDB OPTIMIZE (daher habe ich den Button auch so bezeichnet), bei Potgresql VACUUM - und andere Datenbanksysteme haben ihre eigenen Befehle dafür - aber vorhanden ist so ein Befehl eigentlich in jeder Datenbank.
Gruß,
Stefan
Stefan Pichel
Entwickler der Kassensoftware OrderSprinter (http://www.ordersprinter.de)
Entwickler der Kassensoftware OrderSprinter (http://www.ordersprinter.de)
Re: Tabelle OS_LOG wächst schnell
Hallo Stefan,
super das erklärt alles. Den Debugging-Schalter hatte ich nicht in Verbindung mit der OS_LOG Tabelle gesehen, macht aber Sinn.
Ich schaue halt gerade bei der Produktivsetzung etwas genauer hin, um mögliche Probleme rechtzeitig zu erkennen.
Werde Debug-Logging vorerst ausschalten.
Merci,
Jürgen
PS: Frage für mich erledigt
super das erklärt alles. Den Debugging-Schalter hatte ich nicht in Verbindung mit der OS_LOG Tabelle gesehen, macht aber Sinn.
Ich schaue halt gerade bei der Produktivsetzung etwas genauer hin, um mögliche Probleme rechtzeitig zu erkennen.
Werde Debug-Logging vorerst ausschalten.
Merci,
Jürgen
PS: Frage für mich erledigt