Skip to content

Commit b12582b

Browse files
authored
fix: use module-level logger to allow user control over log level (#311) (#334)
Previously, build_fst() created a new logger with hardcoded INFO level and a new handler on every call, making it impossible for users to suppress logs. Now uses a single module-level "wetext" logger initialized once, so users can control it via: import logging logging.getLogger("wetext").setLevel(logging.WARNING)
1 parent ab8a034 commit b12582b

1 file changed

Lines changed: 7 additions & 7 deletions

File tree

tn/processor.py

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,13 @@
1818

1919
from pynini import Fst, cdrewrite, cross, difference, escape, invert, shortestpath, union
2020
from pynini.lib import byte, utf8
21+
22+
logger = logging.getLogger("wetext")
23+
if not logger.handlers:
24+
handler = logging.StreamHandler()
25+
handler.setFormatter(logging.Formatter("%(asctime)s WETEXT %(levelname)s %(message)s"))
26+
logger.addHandler(handler)
27+
logger.setLevel(logging.INFO)
2128
from pynini.lib.pynutil import delete, insert
2229

2330
from tn.token_parser import TokenParser
@@ -70,13 +77,6 @@ def build_verbalizer(self):
7077
self.verbalizer = self.delete_tokens(verbalizer)
7178

7279
def build_fst(self, prefix, cache_dir, overwrite_cache):
73-
logger = logging.getLogger("wetext-{}".format(self.name))
74-
logger.setLevel(logging.INFO)
75-
handler = logging.StreamHandler()
76-
fmt = logging.Formatter("%(asctime)s WETEXT %(levelname)s %(message)s")
77-
handler.setFormatter(fmt)
78-
logger.addHandler(handler)
79-
8080
os.makedirs(cache_dir, exist_ok=True)
8181
tagger_name = "{}_tagger.fst".format(prefix)
8282
verbalizer_name = "{}_verbalizer.fst".format(prefix)

0 commit comments

Comments
 (0)