Tools: Fix script logging
Fix issue preventing scripts respecting --log_level argument, by adding
a non-default handler. Also, add script name to log output.
Change-Id: I100a5c29276d362dc38cd6c46f472e5991873293
Signed-off-by: Raef Coles <raef.coles@arm.com>
diff --git a/bl1/bl1_2/scripts/create_bl2_img.py b/bl1/bl1_2/scripts/create_bl2_img.py
index 8241d49..a0db08d 100644
--- a/bl1/bl1_2/scripts/create_bl2_img.py
+++ b/bl1/bl1_2/scripts/create_bl2_img.py
@@ -10,7 +10,7 @@
import encrypt_data
import logging
-logger = logging.getLogger("TF-M")
+logger = logging.getLogger("TF-M.{}".format(__name__))
from arg_utils import *
from crypto_conversion_utils import convert_curve_define, convert_hash_define
@@ -176,7 +176,8 @@
parser.add_argument("--log_level", help="log level", required=False, default="ERROR", choices=logging._levelToName.values())
args = parser.parse_args()
- logger.setLevel(args.log_level)
+ logging.getLogger("TF-M").setLevel(args.log_level)
+ logger.addHandler(logging.StreamHandler())
config = parse_args(args, "")
diff --git a/platform/ext/target/arm/rse/common/scripts/create_blob_message.py b/platform/ext/target/arm/rse/common/scripts/create_blob_message.py
index 1642029..96212b1 100644
--- a/platform/ext/target/arm/rse/common/scripts/create_blob_message.py
+++ b/platform/ext/target/arm/rse/common/scripts/create_blob_message.py
@@ -7,7 +7,7 @@
#-------------------------------------------------------------------------------
import logging
-logger = logging.getLogger("TF-M")
+logger = logging.getLogger("TF-M.{}".format(__name__))
import os
import sys
diff --git a/platform/ext/target/arm/rse/common/scripts/create_cm_provisioning_bundle.py b/platform/ext/target/arm/rse/common/scripts/create_cm_provisioning_bundle.py
index 846f13b..3569c99 100755
--- a/platform/ext/target/arm/rse/common/scripts/create_cm_provisioning_bundle.py
+++ b/platform/ext/target/arm/rse/common/scripts/create_cm_provisioning_bundle.py
@@ -13,7 +13,7 @@
import arg_utils
import logging
-logger = logging.getLogger("TF-M")
+logger = logging.getLogger("TF-M.{}".format(__name__))
sys.path.append(os.path.join(sys.path[0], 'modules'))
@@ -71,7 +71,8 @@
parser.add_argument("--log_level", help="log level", required=False, default="ERROR", choices=logging._levelToName.values())
args = parser.parse_args()
- logger.setLevel(args.log_level)
+ logging.getLogger("TF-M").setLevel(args.log_level)
+ logger.addHandler(logging.StreamHandler())
kwargs = parse_args(args)
diff --git a/platform/ext/target/arm/rse/common/scripts/create_combined_provisioning_bundle.py b/platform/ext/target/arm/rse/common/scripts/create_combined_provisioning_bundle.py
index 777fb1d..994f0f5 100755
--- a/platform/ext/target/arm/rse/common/scripts/create_combined_provisioning_bundle.py
+++ b/platform/ext/target/arm/rse/common/scripts/create_combined_provisioning_bundle.py
@@ -13,7 +13,7 @@
import arg_utils
import logging
-logger = logging.getLogger("TF-M")
+logger = logging.getLogger("TF-M.{}".format(__name__))
sys.path.append(os.path.join(sys.path[0], 'modules'))
@@ -66,7 +66,8 @@
parser.add_argument("--log_level", help="log level", required=False, default="ERROR", choices=logging._levelToName.values())
args = parser.parse_args()
- logger.setLevel(args.log_level)
+ logging.getLogger("TF-M").setLevel(args.log_level)
+ logger.addHandler(logging.StreamHandler())
kwargs = parse_args(args)
diff --git a/platform/ext/target/arm/rse/common/scripts/create_dm_chained_provisioning_bundle.py b/platform/ext/target/arm/rse/common/scripts/create_dm_chained_provisioning_bundle.py
index 1a49933..d84dec8 100755
--- a/platform/ext/target/arm/rse/common/scripts/create_dm_chained_provisioning_bundle.py
+++ b/platform/ext/target/arm/rse/common/scripts/create_dm_chained_provisioning_bundle.py
@@ -13,7 +13,7 @@
import arg_utils
import logging
-logger = logging.getLogger("TF-M")
+logger = logging.getLogger("TF-M.{}".format(__name__))
sys.path.append(os.path.join(sys.path[0], 'modules'))
@@ -69,6 +69,7 @@
args = parser.parse_args()
logger.setLevel(args.log_level)
+ logger.addHandler(logging.StreamHandler())
kwargs = parse_args(args)
diff --git a/platform/ext/target/arm/rse/common/scripts/create_dm_provisioning_bundle.py b/platform/ext/target/arm/rse/common/scripts/create_dm_provisioning_bundle.py
index b86fd2f..c94fa03 100755
--- a/platform/ext/target/arm/rse/common/scripts/create_dm_provisioning_bundle.py
+++ b/platform/ext/target/arm/rse/common/scripts/create_dm_provisioning_bundle.py
@@ -13,7 +13,7 @@
import arg_utils
import logging
-logger = logging.getLogger("TF-M")
+logger = logging.getLogger("TF-M.{}".format(__name__))
sys.path.append(os.path.join(sys.path[0], 'modules'))
@@ -72,7 +72,8 @@
parser.add_argument("--log_level", help="log level", required=False, default="ERROR", choices=logging._levelToName.values())
args = parser.parse_args()
- logger.setLevel(args.log_level)
+ logging.getLogger("TF-M").setLevel(args.log_level)
+ logger.addHandler(logging.StreamHandler())
kwargs = parse_args(args)
diff --git a/platform/ext/target/arm/rse/common/scripts/create_otp_layout_specification.py b/platform/ext/target/arm/rse/common/scripts/create_otp_layout_specification.py
index 330b435..5779d89 100644
--- a/platform/ext/target/arm/rse/common/scripts/create_otp_layout_specification.py
+++ b/platform/ext/target/arm/rse/common/scripts/create_otp_layout_specification.py
@@ -5,7 +5,7 @@
import re
import logging
-logger = logging.getLogger("TF-M")
+logger = logging.getLogger("TF-M.{}".format(__name__))
from arg_utils import parse_args_automatically
diff --git a/platform/ext/target/arm/rse/common/scripts/create_plain_data_message.py b/platform/ext/target/arm/rse/common/scripts/create_plain_data_message.py
index f9c4965..07dc48c 100644
--- a/platform/ext/target/arm/rse/common/scripts/create_plain_data_message.py
+++ b/platform/ext/target/arm/rse/common/scripts/create_plain_data_message.py
@@ -7,7 +7,7 @@
#-------------------------------------------------------------------------------
import logging
-logger = logging.getLogger("TF-M")
+logger = logging.getLogger("TF-M.{}".format(__name__))
import os
import sys
diff --git a/platform/ext/target/arm/rse/common/scripts/modules/otp_config.py b/platform/ext/target/arm/rse/common/scripts/modules/otp_config.py
index 174b8f2..ae4f80c 100644
--- a/platform/ext/target/arm/rse/common/scripts/modules/otp_config.py
+++ b/platform/ext/target/arm/rse/common/scripts/modules/otp_config.py
@@ -15,7 +15,7 @@
import arg_utils
import logging
-logger = logging.getLogger("TF-M")
+logger = logging.getLogger("TF-M.{}".format(__name__))
def add_arguments(parser : argparse.ArgumentParser,
prefix : str = "",
@@ -166,7 +166,8 @@
parser.add_argument("--log_level", help="log level", required=False, default="ERROR", choices=logging._levelToName.values())
args = parser.parse_args()
- logger.setLevel(args.log_level)
+ logging.getLogger("TF-M").setLevel(args.log_level)
+ logger.addHandler(logging.StreamHandler())
includes = c_include.get_includes(args.compile_commands_file, "otp_lcm.c")
defines = c_include.get_defines(args.compile_commands_file, "otp_lcm.c")
diff --git a/platform/ext/target/arm/rse/common/scripts/modules/provisioning_config.py b/platform/ext/target/arm/rse/common/scripts/modules/provisioning_config.py
index ce4ff58..dbd7500 100644
--- a/platform/ext/target/arm/rse/common/scripts/modules/provisioning_config.py
+++ b/platform/ext/target/arm/rse/common/scripts/modules/provisioning_config.py
@@ -18,15 +18,12 @@
from cryptography.hazmat.primitives import hashes
import logging
-logger = logging.getLogger("TF-M")
+logger = logging.getLogger("TF-M.{}".format(__name__))
from cryptography.hazmat.primitives.serialization import load_der_public_key, Encoding, PublicFormat
from crypto_conversion_utils import convert_hash_define
-import logging
-logger = logging.getLogger("TF-M")
-
all_regions = ['cm', 'dm']
def _get_rotpk_area_index(f : str):
@@ -381,8 +378,10 @@
parser.add_argument("--provisioning_config_output_file", help="file to output provisioning config to", required=True)
parser.add_argument("--log_level", help="log level", required=False, default="ERROR", choices=logging._levelToName.values())
+ from rich import inspect
args = parser.parse_args()
- logger.setLevel(args.log_level)
+ logging.getLogger("TF-M").setLevel(args.log_level)
+ logger.addHandler(logging.StreamHandler())
includes = c_include.get_includes(args.compile_commands_file, "otp_lcm.c")
defines = c_include.get_defines(args.compile_commands_file, "otp_lcm.c")
diff --git a/platform/ext/target/arm/rse/common/scripts/modules/provisioning_message_config.py b/platform/ext/target/arm/rse/common/scripts/modules/provisioning_message_config.py
index c57e528..04846eb 100644
--- a/platform/ext/target/arm/rse/common/scripts/modules/provisioning_message_config.py
+++ b/platform/ext/target/arm/rse/common/scripts/modules/provisioning_message_config.py
@@ -20,7 +20,7 @@
import argparse
import logging
-logger = logging.getLogger("TF-M")
+logger = logging.getLogger("TF-M.{}".format(__name__))
def add_arguments(parser : argparse.ArgumentParser,
prefix : str = "",
@@ -428,7 +428,8 @@
parser.add_argument("--log_level", help="log level", required=False, default="ERROR", choices=logging._levelToName.values())
args = parser.parse_args()
- logger.setLevel(args.log_level)
+ logging.getLogger("TF-M").setLevel(args.log_level)
+ logger.addHandler(logging.StreamHandler())
includes = c_include.get_includes(args.compile_commands_file, "otp_lcm.c")
defines = c_include.get_defines(args.compile_commands_file, "otp_lcm.c")
diff --git a/platform/ext/target/arm/rse/common/scripts/modules/rse_provisioning_message.py b/platform/ext/target/arm/rse/common/scripts/modules/rse_provisioning_message.py
index b76e833..2134421 100644
--- a/platform/ext/target/arm/rse/common/scripts/modules/rse_provisioning_message.py
+++ b/platform/ext/target/arm/rse/common/scripts/modules/rse_provisioning_message.py
@@ -13,7 +13,7 @@
import sign_then_encrypt_data
import logging
-logger = logging.getLogger("TF-M")
+logger = logging.getLogger("TF-M.{}".format(__name__))
from provisioning_message_config import Provisioning_message_config
diff --git a/tools/modules/arg_utils.py b/tools/modules/arg_utils.py
index 80093a7..c0482b7 100644
--- a/tools/modules/arg_utils.py
+++ b/tools/modules/arg_utils.py
@@ -8,7 +8,7 @@
import argparse
import logging
-logger = logging.getLogger("TF-M")
+logger = logging.getLogger("TF-M.{}".format(__name__))
from elftools.elf.elffile import ELFFile
from file_loader import load_bytes_from_file
diff --git a/tools/modules/c_include.py b/tools/modules/c_include.py
index 636f31d..e3185dc 100644
--- a/tools/modules/c_include.py
+++ b/tools/modules/c_include.py
@@ -9,6 +9,9 @@
import os
import json
+import logging
+logger = logging.getLogger("TF-M.{}".format(__name__))
+
def get_compile_command(compile_commands_file, c_file):
with open(compile_commands_file, "rt") as f:
compile_commands = json.load(f)
@@ -32,7 +35,8 @@
parser.add_argument("--c_file", help="name of the c file to take", required=True)
parser.add_argument("--log_level", help="log level", required=False, default="ERROR", choices=logging._levelToName.values())
args = parser.parse_args()
- logger.setLevel(args.log_level)
+ logging.getLogger("TF-M").setLevel(args.log_level)
+ logger.addHandler(logging.StreamHandler())
print(get_compile_command(args.compile_commands_file, args.c_file))
print(get_includes(args.compile_commands_file, args.c_file))
diff --git a/tools/modules/c_struct.py b/tools/modules/c_struct.py
index 08c0428..e88bebc 100644
--- a/tools/modules/c_struct.py
+++ b/tools/modules/c_struct.py
@@ -12,7 +12,7 @@
import os
import logging
-logger = logging.getLogger("TF-M")
+logger = logging.getLogger("TF-M.{}".format(__name__))
from rich import inspect
@@ -643,7 +643,8 @@
parser.add_argument("--c_file_to_mirror_includes_from", help="name of the c file to take", required=True)
parser.add_argument("--log_level", help="log level", required=False, default="ERROR", choices=logging._levelToName.values())
args = parser.parse_args()
- logger.setLevel(args.log_level)
+ logging.getLogger("TF-M").setLevel(args.log_level)
+ logger.addHandler(logging.StreamHandler())
includes = c_include.get_includes(args.compile_commands_file, args.c_file_to_mirror_includes_from)
defines = c_include.get_defines(args.compile_commands_file, args.c_file_to_mirror_includes_from)
diff --git a/tools/modules/crypto_conversion_utils.py b/tools/modules/crypto_conversion_utils.py
index ddf1c79..4666ef1 100644
--- a/tools/modules/crypto_conversion_utils.py
+++ b/tools/modules/crypto_conversion_utils.py
@@ -9,7 +9,7 @@
from cryptography.hazmat.primitives import hashes
import logging
-logger = logging.getLogger("TF-M")
+logger = logging.getLogger("TF-M.{}".format(__name__))
def convert_curve_define(define_name : str,
define_prefix : str = "",
diff --git a/tools/modules/encrypt_data.py b/tools/modules/encrypt_data.py
index e4eacc9..6508d9f 100644
--- a/tools/modules/encrypt_data.py
+++ b/tools/modules/encrypt_data.py
@@ -12,7 +12,7 @@
import argparse
import logging
-logger = logging.getLogger("TF-M")
+logger = logging.getLogger("TF-M.{}".format(__name__))
from arg_utils import *
import secrets
@@ -96,7 +96,9 @@
add_arguments(parser, required=True)
args = parser.parse_args()
- logger.setLevel(args.log_level)
+ logging.getLogger("TF-M").setLevel(args.log_level)
+ logger.addHandler(logging.StreamHandler())
+
config = parse_args(args)
config |= parse_args_automatically(args, ["data"])
diff --git a/tools/modules/file_loader.py b/tools/modules/file_loader.py
index 249c93f..aa42140 100644
--- a/tools/modules/file_loader.py
+++ b/tools/modules/file_loader.py
@@ -7,7 +7,7 @@
from cryptography.hazmat.primitives.serialization import load_pem_private_key, Encoding, PublicFormat
import logging
-logger = logging.getLogger("TF-M")
+logger = logging.getLogger("TF-M.{}".format(__name__))
from os.path import splitext, isfile
def _load_bin(filepath):
diff --git a/tools/modules/key_derivation.py b/tools/modules/key_derivation.py
index 07fc7d0..1885492 100644
--- a/tools/modules/key_derivation.py
+++ b/tools/modules/key_derivation.py
@@ -15,7 +15,7 @@
import struct
import argparse
import logging
-logger = logging.getLogger("TF-M")
+logger = logging.getLogger("TF-M.{}".format(__name__))
def symmetric_kdf_sp800_108_cmac(input_key: bytes,
diff --git a/tools/modules/sign_data.py b/tools/modules/sign_data.py
index 7ef3cfb..7267348 100644
--- a/tools/modules/sign_data.py
+++ b/tools/modules/sign_data.py
@@ -17,7 +17,7 @@
import argparse
import logging
-logger = logging.getLogger("TF-M")
+logger = logging.getLogger("TF-M.{}".format(__name__))
from arg_utils import *
def _asn1_sig_to_raw(sig : bytes , curve : ec.EllipticCurve) -> bytes:
@@ -156,7 +156,8 @@
add_arguments(parser, required=True)
args = parser.parse_args()
- logger.setLevel(args.log_level)
+ logging.getLogger("TF-M").setLevel(args.log_level)
+ logger.addHandler(logging.StreamHandler())
config = parse_args(args)
config |= parse_args_automatically(args, ["data"])
diff --git a/tools/modules/sign_then_encrypt_data.py b/tools/modules/sign_then_encrypt_data.py
index 7af18bb..fa77a82 100644
--- a/tools/modules/sign_then_encrypt_data.py
+++ b/tools/modules/sign_then_encrypt_data.py
@@ -9,7 +9,7 @@
import argparse
import logging
-logger = logging.getLogger("TF-M")
+logger = logging.getLogger("TF-M.{}".format(__name__))
import arg_utils
import sign_data
@@ -90,4 +90,5 @@
parser.add_argument("--log_level", help="log level", required=False, default="ERROR", choices=logging._levelToName.values())
args = parser.parse_args()
- logger.setLevel(args.log_level)
+ logging.getLogger("TF-M").setLevel(args.log_level)
+ logger.addHandler(logging.StreamHandler())
diff --git a/tools/modules/struct_pack.py b/tools/modules/struct_pack.py
index fae1b0b..d701eb1 100644
--- a/tools/modules/struct_pack.py
+++ b/tools/modules/struct_pack.py
@@ -8,7 +8,7 @@
import struct
import logging
-logger = logging.getLogger("TF-M")
+logger = logging.getLogger("TF-M.{}".format(__name__))
def struct_pack(objects, pad_to=0):
defstring = "<"