code: def report_many(self, event_list, metadata=None, block=None):
          
          failed_list = []
          for index, event in enumerate(event_list):
              queued_successfully = self.report(event, metadata, block)
              if not queued_successfully:
                  failed_list.append((index, event))
          return failed_list
docs: Reports all the given events to Alooma by formatting them properly and
          placing them in the buffer to be sent by the Sender instance
          :param event_list: A list of dicts / strings representing events
          :param metadata: (Optional) A dict with extra metadata to be attached to
                           the event
          :param block:    (Optional) If True, the function will block the thread
                           until the event buffer has space for the event.
                           If False, reported events are discarded if the queue is
                           full. Defaults to None, which uses the global `block`
                           parameter given in the `init`.
          :return:         A list with tuples, each containing a failed event
                           and its original index. An empty list means success