Cesar, he estado implementando  algo parecido a lo que tu intentas hacer y te puedo decir:

1. current_user te devuelve el usuario actual de la base de datos y no de tu aplicación, seguramente estas usando un solo usuario  de base de datos para tus conexiones desde el servidor web. Asi que la base de datos siempre  va a devoler el mismo usuario.
    Para esto puedes:
2. La ip que obtendrías en la bd es la ip del servidor web, debes enviar la ip que obtengas en el servidor web hasta la bd para obtener la ip del cliente

Espero q t sirva

Cesar A escribió:
Saludos

Estoy buscando implementar la auditoría según el esquema de [0] con los respectivos cambios necesitados, y tengo un par de preguntas:

  1. puedo pasar desde php a la función, el identificador del usuario? para saber quién hizo la operación, ya que current_user me devuelve el usuario de postgres y no el del sistema. En caso de sí, por favor darme una luz...  o varias
  2. para obtener la IP desde dónde se accesa al sistema, sirve inet_client_addr ? creo que sucede lo mismo que lo anterior

Gracias

[0]http://www.alberton.info/postgresql_table_audit.html
--
--
Sí no eres parte de la solución... eres parte del problema.
--
... y no dejes de leer:
Netiqueta: Conjunto de reglas que regulan la conducta del usuario en internet
http://es.wikibooks.org/wiki/Netiquette
-- 
Cesar A. Carbonara R.
C.I. Nº V.11.952.572
--
Usuario Linux 377997
www.gulmer.org.ve