我發現bullet gem是一個非常有用的工具,用於捕獲Rails應用程序中緩慢的數據庫查詢。 Ecto
/Phoenix
是否有類似的工具可幫助您通知N + 1和其他慢速查詢?Ecto/Phoenix的Rails中是否有相當於子彈寶石?
0
A
回答
6
N+1
查詢不會發生在Ecto
。
外生協會必須明確加載使用preload
如果您嘗試訪問尚未加載的關聯查詢,這將是Ecto.Association.NotLoaded
至於其他的查詢速度慢的情況下,你可以添加自定義記錄器外生:
config :my_app, MyApp.Repo,
adapter: Ecto.Adapters.Postgres,
url: {:system, "DATABASE_URL"},
loggers: [{Ecto.LogEntry, :log, []}, {MyApp.CustomLogger, :log, []}]
自定義記錄器:
defmodule MyApp.CustomLogger do
def log(entry) do
if (entry.query_time > 1000_000) do
Logger.info("Slow!!!!: #{entry.query}")
end
end
end
0
我可以推薦你我自己的寶石ecto_profiler
相關問題
- 1. 紅寶石相當於func_get_args()
- 2. 紅寶石file_get_contents相當於
- 3. 紅寶石相當於.irbrc?
- 4. 相當於紅寶石
- 5. 紅寶石相當於NumPy
- 6. Rails的子彈寶石更慢建議
- 7. Ruby在Python中相當於寶石
- 8. Rails每當寶石
- 9. 是否有Grails插件用於檢測N + 1抓取(類似於Rails子彈寶石)?
- 10. 紅寶石相當於htmlspecialchars_decode的
- 11. 的Python相當於紅寶石SOCKsify
- 12. rvm的紅寶石rbenv相當於
- 13. 哪裏是最新的紅寶石:相當於search.cpan.org/recent的紅寶石
- 14. 紅寶石寶石相當於PERL可存儲
- 15. syncEnumerator相當於紅寶石1.9.2
- 16. 紅寶石|| =相當於在Objective-C
- 17. curl命令相當於紅寶石
- 18. Java流相當於紅寶石?
- 19. 紅寶石相當於在Unix找到
- 20. 相當於紅寶石...?在haskell
- 21. 什麼是python的getattr的紅寶石相當於
- 22. Rails:設計寶石是否安全?
- 23. 是否有相當於Rails 3中Symfony的本地化架構
- 24. 是否有相當於c#中的typedef?
- 25. 寶石:由於nokogiri寶石在Rails應用程序中的loaderror
- 26. 是否有與rails number_to_human相當的angularjs?
- 27. 紅寶石寶石是否或依賴?
- 28. 當地的寶石資料庫?安裝沒有'寶石'的紅寶石寶石?
- 29. 是否有任何創建紅寶石工資單的寶石?
- 30. lua中是否有相當於Boost.Program_options?
雖然此鏈接可以回答這個問題,最好是在這裏有答案的主要部件,並提供鏈接以供參考。如果鏈接頁面更改,則僅鏈接答案可能會失效。 - [來自評論](/ review/low-quality-posts/18634357) –
@JessBowers如何包含大而厚的寶石中的基本部分?神經動力學要求子彈的類比!不是代碼的一部分!這是質量差和不負責任評論 –
是的,我明白你的意思。但是,如果你認爲這是一個糟糕的問題(一個「購物問題」,它不符合SO規則的好問題),那麼就不要回答,把問題投下來。或者嘗試編輯Q使其更好。我只是想幫助你使用這個網站,不想冒犯 - 而且我只有一個選民。 –