Make sure that the process can be started in the errored state#94
Open
mrcnkoba wants to merge 2 commits into
Open
Make sure that the process can be started in the errored state#94mrcnkoba wants to merge 2 commits into
mrcnkoba wants to merge 2 commits into
Conversation
e615e0b to
9bcf689
Compare
… resolved If the StatsD collector is not up for some reason and the application can't resolve the name by calling `:inet.gethostbyname(host)` then it prevents the entire application from starting. This commit makes sure that the TelemetryMetricsStatsD can be started in the errored state and depending on the `host_resolution_interval` it can be recovered or not. If `host_resolution_interval` isn't passed, then TelemetryMetricsStatsD will not try to resolve the host again. However, when it is passed, it can try to recover it in `host_resolution_interval` milliseconds.
9bcf689 to
a7fb8d1
Compare
juanperi
added a commit
to juanperi/telemetry_metrics_statsd
that referenced
this pull request
May 21, 2024
This PR is much less ambitious than beam-telemetry#94. In this case, we just fix the issue when the process is already started, but an error in the resolution of the hostname leads to an incorrect internal state. Without this patch, the `new_state` will be `:ok`, as that is the return from the logger function. Afterwards, when going to the `terminate` callback, then we try to call `EventHandler.detach(state.handler_ids)`, which translates to `EventHandler.detach(:ok.handler_ids)` and fails
arkgil
pushed a commit
that referenced
this pull request
Jun 2, 2024
This PR is much less ambitious than #94. In this case, we just fix the issue when the process is already started, but an error in the resolution of the hostname leads to an incorrect internal state. Without this patch, the `new_state` will be `:ok`, as that is the return from the logger function. Afterwards, when going to the `terminate` callback, then we try to call `EventHandler.detach(state.handler_ids)`, which translates to `EventHandler.detach(:ok.handler_ids)` and fails
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Make sure that TelemetryMetricsStatsD can be started if host can't be resolved
If the StatsD collector is not up for some reason and the application can't resolve
the name by calling
:inet.gethostbyname(host)then it prevents the entire application from starting.This commit makes sure that the TelemetryMetricsStatsD can be started in the errored state
and depending on the
host_resolution_intervalit can be recovered or not.If
host_resolution_intervalisn't passed, then TelemetryMetricsStatsD will not try to resolve the host again.However, when it is passed, it can try to recover it in
host_resolution_intervalmilliseconds