docstr: benchmark logger
docstr_tok: ["benchmark","logger"]
code: def benchmark_logger(self):
      """
      benchmark logger
      """
      # remove other logging handler
      for handler in logging.root.handlers[:]:
          logging.root.removeHandler(handler)
  
      # Init logger
      FORMAT = "%(asctime)s - %(name)s - %(levelname)s - %(message)s"
      log_output = f"{LOG_PATH_ROOT}/{self.model_name}.log"
      Path(f"{LOG_PATH_ROOT}").mkdir(parents=True, exist_ok=True)
      logging.basicConfig(
          level=logging.INFO,
          format=FORMAT,
          handlers=[
              logging.FileHandler(filename=log_output, mode="w"),
              logging.StreamHandler(),
          ],
      )
      self.logger = logging.getLogger(__name__)
      self.logger.info(
          f"Paddle Inference benchmark log will be saved to {log_output}"
      )
  
file_path: PaddleDetection/deploy/python/benchmark_utils.py
imports: import os
  import logging
  import paddle
  import paddle.inference
  from pathlib import Path
label_desc: Use image node_id 2 for calling the PaddleInferBenchmark obj's underlying member method code with example usage: obj.benchmark_logger() without return types