PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Log Stacktrace bieżącego interpretera Pythona za pomocą wyzwalacza PostgreSQL

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

Nie, nie ma

  • Kwerenda (SQL) jest wykonywana na serwerze DBMS , podobnie jak kod wewnątrz wyzwalacza
  • Kod Pythona jest wykonywany na kliencie który jest innym procesem, prawdopodobnie wykonywanym przez innego użytkownika, a może nawet na innej maszynie.

Jedynym połączeniem między serwerem (który wykrywa warunek) a klientem (który musi wykonać zrzut stosu) jest połączone gniazdo. Możesz spróbować rozszerzyć odpowiedź serwera (jeśli istnieje) o jakiś kod statusu, który jest używany przez klienta do samego stosu zrzutu. To zadziała tylko wtedy, gdy wyzwalacz jest częścią bieżącej transakcji, a nie jakiegoś niepowiązanego procesu.

Inny sposób to:masowe wycinanie. Niech DBMS zapisuje co przesłał SQL do swojego pliku dziennika. Może to spowodować ogromne ilości wpisów w dzienniku, które trzeba sprawdzić.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak użyć psycopg2 do pobrania wartości określonego klucza z tabeli postgres, która zawiera pary klucz-wartość

  2. Jak zaindeksować kolumnę tablicy ciągów dla zapytania pg_trgm `'term' % ANY (array_column)`?

  3. Ogranicz dołączenie do jednego wiersza

  4. Jak stworzyć unikalny indeks, w którym kolejność kolumn nie będzie brana pod uwagę (ustawiona?)

  5. Zdalny przepływ pracy Symfony2 + Netbeans (feat. git)