docstr: Add threat intel downloader configure subparser
  
  manage.py threat-intel-downloader configure [options]
docstr_tok: ["Add","threat","intel","downloader","configure","subparser","manage.py","threat-intel-downloader","configure","[","options","]"]
code: def _setup_threat_intel_configure_subparser(subparsers):
      """Add threat intel downloader configure subparser
  
      manage.py threat-intel-downloader configure [options]
      """
      ti_downloader_configure_parser = generate_subparser(
          subparsers,
          "configure",
          description="Enable, disable, or configure the threat intel downloader function",
          subcommand=True,
      )
  
      # Enable/Disable toggle group
      toggle_group = (
          ti_downloader_configure_parser.add_mutually_exclusive_group(
              required=False
          )
      )
  
      toggle_group.add_argument(
          "-e",
          "--enable",
          dest="enable_threat_intel_downloader",
          help="Enable the threat intel downloader function",
          action="store_true",
      )
  
      toggle_group.add_argument(
          "-d",
          "--disable",
          dest="enable_threat_intel_downloader",
          help="Disable the threat intel downloader function",
          action="store_false",
      )
  
      # Function schedule expression (rate) arg
      add_schedule_expression_arg(ti_downloader_configure_parser)
  
      # Function timeout arg
      add_timeout_arg(ti_downloader_configure_parser)
  
      # Function memory arg
      add_memory_arg(ti_downloader_configure_parser)
  
      ti_downloader_configure_parser.add_argument(
          "-r",
          "--table-rcu",
          help="Read capacity units to use for the DynamoDB table",
          type=int,
          default=10,
      )
  
      ti_downloader_configure_parser.add_argument(
          "-w",
          "--table-wcu",
          help="Write capacity units to use for the DynamoDB table",
          type=int,
          default=10,
      )
  
      ti_downloader_configure_parser.add_argument(
          "-k",
          "--ioc-keys",
          help="One or more IOC keys to store in DynamoDB table",
          nargs="+",
          action=UniqueSortedListAction,
          default=["expiration_ts", "itype", "source", "type", "value"],
      )
  
      ti_downloader_configure_parser.add_argument(
          "-f",
          "--ioc-filters",
          help="One or more filters to apply when retrieving IOCs from Threat Feed",
          nargs="+",
          action=UniqueSortedListAction,
          default=["crowdstrike", "@airbnb.com"],
      )
  
      ti_downloader_configure_parser.add_argument(
          "-i",
          "--ioc-types",
          help="One or more IOC type defined by the Threat Feed. IOC types can vary by feed",
          nargs="+",
          action=UniqueSortedListAction,
          default=["domain", "ip", "md5"],
      )
  
      ti_downloader_configure_parser.add_argument(
          "-x",
          "--excluded-sub-types",
          help="IOC subtypes to be excluded",
          action=UniqueSortedListAction,
          default=[
              "bot_ip",
              "brute_ip",
              "scan_ip",
              "spam_ip",
              "tor_ip",
          ],
      )
  
      ti_downloader_configure_parser.add_argument(
          "-a",
          "--autoscale",
          help="Enable auto scaling for the threat intel DynamoDB table",
          default=False,
          action="store_true",
      )
  
      ti_downloader_configure_parser.add_argument(
          "--max-read-capacity",
          help="Maximum read capacity to use when auto scaling is enabled",
          type=int,
          default=5,
      )
  
      ti_downloader_configure_parser.add_argument(
          "--min-read-capacity",
          help="Minimum read capacity to use when auto scaling is enabled",
          type=int,
          default=5,
      )
  
      ti_downloader_configure_parser.add_argument(
          "-u",
          "--target-utilization",
          help=(
              "Target percentage of consumed provisioned throughput at a point in time "
              "to use for auto-scaling the read capacity units"
          ),
          type=int,
          default=70,
      )
  
file_path: streamalert/streamalert_cli/threat_intel_downloader/handler.py
imports: import re
  from streamalert.shared.logger import get_logger
  from streamalert.threat_intel_downloader.main import ThreatStream
  from streamalert_cli.helpers import user_input, save_parameter
  from streamalert_cli.utils import add_memory_arg, add_schedule_expression_arg, add_timeout_arg, CLICommand, generate_subparser, UniqueSortedListAction
label_desc: Use image node_id 2 for calling the ThreatIntelDownloaderCommand obj's underlying member method code with example usage: obj._setup_threat_intel_configure_subparser(subparsers) without return types