Uploaded image for project: 'Atlas'
  1. Atlas
  2. ATLAS-3427

Atlas hooks enhancements for better fault-tolerance i.e. Kafka unavailability

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • None
    • None
    • None

    Description

      Background

      Existing implementation for sending messages from the hooks relies on Kafka. Which means that if Kafka is not available for any reasons, the messages do not make it to Atlas. They are simply added to the failed.log.

       Solution

      Introduce a mechanism which preserves messages if destination for the messages is not reachable. This new mechanism will also have logic to retry these messages.

      Requirements

      The mechanism should be:

      • Transparent: Existing hooks should not have to rework their implementation. 
      • Configurable: This should be introduced optionally. If hook chooses not to use this, it should fallback to existing implementation. The behavior should be configurable via properties.
      • High-performance: Using this mechanism should not introduce additional overhead. Ideally, there should not be additional serialization introduced.
      • Reliable: The new mechanism should relay these messages reliably. Existing message formats should be supported viz. plain, compressed, compress & multi-part.

       

      Attachments

        Issue Links

          Activity

            People

              amestry Ashutosh Mestry
              nixon Nixon Rodrigues
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: