pghero 2.4.0 → 2.6.0
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of pghero might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/CHANGELOG.md +84 -55
- data/README.md +19 -8
- data/app/assets/javascripts/pghero/application.js +1 -1
- data/app/controllers/pg_hero/home_controller.rb +78 -18
- data/app/helpers/pg_hero/home_helper.rb +11 -0
- data/app/views/pg_hero/home/_live_queries_table.html.erb +3 -1
- data/app/views/pg_hero/home/connections.html.erb +9 -0
- data/app/views/pg_hero/home/index.html.erb +2 -2
- data/app/views/pg_hero/home/maintenance.html.erb +16 -2
- data/app/views/pg_hero/home/space.html.erb +1 -1
- data/app/views/pg_hero/home/tune.html.erb +2 -1
- data/lib/generators/pghero/templates/config.yml.tt +11 -4
- data/lib/pghero.rb +27 -11
- data/lib/pghero/database.rb +81 -21
- data/lib/pghero/methods/basic.rb +28 -7
- data/lib/pghero/methods/connections.rb +35 -0
- data/lib/pghero/methods/explain.rb +1 -1
- data/lib/pghero/methods/maintenance.rb +3 -1
- data/lib/pghero/methods/queries.rb +6 -2
- data/lib/pghero/methods/query_stats.rb +16 -5
- data/lib/pghero/methods/suggested_indexes.rb +1 -1
- data/lib/pghero/methods/system.rb +227 -15
- data/lib/pghero/methods/users.rb +4 -0
- data/lib/pghero/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e7334e516c44c91605f37b8fd22b57a46b147cfe4191796e48624e8a15b45ca0
|
4
|
+
data.tar.gz: 1235c0626b5a7f2061f2bcfce062d4716f3de7a5c198aeed489eaf9d0c7549c0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 52944fa0d91437a0fd42dc4e8705a4f833a3d60937748f1cbffd03aa9471af8ce2e30db7645c419590696dcbbe0e700941b838216ae3da7a5bc211f0067188a5
|
7
|
+
data.tar.gz: 8ff19581f7245ebc804ef49af131c9f6eca5ed8110b878ccb8e1b15cf94c2951d88e4329e1565145e03b21c63e3798be400dc74b2655c7489dca75ba9ca4aec5
|
data/CHANGELOG.md
CHANGED
@@ -1,23 +1,52 @@
|
|
1
|
-
## 2.
|
1
|
+
## 2.6.0 (2020-07-09)
|
2
|
+
|
3
|
+
- Added support for Postgres 13 beta 2
|
4
|
+
- Added support for non-integer explain timeout
|
5
|
+
|
6
|
+
## 2.5.1 (2020-06-23)
|
7
|
+
|
8
|
+
- Added support for `google-cloud-monitoring` >= 1
|
9
|
+
- Added support for `google-cloud-monitoring-v3`
|
10
|
+
- Fixed system stats not showing up in Rails 6 with environment variables
|
11
|
+
|
12
|
+
## 2.5.0 (2020-05-24)
|
13
|
+
|
14
|
+
- Added system stats for Google Cloud SQL and Azure Database
|
15
|
+
- Added experimental `filter_data` option
|
16
|
+
- Localized times on maintenance page
|
17
|
+
- Improved connection pooling
|
18
|
+
- Improved error message for non-Postgres connections
|
19
|
+
- Fixed more deprecation warnings in Ruby 2.7
|
20
|
+
|
21
|
+
## 2.4.2 (2020-04-16)
|
22
|
+
|
23
|
+
- Added `connections` method
|
24
|
+
- Fixed deprecation warnings in Ruby 2.7
|
25
|
+
|
26
|
+
## 2.4.1 (2019-11-21)
|
27
|
+
|
28
|
+
- Fixed file permissions on `highlight.pack.js`
|
29
|
+
|
30
|
+
## 2.4.0 (2019-11-11)
|
2
31
|
|
3
32
|
- Added `invalid_constraints` method
|
4
33
|
- Added `spec` option
|
5
34
|
- Added `override_csp` option
|
6
35
|
- Show all databases in Rails 6 when no config
|
7
36
|
|
8
|
-
## 2.3.0
|
37
|
+
## 2.3.0 (2019-08-18)
|
9
38
|
|
10
39
|
- Added support for Postgres 12 beta 1
|
11
40
|
- Added methods and tasks for cleaning up stats
|
12
41
|
- Dropped support for Rails < 5
|
13
42
|
|
14
|
-
## 2.2.1
|
43
|
+
## 2.2.1 (2019-06-04)
|
15
44
|
|
16
45
|
- Added `config_path` option
|
17
46
|
- Fixed error with sequences when temporary tables
|
18
47
|
- Fixed error when `config.action_controller.include_all_helpers = false`
|
19
48
|
|
20
|
-
## 2.2.0
|
49
|
+
## 2.2.0 (2018-09-03)
|
21
50
|
|
22
51
|
- Added check for connections idle in transaction
|
23
52
|
- Improved duplicate index logic to detect more duplicates
|
@@ -25,64 +54,64 @@
|
|
25
54
|
- Fixed error with large number of sequences
|
26
55
|
- Bumped `total_connections_threshold` to 500 by default
|
27
56
|
|
28
|
-
## 2.1.1
|
57
|
+
## 2.1.1 (2018-04-24)
|
29
58
|
|
30
59
|
- Added `explain_timeout_sec` option
|
31
60
|
- Fixed error with unparsable sequences
|
32
61
|
- Stopped throwing `Same sequence name in multiple schemas` error
|
33
62
|
|
34
|
-
## 2.1.0
|
63
|
+
## 2.1.0 (2017-11-30)
|
35
64
|
|
36
65
|
- Fixed issue with sequences in different schema than table
|
37
66
|
- No longer throw errors for unreadable sequences
|
38
67
|
- Fixed replication lag for Amazon Aurora
|
39
68
|
- Added `vacuum_progress` method
|
40
69
|
|
41
|
-
## 2.0.8
|
70
|
+
## 2.0.8 (2017-11-12)
|
42
71
|
|
43
72
|
- Added support for Postgres 10 replicas
|
44
73
|
- Added support for pg_query 1.0.0
|
45
74
|
- Show queries with insufficient privilege on live queries page
|
46
75
|
- Default to table schema for sequences
|
47
76
|
|
48
|
-
## 2.0.7
|
77
|
+
## 2.0.7 (2017-10-28)
|
49
78
|
|
50
79
|
- Fixed issue with sequences in different schema than table
|
51
80
|
- Fixed query details when multiple users have same query hash
|
52
81
|
- Fixed error with invalid indexes in non-public schema
|
53
82
|
- Raise error when capture query stats fails
|
54
83
|
|
55
|
-
## 2.0.6
|
84
|
+
## 2.0.6 (2017-09-24)
|
56
85
|
|
57
86
|
- More robust methods for multiple databases
|
58
87
|
- Added support for `RAILS_RELATIVE_URL_ROOT` for Linux and Docker
|
59
88
|
|
60
|
-
## 2.0.5
|
89
|
+
## 2.0.5 (2017-09-14)
|
61
90
|
|
62
91
|
- Fixed error with sequences in different schemas
|
63
92
|
- Better advice
|
64
93
|
|
65
|
-
## 2.0.4
|
94
|
+
## 2.0.4 (2017-08-28)
|
66
95
|
|
67
96
|
- Fixed `AssetNotPrecompiled` error
|
68
97
|
- Do not silently ignore sequence danger when user does not have permissions
|
69
98
|
|
70
|
-
## 2.0.3
|
99
|
+
## 2.0.3 (2017-08-22)
|
71
100
|
|
72
101
|
- Added SQL to recreate invalid indexes
|
73
102
|
- Added unused index marker to Space page
|
74
103
|
- Fixed `capture_query_stats` on Postgres < 9.4
|
75
104
|
|
76
|
-
## 2.0.2
|
105
|
+
## 2.0.2 (2017-08-09)
|
77
106
|
|
78
107
|
- Fixed error with suggested indexes
|
79
108
|
- Fixed error with `pg_replication_slots`
|
80
109
|
|
81
|
-
## 2.0.1
|
110
|
+
## 2.0.1 (2017-08-08)
|
82
111
|
|
83
112
|
- Fixed capture space stats
|
84
113
|
|
85
|
-
## 2.0.0
|
114
|
+
## 2.0.0 (2017-08-08)
|
86
115
|
|
87
116
|
New features
|
88
117
|
|
@@ -113,27 +142,27 @@ PgHero.with(:database2) { PgHero.running_queries }
|
|
113
142
|
- Removed options from `connection_sources` method
|
114
143
|
- Removed `locks` method
|
115
144
|
|
116
|
-
## 1.7.0
|
145
|
+
## 1.7.0 (2017-05-01)
|
117
146
|
|
118
147
|
- Fixed migrations for Rails 5.1+
|
119
148
|
- Added `analyze`, `analyze_tables`, and `analyze_all` methods
|
120
149
|
- Added `pghero:analyze` rake task
|
121
150
|
- Fixed system stats display issue
|
122
151
|
|
123
|
-
## 1.6.5
|
152
|
+
## 1.6.5 (2017-04-19)
|
124
153
|
|
125
154
|
- Added support for Rails API
|
126
155
|
- Added support for Amazon STS
|
127
156
|
- Fixed replica check when `hot_standby = on` for primary
|
128
157
|
|
129
|
-
## 1.6.4
|
158
|
+
## 1.6.4 (2017-03-12)
|
130
159
|
|
131
160
|
- Only show connection charts if there are connections
|
132
161
|
- Fixed duplicate indexes for multiple schemas
|
133
162
|
- Fixed display issue for queries without word break
|
134
163
|
- Removed maintenance tab for replicas
|
135
164
|
|
136
|
-
## 1.6.3
|
165
|
+
## 1.6.3 (2017-02-09)
|
137
166
|
|
138
167
|
- Added 10 second timeout for explain
|
139
168
|
- No longer show autovacuum in long running queries
|
@@ -142,36 +171,36 @@ PgHero.with(:database2) { PgHero.running_queries }
|
|
142
171
|
- Removed Chartkick gem dependency for charts
|
143
172
|
- Fixed error when primary database is not PostgreSQL
|
144
173
|
|
145
|
-
## 1.6.2
|
174
|
+
## 1.6.2 (2016-10-26)
|
146
175
|
|
147
176
|
- Suggest GiST over GIN for `LIKE` queries again (seeing better performance)
|
148
177
|
|
149
|
-
## 1.6.1
|
178
|
+
## 1.6.1 (2016-10-24)
|
150
179
|
|
151
180
|
- Suggest GIN over GiST for `LIKE` queries
|
152
181
|
|
153
|
-
## 1.6.0
|
182
|
+
## 1.6.0 (2016-10-20)
|
154
183
|
|
155
184
|
- Removed mostly inactionable items (cache hit rate and index usage)
|
156
185
|
- Restored duplicate indexes to homepage
|
157
186
|
- Fixed issue with exact duplicate indexes
|
158
187
|
- Way better `blocked_queries` method
|
159
188
|
|
160
|
-
## 1.5.3
|
189
|
+
## 1.5.3 (2016-10-06)
|
161
190
|
|
162
191
|
- Fixed Rails 5 error with multiple databases
|
163
192
|
- Fixed duplicate index detection with expressions
|
164
193
|
|
165
|
-
## 1.5.2
|
194
|
+
## 1.5.2 (2016-10-01)
|
166
195
|
|
167
196
|
- Added support for PostgreSQL 9.6
|
168
197
|
- Fixed incorrect query start for live queries in transactions
|
169
198
|
|
170
|
-
## 1.5.1
|
199
|
+
## 1.5.1 (2016-09-27)
|
171
200
|
|
172
201
|
- Better tune page for PostgreSQL 9.5
|
173
202
|
|
174
|
-
## 1.5.0
|
203
|
+
## 1.5.0 (2016-09-21)
|
175
204
|
|
176
205
|
- Added user to query stats (opt-in)
|
177
206
|
- Added user to connection sources
|
@@ -179,52 +208,52 @@ PgHero.with(:database2) { PgHero.running_queries }
|
|
179
208
|
- Added visualize button to explain page
|
180
209
|
- Better charts for system stats
|
181
210
|
|
182
|
-
## 1.4.2
|
211
|
+
## 1.4.2 (2016-09-06)
|
183
212
|
|
184
213
|
- Fixed `wrong constant name` error in development
|
185
214
|
- Added different periods for system stats
|
186
215
|
|
187
|
-
## 1.4.1
|
216
|
+
## 1.4.1 (2016-08-25)
|
188
217
|
|
189
218
|
- Removed external assets
|
190
219
|
|
191
|
-
## 1.4.0
|
220
|
+
## 1.4.0 (2016-08-24)
|
192
221
|
|
193
222
|
- Updated for Rails 5
|
194
223
|
- Fixed error when `pg_stat_statements` not enabled in `shared_libaries`
|
195
224
|
|
196
|
-
## 1.3.2
|
225
|
+
## 1.3.2 (2016-08-03)
|
197
226
|
|
198
227
|
- Improved performance of query stats
|
199
228
|
|
200
|
-
## 1.3.1
|
229
|
+
## 1.3.1 (2016-07-10)
|
201
230
|
|
202
231
|
- Improved grouping of query stats
|
203
232
|
- Added `blocked_queries` method
|
204
233
|
|
205
|
-
## 1.3.0
|
234
|
+
## 1.3.0 (2016-06-27)
|
206
235
|
|
207
236
|
- Added query hash for better query stats grouping
|
208
237
|
- Added sequence danger check
|
209
238
|
- Added `capture_query_stats` option to config
|
210
239
|
|
211
|
-
## 1.2.4
|
240
|
+
## 1.2.4 (2016-05-06)
|
212
241
|
|
213
242
|
- Fixed user methods
|
214
243
|
|
215
|
-
## 1.2.3
|
244
|
+
## 1.2.3 (2016-04-20)
|
216
245
|
|
217
246
|
- Added schema to queries
|
218
247
|
- Fixed deprecation warning on Rails 5
|
219
248
|
- Fix for pg_query >= 0.9.0
|
220
249
|
|
221
|
-
## 1.2.2
|
250
|
+
## 1.2.2 (2016-01-20)
|
222
251
|
|
223
252
|
- Better suggested indexes
|
224
253
|
- Removed duplicate indexes noise
|
225
254
|
- Fixed partial and expression indexes
|
226
255
|
|
227
|
-
## 1.2.1
|
256
|
+
## 1.2.1 (2016-01-07)
|
228
257
|
|
229
258
|
- Better suggested indexes
|
230
259
|
- Removed unused indexes noise
|
@@ -233,7 +262,7 @@ PgHero.with(:database2) { PgHero.running_queries }
|
|
233
262
|
- Fixed suggested indexes for replicas
|
234
263
|
- Fixed issue w/ suggested indexes where same table name exists in multiple schemas
|
235
264
|
|
236
|
-
## 1.2.0
|
265
|
+
## 1.2.0 (2015-12-31)
|
237
266
|
|
238
267
|
- Added suggested indexes
|
239
268
|
- Added duplicate indexes
|
@@ -243,38 +272,38 @@ PgHero.with(:database2) { PgHero.running_queries }
|
|
243
272
|
- Added configurable cache hit rate threshold
|
244
273
|
- Show all connections in connections tab
|
245
274
|
|
246
|
-
## 1.1.4
|
275
|
+
## 1.1.4 (2015-12-08)
|
247
276
|
|
248
277
|
- Added check for transaction ID wraparound failure
|
249
278
|
- Added check for autovacuum danger
|
250
279
|
|
251
|
-
## 1.1.3
|
280
|
+
## 1.1.3 (2015-10-21)
|
252
281
|
|
253
282
|
- Fixed system stats
|
254
283
|
|
255
|
-
## 1.1.2
|
284
|
+
## 1.1.2 (2015-10-18)
|
256
285
|
|
257
286
|
- Added invalid indexes
|
258
287
|
- Fixed RDS stats for aws-sdk 2
|
259
288
|
|
260
|
-
## 1.1.1
|
289
|
+
## 1.1.1 (2015-07-23)
|
261
290
|
|
262
291
|
- Added `tables` option to `create_user` method
|
263
292
|
- Added ability to sort query stats by average_time and calls
|
264
293
|
- Only show unused indexes with no index scans in UI
|
265
294
|
|
266
|
-
## 1.1.0
|
295
|
+
## 1.1.0 (2015-06-26)
|
267
296
|
|
268
297
|
- Added historical query stats
|
269
298
|
|
270
|
-
## 1.0.1
|
299
|
+
## 1.0.1 (2015-04-17)
|
271
300
|
|
272
301
|
- Fixed connection bad errors
|
273
302
|
- Restore previous connection properly for nested with blocks
|
274
303
|
- Added analyze button to explain page
|
275
304
|
- Added explain button to live queries page
|
276
305
|
|
277
|
-
## 1.0.0
|
306
|
+
## 1.0.0 (2015-04-11)
|
278
307
|
|
279
308
|
- More platforms!
|
280
309
|
- Support for multiple databases!
|
@@ -284,61 +313,61 @@ PgHero.with(:database2) { PgHero.running_queries }
|
|
284
313
|
- Added `kill_long_running_queries` method
|
285
314
|
- Added env vars for settings
|
286
315
|
|
287
|
-
## 0.1.10
|
316
|
+
## 0.1.10 (2015-03-20)
|
288
317
|
|
289
318
|
- Added connections page
|
290
319
|
- Added message for insufficient privilege
|
291
320
|
- Added `ip` to `connection_sources`
|
292
321
|
|
293
|
-
## 0.1.9
|
322
|
+
## 0.1.9 (2015-01-25)
|
294
323
|
|
295
324
|
- Added tune page
|
296
325
|
- Removed minimum size for unused indexes
|
297
326
|
|
298
|
-
## 0.1.8
|
327
|
+
## 0.1.8 (2015-01-19)
|
299
328
|
|
300
329
|
- Added `total_percent` to `query_stats`
|
301
330
|
- Added `total_connections`
|
302
331
|
- Added `connection_stats` for Amazon RDS
|
303
332
|
|
304
|
-
## 0.1.7
|
333
|
+
## 0.1.7 (2014-11-12)
|
305
334
|
|
306
335
|
- Added support for pg_stat_statments on Amazon RDS
|
307
336
|
- Added `long_running_query_sec`, `slow_query_ms` and `slow_query_calls` options
|
308
337
|
|
309
|
-
## 0.1.6
|
338
|
+
## 0.1.6 (2014-10-09)
|
310
339
|
|
311
340
|
- Added methods to create and drop users
|
312
341
|
- Added locks
|
313
342
|
|
314
|
-
## 0.1.5
|
343
|
+
## 0.1.5 (2014-09-03)
|
315
344
|
|
316
345
|
- Added system stats for Amazon RDS
|
317
346
|
- Added code to remove unused indexes
|
318
347
|
- Require unused indexes to be at least 1 MB
|
319
348
|
- Use `pg_terminate_backend` to ensure queries are killed
|
320
349
|
|
321
|
-
## 0.1.4
|
350
|
+
## 0.1.4 (2014-08-31)
|
322
351
|
|
323
352
|
- Reduced long running queries threshold to 1 minute
|
324
353
|
- Fixed duration
|
325
354
|
- Fixed wrapping
|
326
355
|
- Friendlier dependencies for JRuby
|
327
356
|
|
328
|
-
## 0.1.3
|
357
|
+
## 0.1.3 (2014-08-04)
|
329
358
|
|
330
359
|
- Reverted `query_stats_available?` fix
|
331
360
|
|
332
|
-
## 0.1.2
|
361
|
+
## 0.1.2 (2014-08-03)
|
333
362
|
|
334
363
|
- Fixed `query_stats_available?` method
|
335
364
|
|
336
|
-
## 0.1.1
|
365
|
+
## 0.1.1 (2014-08-03)
|
337
366
|
|
338
367
|
- Added explain
|
339
368
|
- Added query stats
|
340
369
|
- Fixed CSS issues
|
341
370
|
|
342
|
-
## 0.1.0
|
371
|
+
## 0.1.0 (2014-07-23)
|
343
372
|
|
344
373
|
- First major release
|
data/README.md
CHANGED
@@ -10,17 +10,21 @@ A performance dashboard for Postgres
|
|
10
10
|
|
11
11
|
---
|
12
12
|
|
13
|
-
[![Screenshot](https://pghero.dokkuapp.com/assets/
|
13
|
+
[![Screenshot](https://pghero.dokkuapp.com/assets/pghero-f8abe426e6bf54bb7dba87b425bb809740ebd386208bcd280a7e802b053a1023.png)](https://pghero.dokkuapp.com/)
|
14
|
+
|
15
|
+
:tangerine: Battle-tested at [Instacart](https://www.instacart.com/opensource)
|
16
|
+
|
17
|
+
[![Build Status](https://travis-ci.org/ankane/pghero.svg?branch=master)](https://travis-ci.org/ankane/pghero) [![Docker Pulls](https://img.shields.io/docker/pulls/ankane/pghero)](https://hub.docker.com/repository/docker/ankane/pghero)
|
14
18
|
|
15
19
|
## Installation
|
16
20
|
|
17
|
-
PgHero is available as a
|
21
|
+
PgHero is available as a Docker image, Linux package, and Rails engine.
|
18
22
|
|
19
23
|
Select your preferred method of installation to get started.
|
20
24
|
|
21
|
-
- [Rails](guides/Rails.md)
|
22
|
-
- [Linux](guides/Linux.md)
|
23
25
|
- [Docker](guides/Docker.md)
|
26
|
+
- [Linux](guides/Linux.md)
|
27
|
+
- [Rails](guides/Rails.md)
|
24
28
|
|
25
29
|
## Related Projects
|
26
30
|
|
@@ -31,10 +35,17 @@ Select your preferred method of installation to get started.
|
|
31
35
|
|
32
36
|
## Credits
|
33
37
|
|
34
|
-
A big thanks to [Craig Kerstiens](http://www.craigkerstiens.com/2013/01/10/more-on-postgres-performance/) and [Heroku](https://blog.heroku.com/archives/2013/5/10/more_insight_into_your_database_with_pgextras) for the initial queries and [Bootswatch](https://github.com/thomaspark/bootswatch) for the theme
|
38
|
+
A big thanks to [Craig Kerstiens](http://www.craigkerstiens.com/2013/01/10/more-on-postgres-performance/) and [Heroku](https://blog.heroku.com/archives/2013/5/10/more_insight_into_your_database_with_pgextras) for the initial queries and [Bootswatch](https://github.com/thomaspark/bootswatch) for the theme.
|
35
39
|
|
36
|
-
|
40
|
+
## History
|
37
41
|
|
38
|
-
|
42
|
+
View the [changelog](https://github.com/ankane/pghero/blob/master/CHANGELOG.md)
|
43
|
+
|
44
|
+
## Contributing
|
45
|
+
|
46
|
+
Everyone is encouraged to help improve this project. Here are a few ways you can help:
|
39
47
|
|
40
|
-
[
|
48
|
+
- [Report bugs](https://github.com/ankane/pghero/issues)
|
49
|
+
- Fix bugs and [submit pull requests](https://github.com/ankane/pghero/pulls)
|
50
|
+
- Write, clarify, or fix documentation
|
51
|
+
- Suggest or add new features
|