Szukaj…


Rails.logger

Zawsze używaj Rails.logger.{debug|info|warn|error|fatal} zamiast puts . Pozwala to dopasować dzienniki do standardowego formatu dziennika, mieć znacznik czasu i poziom, dzięki czemu możesz wybrać, czy są one wystarczająco ważne, aby były wyświetlane w określonym środowisku. Możesz zobaczyć osobne pliki dziennika dla aplikacji w katalogu log/ z nazwą środowiska aplikacji. na przykład: development.log lub production.log lub staging.log

Za pomocą LogRotate możesz łatwo obracać dzienniki produkcji szyn. Wystarczy wykonać małą konfigurację, jak poniżej

Otwórz /etc/logrotate.conf ze swoim ulubionym edytorem linux vim lub nano i dodaj poniższy kod w tym pliku na dole.

/YOUR/RAILSAPP/PATH/log/*.log { 
  daily
  missingok
  rotate 7
  compress
  delaycompress
  notifempty
  copytruncate
}

Jak to działa To jest fantastycznie łatwe. Każdy bit konfiguracji wykonuje następujące czynności:

  • codziennie - Obracaj pliki dziennika każdego dnia. Możesz także użyć tutaj tygodniowo lub miesięcznie.
  • missingok - Jeśli plik dziennika nie istnieje, zignoruj go
  • rotate 7 - Zachowaj tylko 7 dni dzienników
  • kompresuj - GZip plik dziennika podczas rotacji
  • delaycompress - Obróć plik jednego dnia, a następnie skompresuj go następnego dnia, abyśmy byli pewni, że nie będzie kolidował z serwerem Rails
  • notifempty - Nie obracaj pliku, jeśli dzienniki są puste
  • copytruncate - Skopiuj plik dziennika, a następnie go opróżnij . Dzięki temu plik dziennika, do którego Rails zapisuje, zawsze istnieje, więc nie wystąpią problemy, ponieważ plik się nie zmienia. Jeśli nie użyjesz tego, za każdym razem będziesz musiał ponownie uruchomić aplikację Rails.

Uruchamianie Logrotate Ponieważ właśnie napisaliśmy tę konfigurację, chcesz ją przetestować.

Aby uruchomić logrotate ręcznie, po prostu wykonaj: sudo /usr/sbin/logrotate -f /etc/logrotate.conf

Otóż to.



Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow