2

Heroku で繰り返し発生する H12/13 エラーのトラブルシューティングを試みています。Google/Heroku/Stack Overflow で見つけたものをすべて調べ尽くした後、Heroku サポートのアドバイスに従って、実行時間の長いデータベース クエリが問題を引き起こしているかどうかを確認しています。

更新: 私は実稼働の Crane インスタンスを使用しています。以下の受け入れられた回答によると... Herokuではこれを行うことができないようです。私ができる最善のことは、以下のSQLに従ってそれらを除外することです:

SELECT u.usename, (total_time / 1000 / 60) as total_minutes, 
       (total_time/calls) as average_time, query 
FROM pg_stat_statements p 
JOIN pg_user u ON (u.usesysid = p.userid) 
WHERE query != '<insufficient privilege>'
ORDER BY 2 
DESC LIMIT 10;  

Craig Kerstien の非常に便利な投稿 http://www.craigkerstiens.com/2013/01/10/more-on-postgres-performance/を使用しようとしていますが、いくつかの権限の問題が発生しています。

pg_stat_statements テーブルにクエリを実行すると、実行時間の長いクエリの一部に対して「権限が不十分」になり、Heroku でユーザー権限を変更できるようには見えません。

Heroku でこれらのクエリを表示する権限を変更する方法を知っている人はいますか?

heroku pg:psql --remote production
psql (9.2.2, server 9.2.4)
SSL connection (cipher: DHE-RSA-AES256-SHA, bits: 256)
Type "help" for help.

d4k2qvm4tmu579=> SELECT 
d4k2qvm4tmu579->   (total_time / 1000 / 60) as total_minutes, 
d4k2qvm4tmu579->   (total_time/calls) as average_time, 
d4k2qvm4tmu579->   query 
d4k2qvm4tmu579-> FROM pg_stat_statements 
d4k2qvm4tmu579-> ORDER BY 1 DESC 
d4k2qvm4tmu579-> LIMIT 10;
  total_minutes   |   average_time    |          query           
------------------+-------------------+--------------------------
 121.755079699998 |  11.7572250919775 | <insufficient privilege>
 17.9371053166656 |  1.73208859315089 | <insufficient privilege>
 13.8710526000023 |  1.33945202190106 | <insufficient privilege>
 6.98494270000089 | 0.674497883626922 | <insufficient privilege>
 6.75377774999972 | 0.652175543095124 | <insufficient privilege>
 6.55192439999995 | 0.632683664174224 | <insufficient privilege>
 3.84014626666634 |  1.12786802880252 | <insufficient privilege>
 3.40574066666667 |  1399.61945205479 | <insufficient privilege>
 3.16332020000008 | 0.929081204384053 | <insufficient privilege>
 2.30192519999944 | 0.222284382614463 | <insufficient privilege>
(10 rows)
4

2 に答える 2

2

あなたの質問に直接答えることはできませんが、この利点の多くを直接 Heroku CLI にもたらし、データを返す pg-extra のプラグインを見てみましょう :)

https://github.com/heroku/heroku-pg-extras

于 2013-10-10T08:01:27.493 に答える