Saludos,

De repente hay alguna solución más optima pero usé esta manera

primero crear una tabla en una BD distinta a la de producción

create table auditoria_session
(
idauditoria serial not null,
datname name not null,
usename name not null,
application_name text not null,
client_addr inet not null,
client_port integer not null,
backend_start timestamp not null,
primary key(idauditoria),
unique ( datname, usename, application_name, client_addr, client_port,
backend_start)
);


Y en un proceso aparte ( un programa en C, Python) se hace una consulta a
pg_stat_activity cada dos o tres segundos para no crear carga en el
servidor, se guardan los registros que no estén en auditoria_session.


insert into auditoria_session (datname, usename, application_name,
client_addr, client_port, backend_start)
select datname, usename, application_name, client_addr, client_port,
backend_start from pg_stat_activity
where (datname, usename, application_name, client_addr, client_port,
backend_start ) NOT IN
(select datname, usename, application_name, client_addr, client_port,
backend_start from auditoria_session)

Unos cientos de registros diarios no creo que ocupen mucho en el disco,
pero se pueden eliminar algunos datos cada ciertos meses.



El 30 de abril de 2018, 19:19, Carlos Edward Grajales Marmolejo <
cgraja...@colombiasoftware.net> escribió:

>
> Buenas tardes.
>
> Alguien de la lista sabe si existe alguna forma de capturar las conexiones
> realizadas a una base de datos?, diferente al log de postgres???
>
> Requiero saber la siguiente informacion:
> 1. ip de conexion
> 2. base de datos de conexion
> 3. fecha y hora de conexion
> 4. cualquier informacion adicional.
>
>
> Se wue mediante el log de porstgres se puede obtener esta informacion, sin
> embargo quisiera saber si existe un metodo alternativo.
>
> Algo asi como un trigger que se dispare al momento de la conexion y poder
> almacenar dicha informacion en una tabla independiente desde que cliente lo
> haga (psql, pgadmin, software, aplicacion, etc).
>
> O si dicha informacion esta presente en alguna tabla para recolectarla..
>
>
> Gracias por la colaboracion.
>
>
>
> --
> ------------------------------------------------------------------
>
>
>
> Cordialmente,
>
> *Carlos Edward Grajales*
> Colombia Software Ltda.
>
>    - Calle 26N# 5AN-67
>
> Cali - Colombia
> www.colombiasoftware.net
> Cel. 318 359 46 15
> Tel: (2) 487 64 66
>

Reply via email to