Logi heroku są świetnym źródłem informacji o tym, co stało się z Twoją aplikacją, gdy coś pójdzie nie tak. Niestety, rejestrują one również mnóstwo informacji. Czy istnieje sposób, w jaki mogę filtrować dzienniki tylko w poszukiwaniu komunikatów o błędach?Czy mogę otrzymywać dzienniki Heroku, aby zwracać tylko wiersze opisujące błędy?
Odpowiedz
Spróbuj tego:
heroku logs -t | grep 'error'
Aby uzyskać listę błędów podczas jazdy jak i kiedy one wystąpią.
Przerobione przecinki wokół 'error'
zrobiły to za mnie.
Zobacz niektóre dodatki do logowania - używam PaperTrail z dużym sukcesem, ale inne, takie jak Loggly i Progstr Logging, będą oferować podobne usługi.
Zasadniczo drenaż logów do ich usług i zapewniają możliwość wyszukiwania w czasie rzeczywistym na podstawie dzienników, a następnie można sobie z tym poradzić - większość z nich będzie oferować powiadomienia za pośrednictwem ogniska, wiadomości e-mail, wiadomości tekstowej lub prostego protokołu HTTP. wysłać do innej aplikacji, aby obsłużyć komunikat o błędzie.
heroku logs | grep -i error
Można również zainstalować dodatek New Relic, który zawiera szczegółowe informacje o błędach. Słyszałem również dobre rzeczy o Loggly.
Zobacz także heroku - how to see all the logs
Osobiście myślę, że dzienniki nie są najlepszym miejscem do poszukiwania jako błąd i szczegółowo są łatwo przegapić. Zapewniam, że mój kod podnosił błędy w zewnętrznej lokalizacji, aby upewnić się, że nie zostaną pominięte.
Istnieje wiele opcji, począwszy od prostych ExceptionNotifier, po bardziej zaawansowane systemy, takie jak Airbrake (w tym używam siebie).
Nie tylko powiadomią Cię o błędach, ale również dadzą Ci stos meta-informacji, których możesz użyć.
na sprawdzenie wszystkich dzienników w konsoli Heroku
config.logger = Logger.new (STDOUT) config.logger.level = Logger :: DEBUG
umieścić te dwie linie wewnątrz środowiska, w którym uruchamiasz aplikację heroku (np. production.rb)
Możesz sprawdzić dzienniki szczegółów tam również błędy, jeśli są.
- 1. Czy mogę :: asio otrzymywać tylko pełne datagramy UDP?
- 2. Czy mogę zarejestrować się, aby otrzymywać powiadomienia push poza AppDelegate.m?
- 3. Czy mogę nadal otrzymywać Xcode dla Leopard?
- 4. Kiedy zapytanie SELECT zaczyna zwracać wiersze?
- 5. Git Błędy podczas wysyłania Heroku
- 6. Ogranicz autouzupełnianie Miejsc Google, aby zwracać tylko adresy:
- 7. Jak w pierwszej kolejności zwracać wiersze o określonej wartości?
- 8. Jak mogę sprawdzić dzienniki Oozie?
- 9. Jak włączyć UITextView, aby otrzymywać wklejone obrazy
- 10. CodeMirror: Poszczególne wiersze tylko readonly
- 11. Czy mogę otrzymywać ostrzeżenia o nadmiernie restrykcyjnych sygnaturach typu?
- 12. Perforce: Czy mogę umieścić "zegarek" w pliku, aby otrzymywać powiadomienia o zmianie pliku?
- 13. Tylko pracownik Heroku
- 14. Wyłączanie dziennika sprężyn, aby mieć czytelne dzienniki
- 15. Czy Applescript może wysyłać lub otrzymywać prośby?
- 16. Jak zwracać wiersze wymienione w porządku malejącym według COUNT (*)?
- 17. Wewnętrzne dzienniki dla Castle Windsor
- 18. Jak mogę podsumować wiersze, które występują tylko raz?
- 19. Heroku + CDN Cloudfront + Czcionki - Błędy w Firefoksie
- 20. import mysql tylko brakujące wiersze
- 21. Jak mogę zalogować błędy Railsy do oddzielnego pliku dziennika?
- 22. pjsip otrzymywać sms
- 23. Jak mogę, aby edytor PyDev wybiórczo ignorował błędy?
- 24. Jak mogę pobrać mój plik web.config, aby wyświetlać błędy zdalnie?
- 25. Jak wydrukować błędy globalne tylko z formularzem: błędy?
- 26. Czy Heroku można skonfigurować tak, aby działał bez problemu?
- 27. Jak mogę otrzymywać powiadomienia o powiadomieniach bankowych w iOS?
- 28. Czy można przeszukiwać wszystkie dzienniki x kodów?
- 29. Czy mogę wyłączyć niejawne konwersje Unicode w Pythonie, aby znaleźć błędy w mieszanych łańcuchach?
- 30. Czy na Heroku jest ALLOWED_HOSTS?
to nie zadziałało, linia poleceń nic nie zwróciła – jay
Być może nie masz żadnych błędów w kilku liniach, które "loguje heroku". Możesz wypróbować metodę "heroku console" sugerowaną w linku w mojej odpowiedzi. – rkb
@jay ta metoda działa - spróbuj 'heroku console | grep -i get', a zobaczysz, że działa, aby uzyskać. aplikuj o błąd –