Jak długo przechowujesz pliki dziennika?

12

Mam aplikację, która zapisuje swoje pliki dziennika w specjalnym folderze. Teraz chciałbym dodać funkcję automatycznego usuwania tych dzienników po określonym czasie. Ale jak długo powinienem przechowywać pliki dziennika? Jakie są „dobre” wartości domyślne (7 lub 180 dni)? A może wolisz inne kryteria (np. Maks. Wykorzystane miejsce na dysku)?

Alex
źródło
3
Oczywiście, o ile TY myślisz, że będziesz ich potrzebować.
jak długo chcesz móc sprawdzić, czy wystąpił problem?
BlackICE
2
Co tak naprawdę jest zapisywane do tych plików?
Czy masz dobry powód, aby nie używać systemu rejestrowania systemu operacyjnego, aby użytkownik końcowy mógł sam decydować, scentralizować rejestrowanie za pomocą Splunk itp.?
hurfdurf

Odpowiedzi:

8

Nie ma jednej odpowiedzi. Czynniki do rozważenia:

  • wymogi prawne dotyczące zatrzymywania lub niszczenia
  • zasady firmy dotyczące przechowywania i niszczenia
  • jak długo dzienniki są użyteczne
  • na jakie pytania masz nadzieję odpowiedzieć z dzienników
  • ile miejsca zajmują

Mam kilka dzienników, które przewijają się w ciągu kilku dni, a inne są przechowywane przez lata.

Mam tendencję do przechowywania dzienników dostępu dłużej (w niektórych przypadkach na zawsze, po usunięciu z nich informacji identyfikujących) niż dzienników błędów, ponieważ teoretycznie nie potrzebuję ich po rozwiązaniu problemów.

Trzymam kilka innych dzienników debugowania (pokazujących aktywność użytkownika, sposób interakcji z systemem itp.), Abyśmy mogli zobaczyć, jak zmienia się sytuacja z każdą wersją.

...

Przypomina mi to anegdotę, kiedy pracowałem dla uniwersytetu - kierownictwo sprowadziło zewnętrznego konsultanta, który dokonał oceny zewnętrznego serwera WWW, który budowaliśmy. Powiedziano mi, żebym przekazał dzienniki z 3 miesięcy, aby sprawdzili, czy odpowiednio dobraliśmy system. Wiedziałem, że to znak, że nie wiedzieli, co do cholery robią, ponieważ uniwersytety są cykliczne - obciążenie serwera zmieniało się z czasem, ale z gwałtownymi wzrostami na początku każdego roku, czasem finału itp.

Joe H.
źródło
Czy oddzielasz różne typy plików dziennika? Czy masz różne pliki dziennika dotyczące błędów, informacji debugowania i aktywności użytkownika?
Tak ... byłoby do bani, gdybym musiał usunąć linie z dzienników w celu zachowania. Wydaje mi się, że fajnie jest mieć coś w jednym pliku podczas debugowania, ale mogę debugować według identyfikatora użytkownika / adresu IP podczas debugowania, więc mogę skorelować aktywność użytkownika z błędami. Jeśli nic więcej, zachowanie podobnych informacji w każdym pliku oznacza, że ​​lepiej się kompresują.
Joe H.
5

Zależy od wymagań ... mogą istnieć prawne wymagania dotyczące prowadzenia dokumentacji, a także musisz wziąć pod uwagę, jak długo będą one pomocne w rozwiązywaniu problemów.

David Stratton
źródło
1

Oprócz wymagań prawnych i rozważań dotyczących użyteczności, zależy to w dużej mierze od tego, ile miejsca na dysku zajmują twoje dzienniki. Widziałem, jak bardzo pełne programy obracają swoje dzienniki każdego dnia, podczas gdy bardzo ciche programy obracają się prawie nigdy.

W zależności od systemu warto rozważyć pakiet „logrotate” zamiast obsługiwać rotację dzienników wewnętrznie. Po prostu umieść plik z rozsądnymi wartościami domyślnymi w /etc/logrotate.d/ i pozwól użytkownikom go zmodyfikować, jeśli uznają to za konieczne.

Eswald
źródło
0

To zależy od branży, która będzie używać twojego oprogramowania. Istnieje wiele aplikacji produkcyjnych, które podlegają rządowym wymaganiom regulacyjnym, które mogą wymagać przechowywania danych wyjściowych, w tym plików dziennika, przez określony czas.

Jeśli Twoje zgłoszenie należy do jednego z tych obszarów lub nie masz pewności, powinieneś skonsultować się z działem prawnym swojej firmy.

Brad Barker
źródło
0

Z pewnością należy zarchiwizować dzienniki, zanim zabraknie miejsca. :)

W naszej organizacji dzienniki są archiwizowane codziennie. Tak więc specjalny folder „rejestrowania” będzie zawierał tylko dzienniki dla bieżącego dnia. Archiwum jest przechowywane przez 3 tygodnie na dysku w specjalnej lokalizacji archiwum z dużą ilością miejsca. Pomoże to prod. wsparcie deweloperów, aby sprawdzić, czy coś zostanie zgłoszone. Kopie zapasowe są zapisywane na taśmie (tak, taśmy!) Po 3 tygodniach. Jako polisy taśmy są przechowywane przez kolejne 35 dni.

posiadacz pierścienia
źródło
0

Obecnie podejmuję tę samą decyzję. Mam aplikację, która zapisuje niekrytyczne wyjątki do pliku dziennika, a na tym, co ustaliłem, jest ustawienie progu rozmiaru, który można skonfigurować dla samego pliku dziennika. Gdy plik dziennika osiągnie określony rozmiar, zostanie zarchiwizowany. Archiwum będzie czyszczone raz w tygodniu. Zastanawiam się również nad ustawieniem progu „Tempo wzrostu”, więc jeśli dziennik zapełni się zbyt szybko, obsługa klienta zostanie powiadomiona. Nie jestem jeszcze pewien, czy to przesada.

Te dzienniki służą wyłącznie do celów wsparcia, więc w moim przypadku nie ma żadnych prawnych ani biznesowych wymagań, aby utrzymać je ponad tydzień.

Głaskanie pod brodę
źródło
Czy masz tylko jeden duży plik dziennika? Tworzę jeden plik dziennie i rejestruję wszystkie rodzaje informacji (błędy i informacje debugowania). Rozmiar pliku zależy od bieżącego użycia (myślę, że maksymalnie 1 MB dziennie). Ale mogę sobie wyobrazić, aby zwiększyć informacje o logach w przyszłości. Jaki rozmiar progu wybrałeś i dlaczego?
Alex
0

Przechowywanie plików dziennika zależy od krytyczności rejestrowanych danych i rzeczywistego rozmiaru nośnika pamięci, na którym przechowywane są dzienniki, a także różnych procedur zgodności w lokalizacji geograficznej, na której znajduje się serwer.

Nie ma twardej i szybkiej reguły określającej liczbę dni przechowywania plików dzienników, chociaż dzienniki przez co najmniej miesiąc (o ile zajmują miejsce) nie byłyby złym pomysłem.

Przechowywanie starych dzienników jako plików tar.gz jest również dobrym pomysłem, jeśli przestrzeń jest ograniczeniem.

Vivek Varghese Cherian
źródło