それを呼び出すのは、私はこのようなコードがあるとしましょう:パイソン - モジュールから関数内で使用ロガーは
ModuleA.py:
import logging
logger = logging.getLogger('A')
def utility_func():
logger.info('hi')
print utility_func()
ModuleB.py:
import logging
logger = logging.getLogger('B')
from ModuleA import utility_func
print utility_func()
utility_funcがある場合にはModuleA.py内から呼び出されます。 'A'ロガーを使用したいのですが、ModuleB.pyから呼び出されたときに 'B'ロガーを使用したいと思います。
これを行う方法はありますか?物事を設定するより良い方法は?
更新:
def utility_func():
logging.info('hi')
そのバブルが呼び出し元のコードが使用しているログ方までになります。
何にutility_func変更の考えはどうですか?
(utils.pyのような)別のファイルにこれを入れて
明示的に私は考え、でロガーを渡すことができます。通常、 'logging.getLogger(__ name __)'を使って現在のモジュール名を設定することに注意してください。 – jonrsharpe
私は 'A'と 'B'を別のロギング動作を行うために別の場所に設定しました。 – Greg