Skip to content

Commit

Permalink
Add details on load balance behaviour with Logstash output (#1024)
Browse files Browse the repository at this point in the history
  • Loading branch information
kilfoyle authored May 8, 2024
1 parent 7f2b096 commit a47114a
Showing 1 changed file with 12 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -302,6 +302,18 @@ load balances published events onto all {ls} hosts. If `false`,
the output plugin sends all events to one host (determined at random) and
switches to another host if the selected one becomes unresponsive.

With `loadbalance` enabled:

* {agent} reads batches of events and sends each batch to one {ls} worker dynamically, based on a work-queue shared between the outputs.
* If a connection drops, {agent} takes the disconnected {ls} worker out of its pool.
* {agent} tries to reconnect. If it succeeds, it re-adds the {ls} worker to the pool.
* If one of the {ls} nodes is slow but "healthy", it sends a keep-alive signal until the full batch of data is processed. This prevents {agent} from sending further data until it receives an acknowledgement signal back from {ls}. {agent} keeps all events in memory until after that acknowledgement occurs.

Without `loadbalance` enabled:

* {agent} picks a random {ls} host and sends batches of events to it. Due to the random algorithm, the load on the {ls} nodes should be roughly equal.
* In case of any errors, {agent} picks another {ls} node, also at random. If a connection to a host fails, the host is retried only if there are errors on the new connection.

*Default:* `false`

Example:
Expand Down

0 comments on commit a47114a

Please sign in to comment.