Sha256: 29b3f3493d9f9338b052e0381c70f47b2ccfb424c04fbfe1c8210786499ed005

Contents?: true

Size: 636 Bytes

Versions: 4

Compression:

Stored size: 636 Bytes

Contents

# frozen_string_literal: true

module RailsPGExtras
  def self.outliers_description
    "10 queries that have longest execution time in aggregate"
  end

  def self.outliers_sql
    <<-EOS
SELECT interval '1 millisecond' * total_time AS total_exec_time,
to_char((total_time/sum(total_time) OVER()) * 100, 'FM90D0') || '%'  AS prop_exec_time,
to_char(calls, 'FM999G999G999G990') AS ncalls,
interval '1 millisecond' * (blk_read_time + blk_write_time) AS sync_io_time,
query AS query
FROM pg_stat_statements WHERE userid = (SELECT usesysid FROM pg_user WHERE usename = current_user LIMIT 1)
ORDER BY total_time DESC
LIMIT 10
EOS
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
rails-pg-extras-0.4.1 lib/rails-pg-extras/queries/outliers.rb
rails-pg-extras-0.4.0 lib/rails-pg-extras/queries/outliers.rb
rails-pg-extras-0.3.0 lib/rails-pg-extras/queries/outliers.rb
rails-pg-extras-0.2.0 lib/rails-pg-extras/queries/outliers.rb