Java开发人员应该知道的5种错误跟踪工具
?
隨著Java生態系統的不斷發展,可滿足不斷增長的請求和用戶對高性能需求的Web應用程序成為了新型的現代開發工具。 具有快速新部署的快速節奏環境需要跟蹤錯誤并獲得應用程序行為的洞察力,而傳統方法無法維持這種水平。 在這篇文章中,我們決定收集其中的5種工具,看看它們如何與Java集成,并找出它們掌握了哪些技巧。 現在該粉碎一些錯誤了 。
射線槍
Mindscape的Raygun是基于Web的錯誤管理系統,可跟蹤來自您應用程序的異常。 它支持各種桌面,移動和Web編程語言,包括Java,Scala,.NET,Python,PHP和JavaScript。 除此之外,還可以通過REST API向Raygun發送錯誤,并且由于開發人員社區的參與,更多的提供程序(它們稱為語言和框架集成)得以實現。
主要特點:
- 錯誤分組–每次出現的錯誤都在一個組中呈現,可以訪問該錯誤的單個實例,包括其堆棧跟蹤。
- 全文搜索–可搜索錯誤組和所有收集的數據。
- 查看應用程序活動–對錯誤組的每項操作都會顯示給您的所有團隊,以供查看:狀態更新,評論等。
- 受影響的用戶–每個錯誤都會顯示受影響的用戶數。
- 外部集成– Github,Bitbucket,Asana,JIRA,HipChat等。
Java角度:要將Raygun與Java結合使用,如果您使用Maven或手動添加jar,則需要向pom.xml文件中添加一些依賴項。 第二步是添加一個UncaughtExceptionHandler,它將創建RaygunClient實例并將異常發送給它。 此外,您還可以將自定義數據字段添加到異常中,并將它們一起發送給Raygun。 完整的演練可在此處獲得 。
幕后 花絮 :認識Raygun認證的操作員Robie Robot 。 就像實際的射線槍一樣。
在以下位置查看: https : //raygun.io
哨兵
Sentry從一個附帶項目開始,是一個基于開源 Web的解決方案,可作為實時事件記錄和聚合平臺。 它監視錯誤并顯示錯誤發生的時間,地點和對象,并承諾不會完全依靠用戶反饋來做到這一點。 支持的語言和框架包括Ruby,Python,JS,Java,Django,iOS,.NET等。
主要特點:
- 實時查看新部署的影響
- 為因錯誤而中斷的特定用戶提供支持
- 檢測并阻止欺詐行為–通知有關購買,身份驗證和其他敏感區域的異常失敗數量
- 外部集成– GitHub,HipChat,Heroku等
Java角度: Sentry的Java客戶端稱為Raven,它支持現有的主要日志記錄框架,例如java.util.logging,Log4j,Log4j2和帶有Slf4j的Logback。 還提供了將事件直接發送到Sentry的獨立方法。 例如,要使用Logback設置Sentry for Java,您需要手動或通過Maven添加依賴項,然后添加新的Sentry附加程序配置,您就可以做到。 此處提供說明。
幕后花絮: Sentry是2010年在Disqus上的內部項目,用于解決Chris Jennings和David Cramer在Django應用程序上記錄異常的問題
在以下位置查看: https : //www.getsentry.com/
塔基皮
與大多數其他工具不同,Takipi遠不只是堆棧跟蹤修飾符。 它的構建考慮了一個簡單的目標:告訴開發人員確切的時間和原因破壞生產代碼。 每當引發新異常或發生日志錯誤時,Takipi都會捕獲該異常,并在方法和機器之間向您顯示導致該異常的變量狀態。 Takipi會將其覆蓋在錯誤發生時執行的實際代碼上,因此您可以分析異常,就像發生異常時一樣。
主要特點:
- 檢測-捕獲/未捕獲的異常,Http和記錄的錯誤。
- 優先排序–錯誤在群集中發生的頻率,是否涉及新代碼或修改后的代碼以及錯誤率是否在不斷提高。
- 分析–即使在不同的機器和應用程序之間,也可以查看實際的代碼和變量狀態。
- 易于安裝–無需更改代碼或配置。
- 開銷不到2%。
Java角度: Takipi是為Java和Scala中的生產環境而構建的。 安裝過程不到1分鐘,包括將Java代理附加到JVM。
在幕后:每種異常類型和錯誤都有一個代表它的獨特怪獸。 你可以在這里找到這些怪物。
在以下位置查看: http : //www.takipi.com/
氣剎
Rackspace的Airbrake是另一個使異常跟蹤更為醒目的工具,其使命是“不再搜索日志文件”。 它為用戶提供了基于Web的界面,其中包括帶有錯誤詳細信息的儀表板和特定于應用程序的視圖。 支持的語言包括Ruby,PHP,Java,.NET,Python甚至是Swift。
主要特點:
- 詳細的堆棧跟蹤,按錯誤類型,用戶和環境變量分組
- 團隊生產力–從噪音中濾除重要度錯誤
- 團隊協作–查看誰造成了錯誤并由誰修復
- 外部集成– HipChat,GitHub,JIRA,Pivotal和其他30多個
Java角度:雖然還提供了Logback庫,但Airbrake官方僅支持Log4j。 當前缺少Log4j2支持。 安裝過程類似于Sentry,手動或通過Maven添加一些依賴項,添加附加程序,您就可以開始了。 同樣,AirbrakeNotice和AirbrakeNotifier也提供了直接向Airbrake發送消息的方法。 更多詳細信息在這里 。
幕后花絮: Airbrake被Exceptional收購,然后被Rackspace 收購 。
在以下位置查看: https : //airbrake.io/
StackHunter
Stack Hunter當前處于測試版,提供了一個自托管工具來跟蹤您的Java異常。 與過去托管工具相比,情況發生了變化。 除此之外,它的目的是提供類似的功能集,以告知開發人員其異常并幫助更快地解決它們。
主要特點:
- 一個自托管的Web界面,可查看所有異常
- 堆棧跟蹤數據和上下文的收集,包括關鍵指標,例如總異常,唯一異常,受影響的用戶和受影響的會話
- 發生異常時的即時電子郵件警報
- 按根本原因對異常進行分組
Java角度: StackHunter專為Java構建,可在任何運行Java 6或更高版本的servlet容器上運行。 安裝包括在本地Servlet上運行StackHunter,配置用于警報的傳出郵件服務器以及配置希望記錄的應用程序。 完整說明可在此處獲得 。
幕后花絮: StackHunter由Dele Taylor開發,他還致力于Data Pipeline –一種用于在Java中轉換和遷移數據的工具。
在以下位置查看它: http : //stackhunter.com/
獎勵:ABRT
值得一提的另一種錯誤跟蹤方法是ABRT,它是來自Fedora生態系統的自動錯誤檢測和報告工具,它是Red Hat贊助的社區項目。 與我們在此介紹的5種工具不同,該工具不僅旨在供應用程序開發人員使用,而且還應供其用戶使用。 將錯誤報告給具有更豐富上下文的Red Hat,否則將很難理解和調試。
Java角度:對Java異常的支持仍處于概念驗證階段。 由JakubFilák開發的Java連接器可在此處獲得 。
幕后花絮: ABRT是Red Hat開發的一個開源項目。
在以下位置查看: https : //github.com/abrt/abrt
我們還錯過任何其他工具嗎? 您如何跟蹤例外情況? 請在下面的評論部分中告訴我
翻譯自: https://www.javacodegeeks.com/2014/09/5-error-tracking-tools-java-developers-should-know.html
總結
以上是生活随笔為你收集整理的Java开发人员应该知道的5种错误跟踪工具的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 霸主–统治和管理API的地方
- 下一篇: 怎样修改家里路由器的密码友家路由器密码如