Rails uygulamasında, doğru API yanıtı vermek için ApplicationController'daki istisnaların çoğunu kurtarıyoruz, ancak yine de ErrorCollector kullanılarak gerçekleşen hataları izlemek istiyoruz. NewRelic'e el ile hata göndermenin bir yolu var mı? kullanımı yolu önerilir, ancak bu mükemmel çalışıyor eğerNewRelic hatasını manuel olarak itmenin bir yolu var mı?
cevap
emin değil: New Relic ajan kodunda gördükleri dayanarak
NewRelic::Agent.agent.error_collector.notice_error(exception)
Yapabileceğiniz Ben
NewRelic::Agent.notice_error(exception, options)
Bunu test ettim ve bunu yığınımda çalıştırıyorum
Burada bir denetleyicide örnek var:
hata birimini hataları fark edip artırmak API çağrısıclass ApplicationController < ActionController::Base
rescue_from ActiveRecord::RecordInvalid, with: :rescue_invalid_record
private
def rescue_invalid_record(exception)
NewRelic::Agent.notice_error(exception)
end
end
Bunun için aşağıdaki belgelere bakın: http://rdoc.info/github/newrelic/rpm/NewRelic/Agent:notice_error Temel olarak, çözüm yerine Igor'un kullandığı yöntemle ilgili bir takma addır, istisna yerine nil döndürür. Yani biraz farklı davrandığında, aslında aynı şey ve daha az ayrıntılıdır. –
Tüm belgeler burada, New Relic Yakut Ajan API belgelerine New Relic çalışmak http://rdoc.info/github/newrelic/rpm/NewRelic/Agent/Transaction.notice_error
- 1. Bir metin kutusuna "Enter tuşu" olayını manuel olarak çağırmanın herhangi bir yolu var mı?
- 2. iPhone cihazına Hafıza Uyarısı manuel olarak yollamanın bir yolu var mı?
- 3. Oynatmayı otomatik olarak yeniden yüklemeyi engellemenin bir yolu var mı?
- 4. Bu bellek hatasını önlemek için bir yol var mı?
- 5. Git'te, bir dosyayı "saf" olarak işaretlemenin bir yolu var mı?
- 6. Tablo adını bir dize olarak belirtmenin bir yolu var mı?
- 7. Kafka mesajlarını kenar düğümlerimden itmenin en iyi yolu nedir?
- 8. DataTemplate'i manuel olarak başlat?
- 9. Jasmine'e kaynak olarak harici Javascript eklemenin bir yolu var mı?
- 10. Clojure özel formlarını programlı olarak toplamanın bir yolu var mı?
- 11. If ifadesinin durumunu, değeri olarak kullanmanın bir yolu var mı?
- 12. Ko.observableArray öğesini harita olarak kullanmanın bir yolu var mı?
- 13. Paketli Eklentiler listesini otomatik olarak oluşturmanın bir yolu var mı?
- 14. Haddock'da ilk olarak işlev parametrelerini tanımlamanın bir yolu var mı?
- 15. Otomatik olarak require.txt çıktı almanın bir yolu var mı?
- 16. Görüntü yenileme hızını programlı olarak almanın bir yolu var mı?
- 17. MDB'leri programatik olarak yapılandırmanın bir yolu var mı?
- 18. C# ciltleme işlemini statik olarak yapmanın bir yolu var mı?
- 19. Silverlight UI Element'i görüntü olarak almanın bir yolu var mı?
- 20. Okular vurgulama aracını kalıcı olarak bırakmanın bir yolu var mı?
- 21. Swift'de NSCollectionView programlı olarak kurmanın bir yolu var mı?
- 22. Varsayılan olarak JavaScript özniteliğini kullanmanın bir yolu var mı?
- 23. Scala'nın RichString'ini genişletmenin bir yolu var mı?
- 24. Parametreyi çıkarmanın bir yolu var mı?
- 25. TensorFlow baskılarını bastırmanın bir yolu var mı?
- 26. Pydev'de REPL almanın bir yolu var mı?
- 27. RubyGems'i çevrimdışı güncellemenin bir yolu var mı?
- 28. Düzenleri canlandırmanın bir yolu var mı? [Android]?
- 29. WiX yapılarını hızlandırmanın bir yolu var mı?
- 30. C harflerini saymanın bir yolu var mı?
olduğunu. Bu yöntem bugün çalışabilir olsa da, bu bizim * Kamu API'mızın bir parçası değildir ve bu nedenle kullanılmamalıdır - gelecekte herhangi bir noktada değişebilir. Kullanılacak doğru yöntem nort'un yanıtında belirtildiği gibi 'NewRelic :: Agent.notice_error'. Kamu [API dokümanlar] 'da (http://rubydoc.info/github/newrelic/rpm) belgelenmeyen her şey aynı kategoriye girer. – grumbler