class_docstr: Rule engine to processes rules
class_docstr_tok: ["Rule","engine","to","processes","rules"]
docstr: Configure the outputs for the rule
  
  Args:
      record (dict): Record to pass through to dynamic_outputs
      rule (rule.Rule): Attributes for the rule which triggered the alert
  Returns:
      set: unique set of outputs, only required outputs if the rule is staged
docstr_tok: ["Configure","the","outputs","for","the","rule","Args",":","record","(","dict",")",":","Record","to","pass","through","to","dynamic_outputs","rule","(","rule.Rule",")",":","Attributes","for","the","rule","which","triggered","the","alert","Returns",":","set",":","unique","set","of","outputs",",","only","required","outputs","if","the","rule","is","staged"]
code: def _configure_outputs(self, record, rule):
      """Configure the outputs for the rule
  
      Args:
          record (dict): Record to pass through to dynamic_outputs
          rule (rule.Rule): Attributes for the rule which triggered the alert
      Returns:
          set: unique set of outputs, only required outputs if the rule is staged
      """
      # Check if the rule is staged and, if so, only use the required alert outputs
      if rule.is_staged(self._rule_table):
          output_sources = [self._required_outputs_set]
      else:  # Otherwise, combine all outputs into one
          output_sources = [
              self._required_outputs_set,
              rule.outputs_set,
          ]
          if rule.dynamic_outputs:
              # append dynamic_outputs to output sources if they exist
              dynamic_outputs = self._configure_dynamic_outputs(
                  record, rule
              )
              output_sources.append(dynamic_outputs)
  
      return {
          output
          for output_source in output_sources
          for output in output_source
          if self._check_valid_output(output)
      }
  
imports: from datetime import datetime, timedelta
  from os import environ
  from streamalert.shared.publisher import AlertPublisherRepository
  from streamalert.rules_engine.alert_forwarder import AlertForwarder
  from streamalert.rules_engine.threat_intel import ThreatIntel
  from streamalert.shared import resources, RULES_ENGINE_FUNCTION_NAME
  from streamalert.shared.alert import Alert
  from streamalert.shared.config import load_config
  from streamalert.shared.importer import import_folders
  from streamalert.shared.logger import get_logger
  from streamalert.shared.lookup_tables.core import LookupTables
  from streamalert.shared.metrics import MetricLogger
  from streamalert.shared.rule import Rule
  from streamalert.shared.rule_table import RuleTable
  from streamalert.shared.stats import RuleStatisticTracker
label_desc: Use image node_id 8 for calling the RulesEngine obj's underlying member method code with example usage: obj._configure_outputs(record, rule) and returns: unknown