Module: PgHero::Methods::Replica

Included in:
Database
Defined in:
lib/pghero/methods/replica.rb

Instance Method Summary collapse

Instance Method Details

#replica?Boolean

Returns:

  • (Boolean)


4
5
6
7
8
9
# File 'lib/pghero/methods/replica.rb', line 4

def replica?
  unless defined?(@replica)
    @replica = select_all("SELECT setting FROM pg_settings WHERE name = 'hot_standby'").first["setting"] == "on"
  end
  @replica
end

#replication_lagObject



12
13
14
15
16
17
18
19
20
21
22
# File 'lib/pghero/methods/replica.rb', line 12

def replication_lag
  select_all("    SELECT\n      CASE\n        WHEN pg_last_xlog_receive_location() = pg_last_xlog_replay_location() THEN 0\n        ELSE EXTRACT (EPOCH FROM NOW() - pg_last_xact_replay_timestamp())\n      END\n    AS replication_lag\n  SQL\n  ).first[\"replication_lag\"].to_f\nend\n"