pg-eyeballs 使用教程
项目介绍
pg-eyeballs
是一个 Ruby gem,旨在提供关于由 ActiveRecord 代码生成的 SQL 查询在数据库中执行情况的详细信息。它通过一个友好的 Ruby 接口展示 Postgres EXPLAIN 命令的输出,并集成了流行的查询分析工具 gocmdpev
。
项目快速启动
安装
首先,将以下行添加到你的应用程序的 Gemfile 中:
gem 'pg-eyeballs'
然后执行:
$ bundle
或者你可以手动安装:
$ gem install pg-eyeballs
使用示例
以下是一个简单的使用示例:
# 在你的 ActiveRecord 模型中
User.all.eyeballs.explain(options: [:analyze, :verbose, :costs, :buffers], format: :text)
这将返回一个包含查询执行详细信息的数组。
应用案例和最佳实践
应用案例
假设你有一个 User
模型,并且你想了解查询的执行情况:
User.where(email: 'example@example.com').eyeballs.explain
这将输出查询的详细执行计划,包括使用的索引、执行时间等。
最佳实践
- 定期分析查询:定期使用
pg-eyeballs
分析你的查询,以确保它们高效运行。 - 优化慢查询:通过分析输出,识别并优化慢查询。
- 集成到 CI/CD 流程:将查询分析集成到你的 CI/CD 流程中,确保每次部署都不会引入性能问题。
典型生态项目
集成项目
- ActiveRecord:
pg-eyeballs
主要用于 ActiveRecord 生成的 SQL 查询分析。 - gocmdpev:一个流行的查询分析工具,
pg-eyeballs
与之集成,提供更详细的查询分析。
相关工具
- pgHero:另一个用于 PostgreSQL 性能监控和优化的工具。
- Skylight:一个应用性能监控工具,可以帮助你监控和优化 Rails 应用的性能。
通过这些工具和 pg-eyeballs
的结合使用,你可以更全面地监控和优化你的数据库查询性能。