====
TODO
====

- bulk

  - implement bulk indexing

  - KibanaMessages curently uses a timeout, this is useless since this timeout
    will only count the time on the iterator if we use a bulk index.
    Move the timeout to the elasticsearch bulk connection

  - make sure we catch failed bulk actions and add them back to the queue.

    - make sure we don't add failing bulk actions more then (3) times to the
      queue because it could be trash daa whcih will never get indexed in elasticsearch.

    - dump failing messages to a json file

    - offer a retry method for failing bulk actions

      - start a queue for retry indexing failing actions

