I’ve been reading a bit the tracing crate documentation, trying to find out if there’s a way to rate limit logs.

What I refer with rate limiting, is that once a particular log has shown up with some frequency (x amount of times in a given time) then it won’t be captured or shown anymore, until certain amount of time… This to avoid getting the logs space/buffer being eaten by just one, or a few high frequency errors for example.

Thanks !

  • kixik@lemmy.ml
    cake
    OP
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    Yeap, I was thinking if perhaps any subscriber would support it, but didn’t find any which documents it. Perhaps you’re right and subscriber wrapper is needed.

    • TehPers@beehaw.org
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      One thing to keep in mind is that tracing works on spans/events, so rather than the subscriber receiving a string log message, it’s receiving some metadata and a collection of field/value pairs, where values can be a lot of different types. You may need to determine ahead of time which fields you want deduped (or which you don’t want deduped).