Uploaded image for project: 'Apache NiFi'
  1. Apache NiFi
  2. NIFI-1221

ListenSyslog should support batching

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

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

    Description

      Currently, performance of ListenSyslog is pretty reasonable. If I configure logging to WARN level, and I use a Yield Duration of 0 ms, 3 threads, 25 ms run duration, then I can push about 23,000 messages per second to a single NiFi node without any loss, with message parsing enabled.

      However, I think we can do a lot better than that. Since these Syslog events are just log messages, they lend themselves very well to concatenation. We should have a Max Batch Size property as well as a Message Delimiter property.

      If using batch, though, it's important that we do not allow the Parse Messages property to be true, since it doesn't really make sense to add attributes if we have multiple messages.

      However, since we cannot parse the messages if bundled together, we should have a separate ParseSyslog processor that does parse them. This way, we can route specific events to a ParseSyslog processor. For instance, using RouteText to pull out events of interest.

      Attachments

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            bbende Bryan Bende
            markap14 Mark Payne
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment