vale, muchas gracias a todos por la info, voy a revisar sobre lo que me
enviaron para saber cual puede ser la mas viable.

Saludos

El 2 de mayo de 2018, 7:10, <gilberto.casti...@etecsa.cu> escribió:

> Hola,
>
> Existe un modulo pgAudit, revisa por ahí va y hace lo que necesitas.
>
> Saludos,
>
> Gilberto
>
>
> On 2018-05-01 16:03, Jairo Graterón wrote:
>
>> 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 [1]
>>> Cel. 318 359 46 15
>>> Tel: (2) 487 64 66
>>>
>>
>>
>>
>> Links:
>> ------
>> [1] http://www.colombiasoftware.net/
>>
>


-- 
------------------------------------------------------------------



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