query_performance
Identify slowest or most called queries by total time, calls, or IO using pg_stat_statements statistics. Filter by minimum call count and sort to pinpoint performance bottlenecks.
Instructions
Historical query stats - shows top queries by time/calls/IO from pg_stat_statements.
LEVEL: Database (database-wide query statistics)
USE FOR: "what queries are slowest?", finding high-frequency queries, cache hit analysis, queries using temp files, overall query patterns, "which queries consume most time?". DO NOT USE FOR: analyzing ONE specific query (use query_optimizer), live running queries (use database_health), index recommendations (use maintenance_analysis), query syntax validation (use analyze_query). REQUIRES: pg_stat_statements extension installed.
Examples: query_performance() - Top 20 queries by total time query_performance(order_by='calls') - Most frequently called queries query_performance(order_by='mean_time') - Slowest average execution query_performance(limit=50, min_calls=100) - Top 50, only queries called 100+ times
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Number of queries to return (1-500) | |
| order_by | No | Sort by: total_time, calls, mean_time, rows, shared_blks_hit, shared_blks_read | total_time |
| min_calls | No | Minimum call count filter | |
| url | No | Database URL for auto-connection |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |