Skip to content

Conversation

suikammd
Copy link
Contributor

@suikammd suikammd commented Aug 1, 2025

Summary

This PR add vector_config_reload_rejected{reason="global_options"} metric and internal event to observe rejected config reloads caused by GlobalOptions changes.

@suikammd suikammd requested a review from a team as a code owner August 1, 2025 12:42
@github-actions github-actions bot added domain: topology Anything related to Vector's topology code domain: core Anything related to core crates i.e. vector-core, core-common, etc labels Aug 1, 2025
@suikammd
Copy link
Contributor Author

suikammd commented Aug 1, 2025

#1815
Also, would you be open to adding a force_reload flag that allows hot reloads even if GlobalOptions have changed?

I understand this is currently blocked for safety, but in some cases we’d prefer to reload anyway. If you're open to it, I’d be happy to submit a PR. Of course, it would be opt-in and disabled by default.

Let me know — thanks!

@suikammd suikammd changed the title Log changed global config fields when reload is aborted feat(config): log changed global fields when reload is rejected Aug 1, 2025
Copy link
Member

@pront pront left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @suikammd, this is a nice UX improvement.

@pront
Copy link
Member

pront commented Aug 5, 2025

There are quite a few checks failing. Let me know if you need help addressing them.

@pront pront enabled auto-merge August 7, 2025 14:04
auto-merge was automatically disabled August 11, 2025 12:04

Head branch was pushed to by a user without write access

@pront pront enabled auto-merge August 11, 2025 14:10
auto-merge was automatically disabled August 13, 2025 15:55

Head branch was pushed to by a user without write access

@suikammd suikammd force-pushed the global branch 4 times, most recently from b786b29 to 71d5017 Compare August 13, 2025 16:07
@suikammd suikammd changed the title feat(config): log changed global fields when reload is rejected feat(config): emit log changed global fields and metric vector_config_reload_rejected when reload is rejected Aug 13, 2025
Copy link
Member

@pront pront left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmm I think it would be best to keep the original PR and introduce the metric in a follow up.

Also, while looking at the ReloadRejectReason::GlobalOptionsChanged gauge, I realized that we can probably do something more generic here. Something like emitting reload signals for various reasons e.g. event="config reloaded", event="failed to reload", reason="global options changed".

@pront
Copy link
Member

pront commented Aug 27, 2025

Hi @suikammd, there are a few failing checks.

Hmm I think it would be best to keep the original PR and introduce the metric in a follow up.

Let's go with this approach so we can end up with a better result.

@suikammd
Copy link
Contributor Author

Hi @pront , thanks for the suggestion!
I’ve split the work into two PRs as you suggested. Once the new PR(#23662 ) is merged, I’ll rebase this one accordingly.

@thomasqueirozb
Copy link
Contributor

#23662 merged!

We will take a look at this PR again once merge conflicts are fixed :)

@thomasqueirozb thomasqueirozb added the meta: awaiting author Pull requests that are awaiting their author. label Aug 29, 2025
@github-actions github-actions bot added meta: awaiting author Pull requests that are awaiting their author. and removed meta: awaiting author Pull requests that are awaiting their author. domain: core Anything related to core crates i.e. vector-core, core-common, etc labels Aug 30, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
domain: topology Anything related to Vector's topology code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants