非常に単純な質問のようですが、良い例が見つかりません。
特定の名前を持つロガーをフィルタリングしたい。
例えば
import logging
logging.root.setLevel(logging.DEBUG)
logging.root.addHandler(logging.StreamHandler())
logging.root.addFilter(logging.Filter(name="a"))
a = logging.getLogger("a")
b = logging.getLogger("b")
a.info("aaaaa")
b.info("bbbbb")
またはのみを渡すb
ことを理解していたので、ルートロガーがからのメッセージをフィルター処理することを期待していました。logging.Filter
name
childs of the name
しかし、ご想像のとおり、すべてのメッセージを渡すだけです。
私が誤解している点は何ですか?