pg.ddx.io  pgsql-performance@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Михаил <bemewe@mail.ru>
To: pgsql-admin <pgsql-admin@postgresql.org>
Subject: getting client_addr not as a superuser
Date: Tue, 10 Feb 2015 15:21:10 +0300
Message-ID: <1423570870.915348087@f342.i.mail.ru> (raw)
In-Reply-To: <CAF-4BpMLZW1uwKDCSrutXDPS6X5f4xoUowJYxX6Wi0sk51q1Rg@mail.gmail.com>
References: <CAGuFTBWoL76nZ-DJqjX4aTyR0i5zJT+1KOFpe0-VTFB3y3DPtw@mail.gmail.com>
	<CAGuFTBXaMmPuY8H1pFGvJWA=tUiTM0g92=_a8eHA=ACQmjEikA@mail.gmail.com>
	<CAF-4BpMLZW1uwKDCSrutXDPS6X5f4xoUowJYxX6Wi0sk51q1Rg@mail.gmail.com>
List-Unsubscribe: <mailto:majordomo@postgresql.org?body=unsub%20pgsql-admin>

 Hi all,
I have a PG 9.3 and a streaming replication and I need standby ip address in the monitoring. To get that i can run 

select client_addr from pg_stat_replication

but i have to connect as a superuser what's not desirable.

As i see in that view, it uses two functions: pg_stat_get_activity and pg_stat_get_wal_senders and one table pg_authid. As i don't need role information, i've cutted the table from the query and got the following query:
SELECT s.pid, s.client_addr
   FROM pg_stat_get_activity(NULL::integer) s(datid, pid, usesysid, application_name, state, query, waiting, xact_start, query_start, backend_start, state_change, client_addr, client_hostname, client_port)
               ,pg_stat_get_wal_senders() w(pid, state, sent_location, write_location, flush_location, replay_location, sync_priority, sync_state)
 WHERE s.pid = w.pid;
When i run it as a superuser, everything is ok, when i run it as an ordinary user, the client_addr is NULL. As the function pg_stat_get_wal_senders() returns the result, the problem is in receiving the address from pg_stat_get_activity.

Using/granting pg_stat_get_backend_client_addr() is not solving the problem.

Is there any way to get client_addr value running not as a superuser?


Regards, Mikhail



view thread (3+ messages)  latest in thread

Message-ID: <1423570870.915348087@f342.i.mail.ru>
Permalink:  ../1423570870.915348087@f342.i.mail.ru/
Also on:    postgresql.org/message-id/1423570870.915348087@f342.i.mail.ru

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-performance@postgresql.org
  Cc: bemewe@mail.ru, pgsql-admin@postgresql.org
  Subject: Re: getting client_addr not as a superuser
  In-Reply-To: <1423570870.915348087@f342.i.mail.ru>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox