From: | Venkat Balaji <venkat(dot)balaji(at)verse(dot)in> |
---|---|
To: | Adarsh Sharma <adarsh(dot)sharma(at)orkash(dot)com> |
Cc: | Guillaume Lelarge <guillaume(at)lelarge(dot)info>, pgsql-performance(at)postgresql(dot)org |
Subject: | Re: How to track number of connections and hosts to Postgres cluster |
Date: | 2011-08-24 11:21:14 |
Message-ID: | CAFrxt0iHx14=tOXagYLKpujO3ajhiNHFc5+_k1JXM=Rzzrcygw@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-performance |
But, the information vanishes if the application logs off.
I am looking for an alternative to track the total amount of the connections
with the host IPs through a Cron job.
What could be the frequency of cron ?
I know the best is using log_connections and log_disconnections parameters,
but, information logged would be too high and is also IO intensive.
Thanks
Venkat
On Wed, Aug 24, 2011 at 4:39 PM, Adarsh Sharma <adarsh(dot)sharma(at)orkash(dot)com>wrote:
> **
> pg_stat_activity keeps track of all this information.
>
> select * from pg_stat_activity where datname='databasename';
>
>
>
>
> Venkat Balaji wrote:
>
> Thanks Guillaume !!
>
> But, if put log_connections to on and log_disconnections to on wouldn't
> the Postgres be logging in lot of data ?
>
> Will this not be IO intensive ? I understand that this is the best way,
> but, would want to know if there is an other way to reduce IO ( may be
> through queries to catalog tables ).
>
> Thanks
> Venkat
>
> On Wed, Aug 24, 2011 at 1:19 PM, Guillaume Lelarge <guillaume(at)lelarge(dot)info
> > wrote:
>
>> On Wed, 2011-08-24 at 13:05 +0530, Venkat Balaji wrote:
>> > Hello Everyone,
>> >
>> > I am working on an alert script to track the number of connections with
>> the
>> > host IPs to the Postgres cluster.
>> >
>> > 1. I need all the host IPs making a connection to Postgres Cluster (even
>> for
>> > a fraction of second).
>>
>> You should set log_connections to on.
>>
>> > 2. I would also want to track number of IDLE connections, IDLE IN
>> > TRANSACTION connections and length of the connections as well.
>> >
>>
>> IDLE and IDLE in transactions are the kind of informations you get in
>> pg_stat_activity.
>>
>> Length of connections, you can get it with log_disconnections.
>>
>> > I would be making use of pg_stat_activity and also thought of enabling
>> > logging the host ips in the db server log files which seems to be
>> expensive
>> > for me (in terms of IO and logfile size).
>> >
>>
>> Using pg_stat_activity won't get you really small connections. You need
>> log_connections for that, and log_disconnections for the duration of
>> connections. So you'll have to work on a tool that could get some
>> informations with queries on pg_stat_activity, and that could read
>> PostgreSQL log files.
>>
>>
>> --
>> Guillaume
>> http://blog.guillaume.lelarge.info
>> http://www.dalibo.com
>>
>>
>
>
From | Date | Subject | |
---|---|---|---|
Next Message | Guillaume Lelarge | 2011-08-24 12:16:57 | Re: How to track number of connections and hosts to Postgres cluster |
Previous Message | Adarsh Sharma | 2011-08-24 11:09:18 | Re: How to track number of connections and hosts to Postgres cluster |