PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Log Stacktrace do interpretador Python atual via gatilho PostgreSQL

Is there a way to log the Python/Django traceback from within a PostgreSQL trigger?

Não, não há
  • A consulta (SQL) é executada no servidor DBMS , assim como o código dentro do gatilho
  • O código Python é executado no cliente que é um processo diferente, possivelmente executado por um usuário diferente e talvez até em uma máquina diferente.

A única conexão entre o servidor (que detecta a condição) e o cliente (que precisa realizar o stackdump) é o socket conectado. Você pode tentar estender a resposta do servidor (se houver) por algum código de status, que é usado pelo cliente para empilhar a si mesmo. Isso só funcionará se o gatilho for parte da transação atual, não de algum processo não relacionado.

A outra maneira é:registro em massa. Faça o DBMS gravar cada enviou SQL para seu arquivo de log. Isso pode causar grandes quantidades de entradas de log, que você precisa inspecionar.