câu trả lời cho điều này là sự kết hợp của:
http://initd.org/psycopg/docs/module.html#psycopg2.connect
Bất kỳ tham số kết nối nào khác được hỗ trợ bởi thư viện khách / máy chủ có thể được chuyển trong chuỗi kết nối hoặc dưới dạng từ khóa. Tài liệu PostgreSQL chứa danh sách đầy đủ các tham số được hỗ trợ. Cũng lưu ý rằng các tham số tương tự có thể được chuyển đến thư viện máy khách bằng cách sử dụng các biến môi trường.
trong đó biến chúng ta cần là:
http://www.postgresql.org/docs/current/static/runtime-config-logging.html#GUC-APPLICATION-NAME
Tên_ ứng dụng có thể là bất kỳ chuỗi nào có ít hơn NAMEDATALEN ký tự (64 ký tự trong bản dựng chuẩn). Nó thường được thiết lập bởi một ứng dụng khi kết nối với máy chủ. Tên sẽ được hiển thị trong chế độ xem pg_stat_activity và được bao gồm trong các mục nhật ký CSV. Nó cũng có thể được đưa vào các mục nhật ký thông thường thông qua tham số log_line_prefix. Chỉ các ký tự ASCII có thể in được mới được sử dụng trong giá trị tên_ ứng dụng. Các ký tự khác sẽ được thay thế bằng dấu chấm hỏi (?).
kết hợp với:
http://docs.sqlalchemy.org/en/rel_0_8/core/engines.html#custom-dbapi-args
Các đối số dựa trên chuỗi có thể được truyền trực tiếp từ chuỗi URL dưới dạng đối số truy vấn:(ví dụ ...) create_engine () cũng nhận một đối số connect_args là một từ điển bổ sung sẽ được chuyển đến connect (). Điều này có thể được sử dụng khi các đối số thuộc loại khác với chuỗi được yêu cầu và trình kết nối cơ sở dữ liệu của SQLAlchemy không có logic chuyển đổi loại cho tham số đó
từ đó chúng tôi nhận được:
e = create_engine("postgresql://scott:[email protected]/test?application_name=myapp")
hoặc:
e = create_engine("postgresql://scott:[email protected]/test",
connect_args={"application_name":"myapp"})