Skip to content

Commit 1951535

Browse files
authored
enhancement(observability): Update internal log rate limiting messages (#17394)
To use the word "suppressed" when messages are being suppressed. This is similar to SystemD and, we think, will be less likely to confuse users into thinking that their event processing is being suppressed. Signed-off-by: Jesse Szwedko <[email protected]>
1 parent 111cd07 commit 1951535

File tree

1 file changed

+49
-47
lines changed

1 file changed

+49
-47
lines changed

lib/tracing-limit/src/lib.rs

+49-47
Original file line numberDiff line numberDiff line change
@@ -177,36 +177,38 @@ where
177177
State::new(message, limit)
178178
});
179179

180-
// Update our rate limiting state for this event, and see if we should still be rate limiting it.
180+
// Update our suppressed state for this event, and see if we should still be suppressing it.
181181
//
182182
// When this is the first time seeing the event, we emit it like we normally would. The second time we see it in
183-
// the limit period, we emit a new event to indicate that the original event is being actively rate limited.
183+
// the limit period, we emit a new event to indicate that the original event is being actively suppressed.
184184
// Otherwise, we don't emit anything.
185185
let previous_count = state.increment_count();
186186
if state.should_limit() {
187187
match previous_count {
188188
0 => self.inner.on_event(event, ctx),
189189
1 => {
190-
let message =
191-
format!("Internal log [{}] is being rate limited.", state.message);
190+
let message = format!(
191+
"Internal log [{}] is being suppressed to avoid flooding.",
192+
state.message
193+
);
192194
self.create_event(&ctx, metadata, message, state.limit);
193195
}
194196
_ => {}
195197
}
196198
} else {
197199
// If we saw this event 3 or more times total, emit an event that indicates the total number of times we
198-
// rate limited the event in the limit period.
200+
// suppressed the event in the limit period.
199201
if previous_count > 1 {
200202
let message = format!(
201-
"Internal log [{}] has been rate limited {} times.",
203+
"Internal log [{}] has been suppressed {} times.",
202204
state.message,
203205
previous_count - 1
204206
);
205207

206208
self.create_event(&ctx, metadata, message, state.limit);
207209
}
208210

209-
// We're not rate limiting anymore, so we also emit the current event as normal.. but we update our rate
211+
// We're not suppressing anymore, so we also emit the current event as normal.. but we update our rate
210212
// limiting state since this is effectively equivalent to seeing the event again for the first time.
211213
self.inner.on_event(event, ctx);
212214

@@ -510,11 +512,11 @@ mod test {
510512
*events,
511513
vec![
512514
"Hello world!",
513-
"Internal log [Hello world!] is being rate limited.",
514-
"Internal log [Hello world!] has been rate limited 9 times.",
515+
"Internal log [Hello world!] is being suppressed to avoid flooding.",
516+
"Internal log [Hello world!] has been suppressed 9 times.",
515517
"Hello world!",
516-
"Internal log [Hello world!] is being rate limited.",
517-
"Internal log [Hello world!] has been rate limited 9 times.",
518+
"Internal log [Hello world!] is being suppressed to avoid flooding.",
519+
"Internal log [Hello world!] has been suppressed 9 times.",
518520
"Hello world!",
519521
]
520522
.into_iter()
@@ -547,11 +549,11 @@ mod test {
547549
*events,
548550
vec![
549551
"Hello world!",
550-
"Internal log [Hello world!] is being rate limited.",
551-
"Internal log [Hello world!] has been rate limited 9 times.",
552+
"Internal log [Hello world!] is being suppressed to avoid flooding.",
553+
"Internal log [Hello world!] has been suppressed 9 times.",
552554
"Hello world!",
553-
"Internal log [Hello world!] is being rate limited.",
554-
"Internal log [Hello world!] has been rate limited 9 times.",
555+
"Internal log [Hello world!] is being suppressed to avoid flooding.",
556+
"Internal log [Hello world!] has been suppressed 9 times.",
555557
"Hello world!",
556558
]
557559
.into_iter()
@@ -594,29 +596,29 @@ mod test {
594596
"Hello foo on line_number 2!",
595597
"Hello bar on line_number 1!",
596598
"Hello bar on line_number 2!",
597-
"Internal log [Hello foo on line_number 1!] is being rate limited.",
598-
"Internal log [Hello foo on line_number 2!] is being rate limited.",
599-
"Internal log [Hello bar on line_number 1!] is being rate limited.",
600-
"Internal log [Hello bar on line_number 2!] is being rate limited.",
601-
"Internal log [Hello foo on line_number 1!] has been rate limited 9 times.",
599+
"Internal log [Hello foo on line_number 1!] is being suppressed to avoid flooding.",
600+
"Internal log [Hello foo on line_number 2!] is being suppressed to avoid flooding.",
601+
"Internal log [Hello bar on line_number 1!] is being suppressed to avoid flooding.",
602+
"Internal log [Hello bar on line_number 2!] is being suppressed to avoid flooding.",
603+
"Internal log [Hello foo on line_number 1!] has been suppressed 9 times.",
602604
"Hello foo on line_number 1!",
603-
"Internal log [Hello foo on line_number 2!] has been rate limited 9 times.",
605+
"Internal log [Hello foo on line_number 2!] has been suppressed 9 times.",
604606
"Hello foo on line_number 2!",
605-
"Internal log [Hello bar on line_number 1!] has been rate limited 9 times.",
607+
"Internal log [Hello bar on line_number 1!] has been suppressed 9 times.",
606608
"Hello bar on line_number 1!",
607-
"Internal log [Hello bar on line_number 2!] has been rate limited 9 times.",
609+
"Internal log [Hello bar on line_number 2!] has been suppressed 9 times.",
608610
"Hello bar on line_number 2!",
609-
"Internal log [Hello foo on line_number 1!] is being rate limited.",
610-
"Internal log [Hello foo on line_number 2!] is being rate limited.",
611-
"Internal log [Hello bar on line_number 1!] is being rate limited.",
612-
"Internal log [Hello bar on line_number 2!] is being rate limited.",
613-
"Internal log [Hello foo on line_number 1!] has been rate limited 9 times.",
611+
"Internal log [Hello foo on line_number 1!] is being suppressed to avoid flooding.",
612+
"Internal log [Hello foo on line_number 2!] is being suppressed to avoid flooding.",
613+
"Internal log [Hello bar on line_number 1!] is being suppressed to avoid flooding.",
614+
"Internal log [Hello bar on line_number 2!] is being suppressed to avoid flooding.",
615+
"Internal log [Hello foo on line_number 1!] has been suppressed 9 times.",
614616
"Hello foo on line_number 1!",
615-
"Internal log [Hello foo on line_number 2!] has been rate limited 9 times.",
617+
"Internal log [Hello foo on line_number 2!] has been suppressed 9 times.",
616618
"Hello foo on line_number 2!",
617-
"Internal log [Hello bar on line_number 1!] has been rate limited 9 times.",
619+
"Internal log [Hello bar on line_number 1!] has been suppressed 9 times.",
618620
"Hello bar on line_number 1!",
619-
"Internal log [Hello bar on line_number 2!] has been rate limited 9 times.",
621+
"Internal log [Hello bar on line_number 2!] has been suppressed 9 times.",
620622
"Hello bar on line_number 2!",
621623
]
622624
.into_iter()
@@ -658,29 +660,29 @@ mod test {
658660
"Hello foo on line_number 2!",
659661
"Hello bar on line_number 1!",
660662
"Hello bar on line_number 2!",
661-
"Internal log [Hello foo on line_number 1!] is being rate limited.",
662-
"Internal log [Hello foo on line_number 2!] is being rate limited.",
663-
"Internal log [Hello bar on line_number 1!] is being rate limited.",
664-
"Internal log [Hello bar on line_number 2!] is being rate limited.",
665-
"Internal log [Hello foo on line_number 1!] has been rate limited 9 times.",
663+
"Internal log [Hello foo on line_number 1!] is being suppressed to avoid flooding.",
664+
"Internal log [Hello foo on line_number 2!] is being suppressed to avoid flooding.",
665+
"Internal log [Hello bar on line_number 1!] is being suppressed to avoid flooding.",
666+
"Internal log [Hello bar on line_number 2!] is being suppressed to avoid flooding.",
667+
"Internal log [Hello foo on line_number 1!] has been suppressed 9 times.",
666668
"Hello foo on line_number 1!",
667-
"Internal log [Hello foo on line_number 2!] has been rate limited 9 times.",
669+
"Internal log [Hello foo on line_number 2!] has been suppressed 9 times.",
668670
"Hello foo on line_number 2!",
669-
"Internal log [Hello bar on line_number 1!] has been rate limited 9 times.",
671+
"Internal log [Hello bar on line_number 1!] has been suppressed 9 times.",
670672
"Hello bar on line_number 1!",
671-
"Internal log [Hello bar on line_number 2!] has been rate limited 9 times.",
673+
"Internal log [Hello bar on line_number 2!] has been suppressed 9 times.",
672674
"Hello bar on line_number 2!",
673-
"Internal log [Hello foo on line_number 1!] is being rate limited.",
674-
"Internal log [Hello foo on line_number 2!] is being rate limited.",
675-
"Internal log [Hello bar on line_number 1!] is being rate limited.",
676-
"Internal log [Hello bar on line_number 2!] is being rate limited.",
677-
"Internal log [Hello foo on line_number 1!] has been rate limited 9 times.",
675+
"Internal log [Hello foo on line_number 1!] is being suppressed to avoid flooding.",
676+
"Internal log [Hello foo on line_number 2!] is being suppressed to avoid flooding.",
677+
"Internal log [Hello bar on line_number 1!] is being suppressed to avoid flooding.",
678+
"Internal log [Hello bar on line_number 2!] is being suppressed to avoid flooding.",
679+
"Internal log [Hello foo on line_number 1!] has been suppressed 9 times.",
678680
"Hello foo on line_number 1!",
679-
"Internal log [Hello foo on line_number 2!] has been rate limited 9 times.",
681+
"Internal log [Hello foo on line_number 2!] has been suppressed 9 times.",
680682
"Hello foo on line_number 2!",
681-
"Internal log [Hello bar on line_number 1!] has been rate limited 9 times.",
683+
"Internal log [Hello bar on line_number 1!] has been suppressed 9 times.",
682684
"Hello bar on line_number 1!",
683-
"Internal log [Hello bar on line_number 2!] has been rate limited 9 times.",
685+
"Internal log [Hello bar on line_number 2!] has been suppressed 9 times.",
684686
"Hello bar on line_number 2!",
685687
]
686688
.into_iter()

0 commit comments

Comments
 (0)