| @@ -459,9 +459,7 @@ def _run(in_files, model_file, shape, input_nodes, output_nodes, out_dir, report | |||||
| for file in files: | for file in files: | ||||
| files_config['in_files'].append(os.path.join(root_dir, file)) | files_config['in_files'].append(os.path.join(root_dir, file)) | ||||
| main(files_config) | main(files_config) | ||||
| log_console.info("\n") | |||||
| log_console.info("MindConverter: conversion is completed.") | log_console.info("MindConverter: conversion is completed.") | ||||
| log_console.info("\n") | |||||
| elif model_file: | elif model_file: | ||||
| file_config = { | file_config = { | ||||
| @@ -478,14 +476,10 @@ def _run(in_files, model_file, shape, input_nodes, output_nodes, out_dir, report | |||||
| sys.path.append(project_path) | sys.path.append(project_path) | ||||
| main_graph_base_converter(file_config) | main_graph_base_converter(file_config) | ||||
| log_console.info("\n") | |||||
| log_console.info("MindConverter: conversion is completed.") | log_console.info("MindConverter: conversion is completed.") | ||||
| log_console.info("\n") | |||||
| else: | else: | ||||
| error_msg = "`--in_file` and `--model_file` should be set at least one." | error_msg = "`--in_file` and `--model_file` should be set at least one." | ||||
| error = FileNotFoundError(error_msg) | error = FileNotFoundError(error_msg) | ||||
| log.error(str(error)) | log.error(str(error)) | ||||
| log_console.error("\n") | |||||
| log_console.error("mindconverter: error: %s", str(error)) | |||||
| log_console.error("\n") | |||||
| log_console.error(f"mindconverter: error: {str(error)}") | |||||
| sys.exit(-1) | sys.exit(-1) | ||||
| @@ -140,17 +140,12 @@ class MindConverterException(Exception): | |||||
| if not isinstance(e, MindConverterException): | if not isinstance(e, MindConverterException): | ||||
| detail_info = cls.normalize_error_msg(str(e)) | detail_info = cls.normalize_error_msg(str(e)) | ||||
| log.error(error) | log.error(error) | ||||
| log_console.error("\n") | |||||
| log_console.error(detail_info) | log_console.error(detail_info) | ||||
| log_console.error("\n") | |||||
| log.exception(e) | log.exception(e) | ||||
| sys.exit(0) | sys.exit(0) | ||||
| except ModuleNotFoundError as e: | except ModuleNotFoundError as e: | ||||
| detail_info = "Error detail: Required package not found, please check the runtime environment." | detail_info = "Error detail: Required package not found, please check the runtime environment." | ||||
| log_console.error("\n") | |||||
| log_console.error(str(e)) | |||||
| log_console.error(detail_info) | |||||
| log_console.error("\n") | |||||
| log_console.error(f"{str(e)}\n{detail_info}") | |||||
| log.exception(e) | log.exception(e) | ||||
| sys.exit(0) | sys.exit(0) | ||||
| return res | return res | ||||
| @@ -1,4 +1,4 @@ | |||||
| # Copyright 2020 Huawei Technologies Co., Ltd | |||||
| # Copyright 2020-2021 Huawei Technologies Co., Ltd | |||||
| # | # | ||||
| # Licensed under the Apache License, Version 2.0 (the "License"); | # Licensed under the Apache License, Version 2.0 (the "License"); | ||||
| # you may not use this file except in compliance with the License. | # you may not use this file except in compliance with the License. | ||||
| @@ -13,8 +13,35 @@ | |||||
| # limitations under the License. | # limitations under the License. | ||||
| # ============================================================================ | # ============================================================================ | ||||
| """Create a logger.""" | """Create a logger.""" | ||||
| __all__ = ["logger", "logger_console"] | |||||
| from mindinsight.utils.log import setup_logger | from mindinsight.utils.log import setup_logger | ||||
| logger = setup_logger("mindconverter", "mindconverter", console=False) | logger = setup_logger("mindconverter", "mindconverter", console=False) | ||||
| logger_console = setup_logger("mindconverter", "mindconverter", console=True, | |||||
| sub_log_name="logger_console", formatter="%(message)s") | |||||
| class MindConverterLogger: | |||||
| """MindConverter logger for stdout.""" | |||||
| def __init__(self): | |||||
| self.logger = setup_logger("mindconverter", "mindconverter", console=True, | |||||
| sub_log_name="logger_console", formatter="%(message)s") | |||||
| def warning(self, msg): | |||||
| """Log warning message to stdout.""" | |||||
| self.logger.warning("[WARNING] MINDCONVERTER: %s", msg) | |||||
| def info(self, msg): | |||||
| """Log info level message to stdout.""" | |||||
| self.logger.info("\n") | |||||
| self.logger.info("[INFO] MINDCONVERTER: %s", msg) | |||||
| self.logger.info("\n") | |||||
| def error(self, msg): | |||||
| """Log error level message to stdout.""" | |||||
| self.logger.error("\n") | |||||
| self.logger.error("[ERROR] MINDCONVERTER: %s", msg) | |||||
| self.logger.error("\n") | |||||
| logger_console = MindConverterLogger() | |||||
| @@ -45,8 +45,8 @@ def onnx_lib_version_satisfied(): | |||||
| ort = import_module("onnxruntime") | ort = import_module("onnxruntime") | ||||
| optimizer = import_module("onnxoptimizer.version") | optimizer = import_module("onnxoptimizer.version") | ||||
| if not lib_version_satisfied(getattr(ort, "__version__"), ONNXRUNTIME_MIN_VER): | if not lib_version_satisfied(getattr(ort, "__version__"), ONNXRUNTIME_MIN_VER): | ||||
| log_console.warning("onnxruntime's version should be greater than %s, however current version is %s.", | |||||
| ONNXRUNTIME_MIN_VER, ort.__version__) | |||||
| log_console.warning(f"onnxruntime's version should be greater than {ONNXRUNTIME_MIN_VER}, " | |||||
| f"however current version is {ort.__version__}.") | |||||
| if not lib_version_satisfied(getattr(onnx, "__version__"), ONNX_MIN_VER) \ | if not lib_version_satisfied(getattr(onnx, "__version__"), ONNX_MIN_VER) \ | ||||
| or not lib_version_satisfied(getattr(optimizer, "version"), ONNXOPTIMIZER_MIN_VER): | or not lib_version_satisfied(getattr(optimizer, "version"), ONNXOPTIMIZER_MIN_VER): | ||||
| @@ -57,9 +57,7 @@ def onnx_lib_version_satisfied(): | |||||
| def _print_error(err): | def _print_error(err): | ||||
| """Print error to stdout and record it.""" | """Print error to stdout and record it.""" | ||||
| log.error(err) | log.error(err) | ||||
| log_console.error("\n") | |||||
| log_console.error(str(err)) | log_console.error(str(err)) | ||||
| log_console.error("\n") | |||||
| def torch_version_satisfied(output_queue): | def torch_version_satisfied(output_queue): | ||||