3

非常に単純な質問のようですが、良い例が見つかりません。

特定の名前を持つロガーをフィルタリングしたい。

例えば

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.Filternamechilds of the name

しかし、ご想像のとおり、すべてのメッセージを渡すだけです。

私が誤解している点は何ですか?

4

2 に答える 2