code: def lograptor(files, patterns=None, matcher='ruled', cfgfiles=None, apps=None, hosts=None,
                filters=None, time_period=None, time_range=None, case=False, invert=False,
                word=False, files_with_match=None, count=False, quiet=False, max_count=0,
                only_matching=False, line_number=False, with_filename=None,
                ip_lookup=False, uid_lookup=False, anonymize=False, thread=False,
                before_context=0, after_context=0, context=0):
      cli_parser = create_argument_parser()
      args = cli_parser.parse_args()
      args.files = files
      args.matcher = matcher
      args.cfgfiles = cfgfiles
      args.time_period = time_period
      args.time_range = time_range
      args.case = case
      args.invert = invert
      args.word = word
      args.files_with_match = files_with_match
      args.count = count
      args.quiet = quiet
      args.max_count = max_count
      args.only_matching = only_matching
      args.line_number = line_number
      args.with_filename = with_filename
      args.anonymize = anonymize
      args.ip_lookup = ip_lookup
      args.uid_lookup = uid_lookup
      args.thread = thread
      args.context = context
      args.after_context = after_context
      args.before_context = before_context
      args.patterns = [''] if patterns is None else patterns
      if apps is not None:
          args.apps = apps
      if hosts is not None:
          args.hosts = hosts
      if filters is not None:
          args.filters = filters
      _lograptor = LogRaptor(args)
      return _lograptor()