Trên windows bạn cần tìm thư mục PostgreSQL database. Ở trên windows thì môn na nó sẽ đâu đó kiểu như này :
C:\Program Files\PostgreSQL\10\data
Còn có 1 thư mục bin chưa toàn bộ các file thực thi của postgre đường dẫn môn na kiểu này :
C:\Program Files\PostgreSQL\10\bin
Khi chúng ta có 2 thư mục đó thì chúng ta cần thực hiện thao tác như sau:
1 - config lại postgre để postgre nạp config ghi log
Vào thư mục data có cái file postgresql.conf Sửa tham số để kích hoạt log SQL Query
Sau khi tìm đc file config của PostgreSQL, chúng ta thay đổi các tham số như bên dưới:
log_statement = 'all'
log_directory = 'log'
log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'
logging_collector = on
log_min_error_statement = error
Với phiên bản PostgreSQL 8.0 trở về trước chỉ cần sửa tham số log_statement = true
2 - restart postgre để postgre load config mới
Chạy lệnh sau trên windows để restart service
pg_ctl -D "C:\Program Files\PostgreSQL\10\data" restart
nhớ thay cái đường dẫn đến postgre data ( C:\Program Files\PostgreSQL\10\data ) cho đúng nha
3 - xem log ở folder data/log
Sau khi restart, thì bây giờ tất cả câu lệnh SQL Query được thực thi trên PostgreSQL Database sẽ được log lại với đường dẫn:
C:\Program Files\PostgreSQL\10\data\log
ví dụ đây là 1 đoạn log của mình :
2021-07-06 09:49:34.085 JST [17444] LOG: 実行 pdo_stmt_00000001: set names 'utf8'
2021-07-06 09:49:34.085 JST [17444] LOG: 文: DEALLOCATE pdo_stmt_00000001
2021-07-06 09:49:34.085 JST [17444] LOG: 実行 pdo_stmt_00000002: set search_path to "public"
2021-07-06 09:49:34.085 JST [17444] LOG: 文: DEALLOCATE pdo_stmt_00000002
2021-07-06 09:49:34.088 JST [17444] LOG: 実行 pdo_stmt_00000003: select * from "users" where "email" = $1 limit 1
2021-07-06 09:49:34.088 JST [17444] 詳細: パラメータ: $1 = 'truongpham260620@gmail.com'
2021-07-06 09:49:34.088 JST [17444] LOG: 文: DEALLOCATE pdo_stmt_00000003