Mặc định PostgreSQL sẽ không log câu lệnh SQL Query. Để bật chức năng này, chúng ta cần sửa 1 số tham số trong file config. Sau đây là hướng dẫn bật và log SQL Query trong PostgreSQL 10.
Kích hoạt log toàn bộ SQL Query trong PostgreSQL
Bước 1: Tìm file config của PostgreSQL
Để biết được file config của PostgreSQL ở đâu, cần login vào psql và sử dụng câu lệnh SQL sau:
SHOW config_file;
Hoặc sử dụng command sau trong Linux: locate postgresql.conf
Bước 2: 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
Bước 3: Restart PostgreSQL Server
Chạy lệnh sau trên Linux để restart service
sudo systemctl restart postgresql
Xem toàn bộ câu SQL Query trong file 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: thư mục data_directory + log_directory
show data_directory;
Vậy đường dẫn tới file thư mục log câu query của chúng ta là: /var/lib/postgresql/10/main/log
Nguồn: vinasupport.com