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

Ensure minutely probes do not drift #814

Closed
1 of 2 tasks
tombruijn opened this issue Jan 27, 2022 · 1 comment · Fixed by #1088
Closed
1 of 2 tasks

Ensure minutely probes do not drift #814

tombruijn opened this issue Jan 27, 2022 · 1 comment · Fixed by #1088
Assignees

Comments

@tombruijn
Copy link
Member

tombruijn commented Jan 27, 2022

As agreed upon in https://github.com/appsignal/integration-guide/pull/124, make sure that the minutely probes don't drift, so they don't actually calculate metrics over 1 minute and 5 seconds, for example.

TODO

  • Research if the probes system can drift
    • Account for probe drift better, it now only schedules after the probe has done sending all the metrics.
  • Fix drift if needed
@tombruijn
Copy link
Member Author

The minutely probes thread doesn't drift, as long as all probes are done within a minute. We use the wait_time method to calculate the next 0 second in a minute and run the next iteration over the probes then. This follows the minutely probes integrations guide spec.

Individual probes can drift. They're all run in sequence, if probe 1 is slow, probe 2 runs later. That's fine if probe 1 is always slow, but if it's only intermeditatly slow, probes that run after it could drift a bit back and forth. I don't think we can cover this case unless we run each probe in its own thread.

I'm okay with how it works now.

Things we can do to improve this is to:

  • Track if the total of all probes take more than a minute and log an error to the AppSignal log.
  • Track how long individual probes take and log a warning if it takes longer than some arbitrary number, like 5 seconds

tombruijn added a commit that referenced this issue May 24, 2024
Log an error when the total probes iteration takes more than a minute.
It's the 'minutely' probes process, and doesn't report accurate minutely
metrics if each iteration takes more than a minute.

Closes #814
@tombruijn tombruijn self-assigned this May 24, 2024
tombruijn added a commit that referenced this issue May 24, 2024
Log an error when the total probes iteration takes more than a minute.
It's the 'minutely' probes process, and doesn't report accurate minutely
metrics if each iteration takes more than a minute.

Closes #814
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant