code: def __init__(
      self, msg, msg_type, code=None, command=None, special_case=None
  ):
      super(ProcessRunnerError, self).__init__(
          "{} (discovered={}): type={}, code={}, command={}".format(
              msg, special_case, msg_type, code, command
          )
      )
  
      self.msg_type = msg_type
      self.code = code
      self.command = command
  
      self.special_case = special_case
  
file_path: ray/python/ray/autoscaler/_private/subprocess_output_util.py
imports: import os
  import re
  import subprocess
  import sys
  import tempfile
  import time
  from ray.autoscaler._private.cli_logger import cf, cli_logger
label_desc: Use image node_id 1 to create a new ProcessRunnerError object from inherited base classes: Exception with example: obj = ProcessRunnerError(msg, msg_type, code, command, special_case)