Skip to content

Commit 0d6507b

Browse files
[IMPROVED] Don't log R1 ephemerals in clustered environments (#7003)
``` [INF] JetStream cluster new consumer leader for '$G > KV_bucket > p7eMKZwR' ``` This logline is often either confusing or annoying. It happens for every R1 ephemeral that's (re)created and may result in lots of noise when using many KV watchers for example. This line is purely a side-effect of running in a clustered environment, in a standalone server this wouldn't happen, and doesn't mean much because the leader of an R1 ephemeral is always known and will not change. Still sending the advisory though, to ensure we stay compatible. Signed-off-by: Maurice van Veen <[email protected]>
2 parents e7704eb + 24ad38c commit 0d6507b

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

server/jetstream_cluster.go

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5223,7 +5223,14 @@ func (js *jetStream) processConsumerLeaderChange(o *consumer, isLeader bool) err
52235223
}
52245224

52255225
if isLeader {
5226-
s.Noticef("JetStream cluster new consumer leader for '%s > %s > %s'", ca.Client.serviceAccount(), streamName, consumerName)
5226+
// Only log if the consumer is replicated and/or durable.
5227+
// Logging about R1 ephemerals, like KV watchers, is mostly noise since the leader will always be known.
5228+
o.mu.RLock()
5229+
isReplicated, durable := o.node != nil, o.isDurable()
5230+
o.mu.RUnlock()
5231+
if isReplicated || durable {
5232+
s.Noticef("JetStream cluster new consumer leader for '%s > %s > %s'", ca.Client.serviceAccount(), streamName, consumerName)
5233+
}
52275234
s.sendConsumerLeaderElectAdvisory(o)
52285235
} else {
52295236
// We are stepping down.

0 commit comments

Comments
 (0)