Plumbr新增慢查詢檢測
JVM監控供應商 Plumbr 向其旗艦產品增加了慢查詢檢測功能。借助這項新增功能,Plumbr現在可以檢測如下四個類型的問題:
- 內存泄露
- 垃圾收集效率低
- 線程鎖定
- 開銷大的JDBC操作
Ivo M?gi是Plumbr的產品經理,他在 博文 中寫道:
已 推出的解決方案可以幫助運維和工程人員,使他們可以在同一個頁面上輕松查看所有必要的信息——借助Plumbr監控開銷大的JDBC操作,你 將不再需要:使用一個工具進行影響分析,使用數據庫監控工具查找問題查詢,然后手動在組成和執行操作的Java代碼中查找問題根源。
Plumbr會將所有監控到的信息匯總,正如下面的截圖所示,從中可以看到,Plumbr:
- 檢測到一個開銷大的JDBC操作將一個進程阻塞了將近9秒。
- 確定這是一個重復出現的問題(同一個操作總共發生了127次,總停頓時間為23分鐘31秒)。
- 概括地說明了等待發生在同一個SQL查詢執行期間。
為了幫助用戶查找像上面這樣的JDBC操作慢問題的根源,Plumbr提供了細節信息。如果仔細查看,就可以看到,問題是由74行的JpaProblemHistoryDao.findAccountProblems()方法調用準備好的語句導致的。
Plumbr聲稱,為了測試這項新特性,他們在一個涉及300多家公司的大型數據樣本上進行了五個周的封閉測試。
Plumbr JDBC監控適應于Oracle、MySQL、Postgres和MS SQL Server。對IBM DB2和SQLite的支持計劃在未來數月內發布。此外,他們還計劃將來增加對NoSQL數據庫的支持。
InfoQ采訪了Plumbr的產品經理(兼聯合創始人)Ivo M?gi。
InfoQ:Plumbr可以用于監控云上的JVM嗎?比如,在Cloud Foundry或Heroku上?
Plumbr可以用于任何支持Java Agent的云提供商。Java Agent是JVM提供的標準的“字節碼插裝(instrumenting bytecode)”方法,監控工具通常用它剖析應用程序。
InfoQ:Plumbr能夠同時監控多個應用程序/實例(比如,在一個微服務環境中)并匯總結果嗎?
事實上,Plumbr可以監控同一個應用程序的多個實例,并根據問題根源將檢測到的問題匯總到一起,如此一來,影響分析會更順利。
InfoQ:在性能監控領域,有許多競爭者。你們是如何將自己與同類競爭者區分開的?
關鍵的不同是,Plumbr能夠自動將失敗的服務與問題根源聯系起來。在問題發現方面,許多競爭者都做得不錯,但我們的關鍵不同是,可以仔細查看每行導致問題的源代碼。
InfoQ:Plumbr即將帶來什么特性?
檢測開銷大的JDBC操作只是萬里長征的第一步。最終,Plumbr將能夠揭示所有導致性能問題的常見根源。使用Plumbr監控應用程序將極大地縮短性能事件的平均解決時間(MTTR)。