statsd_exporter/pkg
Pedro Tanaka 46cb41614e
feat(event): Add MultiValueEvent interface and MultiObserverEvent implementation
This PR introduces the first step in refactoring the event handling system to better
support multiple values in a single event, which will help reduce allocations when
processing events. This is part of a larger effort to improve performance and reduce
memory allocations in the statsd exporter.

Changes:
- Add new `MultiValueEvent` interface that supports multiple values per event
- Add `MultiObserverEvent` implementation for handling multiple observations
- Add `ExplodableEvent` interface for backward compatibility
- Add `Values()` method to existing event types
- Add comprehensive tests for new interfaces and implementations

This change is the foundation for future improvements that will:
1. Move explosion logic to a dedicated package
2. Update the line parser to use multi-value events
3. Modify the exporter to handle multi-value events directly
4. Eventually remove the need for event explosion

The changes in this PR are backward compatible and don't affect existing functionality.

Relates to #577

Signed-off-by: Pedro Tanaka <pedro.tanaka@shopify.com>
2024-12-17 18:19:19 +01:00
..
address Change casing of error messages 2020-09-06 16:33:18 +05:30
clock hopefully now linux 2020-04-08 15:29:54 -04:00
event feat(event): Add MultiValueEvent interface and MultiObserverEvent implementation 2024-12-17 18:19:19 +01:00
exporter Update exporter-toolkit 2024-10-11 09:35:20 +02:00
line Update exporter-toolkit 2024-10-11 09:35:20 +02:00
listener Update exporter-toolkit 2024-10-11 09:35:20 +02:00
mapper Update exporter-toolkit 2024-10-11 09:35:20 +02:00
mappercache Use groupcache for LRU cache 2021-04-28 12:15:19 -04:00
metrics Added license. 2020-04-08 15:30:01 -04:00
registry Allow creation of native histograms 2022-12-06 09:49:24 +01:00
relay Update exporter-toolkit 2024-10-11 09:35:20 +02:00
README.md Add deprecation note to pkg directory 2021-10-13 14:40:09 +02:00

The pkg directory is deprecated. Please do not add new packages to this directory. Existing packages will be moved elsewhere eventually.