summaryrefslogtreecommitdiff
path: root/buildscripts/util
diff options
context:
space:
mode:
authorDavid Bradford <david.bradford@mongodb.com>2021-05-14 18:52:08 -0400
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2021-05-28 21:27:10 +0000
commitcd4f55bc0bc90046b35c71eeb9e4fb18dad9b379 (patch)
treee3b94e3e9fb66248ecb47c71da4fe38f1626c257 /buildscripts/util
parente779656ef9c8509ec8838d4019b95c5fc4a9e81a (diff)
downloadmongo-cd4f55bc0bc90046b35c71eeb9e4fb18dad9b379.tar.gz
SERVER-57002: Refactor dynamic task creation
Diffstat (limited to 'buildscripts/util')
-rw-r--r--buildscripts/util/cmdutils.py29
1 files changed, 29 insertions, 0 deletions
diff --git a/buildscripts/util/cmdutils.py b/buildscripts/util/cmdutils.py
new file mode 100644
index 00000000000..d5d8b167a8b
--- /dev/null
+++ b/buildscripts/util/cmdutils.py
@@ -0,0 +1,29 @@
+"""Utilities for build commandline applications."""
+import logging
+import sys
+
+import structlog
+
+EXTERNAL_LOGGERS = {
+ "evergreen",
+ "git",
+ "inject",
+ "urllib3",
+}
+
+
+def enable_logging(verbose: bool) -> None:
+ """
+ Enable logging for execution.
+
+ :param verbose: Should verbose logging be enabled.
+ """
+ level = logging.DEBUG if verbose else logging.INFO
+ logging.basicConfig(
+ format="[%(asctime)s - %(name)s - %(levelname)s] %(message)s",
+ level=level,
+ stream=sys.stdout,
+ )
+ structlog.configure(logger_factory=structlog.stdlib.LoggerFactory())
+ for log_name in EXTERNAL_LOGGERS:
+ logging.getLogger(log_name).setLevel(logging.WARNING)