WikiPrint - from Polar Technologies

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:

  1. 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) 
    
  1. 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';
    
    
  1. 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

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