2016-11-07 14 views
0

データベース接続をログに記録したいが、パスワード(またはドライバ/方言)を表示したくない。sqlalchemyから適切な形式で接続文字列を取得する方法はありますか?

これをSQLAlchemyから取り除く方法はありますか、正規表現の解析に頼るべきですか? SQLAlchemyはこれを見つけ出すためにすでに解析しているはずですので、自分自身で行うことは愚かではありませんが、何も見つかりません。http://docs.sqlalchemy.org/en/latest/core/connections.htmlまたはhttp://docs.sqlalchemy.org/en/latest/core/engines.html

ありがとう!

答えて

2

URL.__repr__方法は、パスワードを非表示にします。

from sqlalchemy import create_engine 
engine = create_engine('postgresql://scott:[email protected]/test') 

assert repr(engine) == 'postgresql://scott:***@localhost/test' 

あなたは、ドライバ/方言を非表示にしたい場合は、URLクラスはURL.__to_string__でストリングを計算する方法を見てすることを望むかもしれません。

関連する問題