code: def handle_log(self, workunit, level, *msg_elements):
      
      if level <= self.level_for_workunit(workunit, self.settings.log_level):
        self.do_handle_log(workunit, level, *msg_elements)
docs: Handle a message logged by pants code.
  
      level: One of the constants above.
  
      Each element in msg_elements is either a message or a (message, detail) pair.
      A subclass must show the message, but may choose to show the detail in some
      sensible way (e.g., when the message text is clicked on in a browser).
  
      This convenience implementation filters by log level and then delegates to do_handle_log.