Logi PostgreSQL

Dziennik zdarzeń dla serwera PostgreSQL znajduje się w katalogu pg_log:

  • Windows 64bit, PostgreSQL x64: C:\Program Files\PostgreSQL\<X>\data\pg_log

,gdzie <X> jest numerem wersji serwera PostgreSQL (np. 17).

 

Postgres pozwala na logowanie wszystkich zdarzeń w podziale na kilka poziomów, zmian można dokonać w pliku konfiguracyjnym.

 

📁 Lokalizacja pliku konfiguracyjnego

Plik postgresql.conf znajduje się zazwyczaj w katalogu danych PostgreSQL, np.:

C:\Program Files\PostgreSQL\<wersja>\data\postgresql.conf

🔸 Parametry logowania

log_min_messages

Określa minimalny poziom komunikatów zapisywanych w logach:

PoziomOpis
debug5Najbardziej szczegółowe logi
debug4Bardziej szczegółowy niż debug3
debug3Szczegółowe informacje diagnostyczne
debug2Szczegóły działania serwera
debug1Ogólne informacje debugowania
infoInformacje ogólne
noticeKomunikaty informacyjne
warningOstrzeżenia
errorBłędy zapytań
logKomunikaty wymuszające logowanie
fatalBłędy kończące sesję
panicKrytyczne błędy systemowe

🔧 Domyślnie: warning


log_min_error_statement

Rejestruje zapytania SQL powodujące błędy od danego poziomu wzwyż:

log_min_error_statement = error

log_statement

Określa zakres zapytań SQL, które mają być logowane:

WartośćOpis
noneNie loguj zapytań
ddlLoguj tylko CREATE, ALTER, DROP
modLoguj DDL oraz INSERT, UPDATE, DELETE
allLoguj wszystkie zapytania SQL

🧪 Przykład konfiguracji dla testów/debugowania

log_min_messages = warning
log_min_error_statement = error
log_statement = 'all'

⚠️ Uwaga: Ten poziom logowania generuje bardzo dużo danych – stosować tylko tymczasowo!


🔁 Restart usługi PostgreSQL (Windows)

Aby zastosować zmiany:

  1. Otwórz „Services” services.msc

  2. Znajdź usługę postgresql-x64-<wersja>Przykładowo:
    postgresql-x64-15

  3. Kliknij prawym → Restart

Alternatywnie, z linii poleceń PowerShell lub CMD (uruchom jako Administrator)

net stop postgresql-x64-15
net start postgresql-x64-15


Czy uważasz, że artykuł był pomocny?

Powiązane artykuły