Version 17 (modified by JP, 6 years ago) |
---|
Zmniejszanie logów systemowych
Logi bazodanowe
System generuje dość sporo szczegółowych logów operacji, niektóre z nich po pewnym czasie tracą swoją ważność. W szczególności dotyczy to automatycznie/wsadowo wykonywanych akcji na kartotekach klientów, produktów, pobieraniu maili itp.
W celu zmniejszenia zawartości tabel zaleca się następującą procedurę (do wykonania poza godzinami pracy). Logi możemy podzielić na 3 grupy:
- Techniczne - mogą być czyszczone bez specjalnego namysłu, bo informacje tam zawarte mają raczej krótkotrwałą wartość. Najczęściej są to informacje o wykonaniu się jakiejś funkcji itp.
DELETE FROM contacts_log WHERE chacat = 'BS_SYNC_SUCCESS'; DELETE FROM addresses_log WHERE chacat = 'BS_SYNC_SUCCESS'; DELETE FROM email_accounts_log WHERE chacat IN ('FOLDER_SYNC','EMAIL_CACHE_ADD','EMAIL_CACHE_DELETE','LOG_AUTO_CLEAN'); DELETE FROM depository_log WHERE chacat = 'BS_SYNC_SUCCESS'; -- procedury z odpiętych dokumentów, spraw DELETE FROM procedures p WHERE NOT EXISTS (SELECT d.procid FROM documents d WHERE p.procid = d.procid AND d.procid IS NOT NULL) AND NOT EXISTS (SELECT d.procid FROM processes d WHERE p.procid = d.procid AND d.procid IS NOT NULL) AND NOT EXISTS (SELECT d.procid FROM rcp_cards d WHERE p.procid = d.procid AND d.procid IS NOT NULL) AND p.procid = p.rootpr
- Administracyjne - mogą być czyszczone ze wszystkich wpisów ale w oparciu o filtr DATY.
DELETE FROM contacts_log WHERE adddat < CURRENT_DATE - interval '2 years' AND chacat != 'ADDED'; DELETE FROM addresses_log WHERE adddat < CURRENT_DATE - interval '2 years' AND chacat != 'ADDED'; DELETE FROM email_accounts_log WHERE adddat < CURRENT_DATE - interval '2 years' AND chacat != 'ADDED'; DELETE FROM depository_log WHERE adddat < CURRENT_DATE - interval '2 years' AND chacat != 'ADDED';
- Logi obiektów - mogą być czyszczone tylko z technicznych kategorii wpisów
Logi plikowe
Logi w bazie danych to jeden z elementów dzięki, którym możemy odchudzić system. W systemie eDokumenty zapisują się także logi w formie plików tekstowych te również po jakimś czasie tracą ważność.
Lokalizacja plików z logami systemowymi:
/home/edokumenty/public_html/apps/edokumenty/var/log
- logi procesu BSConnect
/home/edokumenty/public_html/apps/edokumenty/var/log/BSCONNECT
- logi procesu CronRunner
/home/edokumenty/public_html/apps/edokumenty/var/log/CRON
- logi procesu FILE PREVIEW - więcej o procesie w tym artykule
/home/edokumenty/public_html/apps/edokumenty/var/log/FILE_PREVIEW
- logi procesu JET SEARCH - Wyszukiwarka
/home/edokumenty/public_html/apps/edokumenty/var/log/JET_SEARCH
- logi wykonywania patchy
/home/edokumenty/public_html/apps/edokumenty/var/log/PATCH_LOG
- logi wykonywania raportów
/home/edokumenty/public_html/apps/edokumenty/var/log/REPORT
- logi wykonywania aktualizacji na pliku config.inc, aktualizacja wykonywana przez aktualizator eDokumentów (nie zapisują się tutaj zmiany wykonane przez użytkownika)
/home/edokumenty/public_html/apps/edokumenty/var/log/configPatcher
Lokalizacja plików z logami backproca (synchronizacja poczty w tle)
/home/edokumenty/public_html/apps/backproc/log
Do automatyzacji usuwania wpisów starszych niż np 30 dni może posłużyć nam poniższy skrypt. W zależności od tego jakie elementy logów chcemy czyścić możemy utworzyć wpis na cały katalog /home/edokumenty/public_html/apps/edokumenty/var/log lub na poszczególne jego elementy
Powiązane tematy
Aby zoptymalizować wielkość tabel workflow warto skorzystać z rozwiązania opisanego w artukule:
http://support.edokumenty.eu/trac/wiki/DeployerGuide/Customization/ProcessAutomation
Na końcu umieszczono zapytanie czyszczące etapy, przez które nie przeszła procedura.