Mam demona, który działa stale, co dość szybko napełnia plik dziennika (development.log lub production.log). Jaki jest najlepszy sposób usunięcia pliku dziennika po określonym rozmiarze lub usunięcie części przed określonym dniem.jak usunąć plik dziennika szyn po określonym rozmiarze
Odpowiedz
Najlepszym sposobem jest ustawienie rotacji logów, ale jak to zrobić, zależy to od platformy, , więc powinieneś dodać komentarz dotyczący tego, czego używasz, zarówno do programowania, jak i produkcji.
Dla naszych aplikacji uruchomionych na Linux, mamy plik /etc/logrotate.d/appname dla każdej aplikacji, , który wygląda mniej więcej tak:
/path/to/rails_root_for_app/log/production.log {
daily
missingok
rotate 7
compress
delaycompress
notifempty
create 640 capistrano capistrano
}
To będzie przenieść zalogować się na nowy plik raz dziennie, zachowując skompresowany plik kopii zapasowej dla każdego z ostatnich 7 dni.
Jeśli chcesz po prostu opróżnić plik bez zachowania jakichkolwiek danych w nim natomiast demon jest działa, po prostu zrobić to z powłoki:
> /path/to/rails_root_for_app/log/development.log
To będzie obcięcie pliku do długości 0 bajtów .
Albo można powierzyć rejestrowanie do syslog
config.logger = Logger.new(config.log_path, 50, 1.megabyte)
ale pamiętaj, że wiele kundle mogą mieć problemy z tym.
A nawet lepiej, jeśli wszystkie środowiska są na komputerze Mac lub Linux i mają/usr/sbin/rotatelogs, po prostu użyj tego. Jest znacznie bardziej elastyczny i nie ma problemu z utratą danych, który ma logrotate (nawet jeśli używasz skrótu danych).
Dodaj wewnątrz config/environment.rb (lub po prostu config/Środowiska/production.rb jeśli tylko chcą obrót w prod):
log_pipe = IO.popen("/usr/sbin/rotatelogs #{Rails.root}/log/#{Rails.env}.%Y%m%d.log 86400", 'a')
config.logger = Logger.new(log_pipe)
(Z this blog post)
Wolę miesięczny plik dziennika w moim pliku production.rb
config.logger = Logger.new(config.log_path, 'monthly')
- 1. Utwórz nowy plik o określonym rozmiarze
- 2. Jak ustawić Electron WebView w określonym rozmiarze?
- 3. Przechowywanie plików dziennika pod określonym rozmiarem
- 4. Plik dziennika systemu Android
- 5. Jak odczytać plik dziennika innodb?
- 6. Py2Exe generuje plik dziennika
- 7. Wyjścia dziennika Git w określonym zakresie wersji
- 8. Jak mogę wyodrębnić obraz o określonym rozmiarze z ikony?
- 9. Plik dziennika Jenkinsfile
- 10. plik dziennika parsujący python
- 11. Usunąć wszystkie elementy z listy po określonym indeksie
- 12. wizualna plik dziennika Studio
- 13. Utwórz plik w określonym katalogu
- 14. Jak grep ciąg po określonym numerze linii?
- 15. WinAPI: Utwórz okno o określonym rozmiarze obszaru roboczego
- 16. Utwórz pustą listę w pythonie o określonym rozmiarze
- 17. Próbując usunąć zmiennym rozmiarze od textarea
- 18. Jak usunąć plik cookie?
- 19. NERDTree - jak usunąć plik
- 20. jak usunąć plik?
- 21. Jak mogę usunąć plik, tylko jeśli istnieje?
- 22. Plik dziennika wyjścia protokołu Git
- 23. trzeba podzielić tablice sub tablic określonym rozmiarze w Ruby
- 24. Oglądaj/czytaj rosnący plik dziennika
- 25. Jak wyłączyć plik dziennika SQLite w Androidzie?
- 26. Jak mogę wyczyścić plik dziennika log4net?
- 27. Sail.js - Jak utworzyć czysty plik dziennika?
- 28. Jak usunąć zawartość pliku dziennika z terminalu linux?
- 29. Listy dopasowywania wzorów o określonym rozmiarze lub większym/mniejszym
- 30. Utwórz plik dziennika w Powershell
należy edytować questing, aby określić, jakie OS używasz dalej, a także dodać trochę więcej tagów, ponieważ jest bardziej specyficzna niż Ra OS konkretny. –
Pytanie bardziej szczegółowo dotyczące rotacji dziennika: http://stackoverflow.com/questions/4883891/ruby-on-rails-production-log-rotation/4883967#4883967 –