Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Metrics and stream processor improvements #769

Merged
merged 16 commits into from
Jun 13, 2024
Merged

Conversation

mhelleborg
Copy link
Member

Summary

This release adds OpenTelemetry metrics to the runtime. It also changes the behavior of stream processors to be able to provide consumer lag metrics for all event handlers.

Stream processors

Previously if the event handler did not consume an event, it would also not update its current offset in the event log at all. Only processed events would cause an update. This release changes that, so all events are taken into consideration when storing how far each handler is in the stream. This allows the runtime to also provide consumer lag metrics that reflects this offset against the latest committed event.

OpenTelemetry

OpenTelemetry metrics will be enabled by default if there is defined an OpenTelemetry endpoint to publish to.
It can be disabled with Dolittle__Runtime__OpenTelemetry__Tracing=false

Added

  • OpenTelemetry metrics support
  • New metrics:
    • dolittle_customer_runtime_stream_processor_consumer_lag
    • dolittle_customer_runtime_stream_processors_offset
    • dolittle_customer_runtime_stream_processors_processed_total

Changed

  • Stream processor state behavior - now considers unhandled events as well as processed events.

@mhelleborg mhelleborg merged commit dd04a09 into master Jun 13, 2024
6 checks passed
@mhelleborg mhelleborg deleted the eventhandler-lag branch June 13, 2024 07:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant