pg_flame
Marcus Gartner 借鉴了火焰图的思想,使用Go语言开发了PostgreSQL Explain Analyze 火焰图。
李红艳,公众号:alitrackPostgreSQL火焰图
问题
鉴于这个软件使用比较麻烦,
安装麻烦,不支持go get -u 这样简单的办法。
需要psql或者别的Postgres客户端生成Explain json文件
需要打开生成html
需要联网访问所需的javascript和css
解决办法
重写后,做了如下改进,
安装方便,支持 go get -u github.com/alitrack/pg_flame
使用pgx来访问Postgres,不再需要第三方Postgres客户端
所需javascript和css都借助zipdata来自动打包到了代码中。
无外网都情况下也可以正常使用
支持DATABASE_URL系统变量
使用webview自动打开生成的html文件
安装
暂时未提供预编译版本,请从源码安装
go get -u github.com/alitrack/pg_flame
复制
用法,
usage: pg_flame [<flags>]
A flamegraph generator for Postgres EXPLAIN ANALYZE output.
Flags:
--help Show context-sensitive help (also try --help-long and --help-man).
-U, --username="steven" database user name
-h, --host="localhost" database server host or socket directory
-p, --port=5432 database server port
--sslmode="disable" database server sslmode
--password=PASSWORD database server password
--dbname="postgres" database name
-o, --output="pg_flame.html" output html file
-c, --command=COMMAND run only single command (SQL)
-f, --file=FILE execute commands from file
-s, --show_browser Launch browser if successful
--version Show application version.
复制
如果设置了DATABASE_URL 系统变量,
命令行传入SQL,
pg_flame -c 'EXPLAIN (ANALYZE, BUFFERS, FORMAT JSON) SELECT id FROM users'
复制
或者使用SQL文件
pg_flame -f query.sql
复制
假设你有一个query.sql文件有内容如下,
-- query.sql
EXPLAIN (ANALYZE, BUFFERS, FORMAT JSON)
SELECT id
FROM users
复制
如果没有设置DATABASE_URL系统变量,可以根据帮助来指定数据库连接参数。
参考,
PostgreSQL火焰图
把静态文件嵌入到Go语言代码里
https://github.com/alitrack/pg_flame
https://github.com/alitrack/zipdata
文章转载自alitrack,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
外国CTO也感兴趣的开源数据库项目——openHalo
小满未满、
1613次阅读
2025-04-21 16:58:09
9.9 分高危漏洞,尽快升级到 pgAdmin 4 v9.2 进行修复
严少安
386次阅读
2025-04-11 10:43:23
3月“墨力原创作者计划”获奖名单公布
墨天轮编辑部
372次阅读
2025-04-15 14:48:05
转发有奖 | PostgreSQL 16 PGCM高级认证课程直播班招生中!
墨天轮小教习
182次阅读
2025-04-14 15:58:34
中国PostgreSQL培训认证体系新增PGAI应用工程师方向
开源软件联盟PostgreSQL分会
180次阅读
2025-05-06 10:21:13
PG生态赢得资本市场青睐:Databricks收购Neon,Supabase融资两亿美元,微软财报点名PG
老冯云数
139次阅读
2025-05-07 10:06:22
SQL 优化之 OR 子句改写
xiongcc
136次阅读
2025-04-21 00:08:06
告别老旧mysql_fdw,升级正当时
NickYoung
119次阅读
2025-04-29 11:15:18
PostgreSQL中文社区亮相于第八届数字中国峰会
PostgreSQL中文社区
102次阅读
2025-05-07 10:06:20
PostgreSQL的dblink扩展模块使用方法
szrsu
102次阅读
2025-04-24 17:39:30