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

Checks against projected future values #21

Open
wants to merge 6 commits into
base: master
Choose a base branch
from

Conversation

bittrance
Copy link

Support alerting against a linear projection into the future of the time series retrieved from Graphite. E.g. --projection 30min means that a future value will be calculated using linear regression and that value will be offered to nagios_check for evaluation against warning/critical thresholds. The check also presents the p-value of that projection so that ops people has a chance of judging whether the alarm is the result of noisy data.

Using a simple projection is superior to looking at current value in some use cases (for example disk usage) where the rate of change is relatively stable, because it saves us from having to estimate the rate of change. Instead we can just say e.g.: "Give me 6 hours advance notice on the disk filling up" and it will do this even if the rate of change varies. By comparison, the traditional value requires giving thresholds with safety margins that is estimated from the rate of change.

This PR also adds a spread of versions to the Travis build to make sure that no breakage is introduced.

This PR introduces the simple linear-regression gem to perform the linear regression calculation. The gem contributes a mere 16 kb and has no runtime dependencies.

This is PR 1 of 2. See https://github.com/burtcorp/check-graphite/pull/3/files for upcoming PR.

Bittrance and others added 6 commits January 26, 2017 08:37
…n 1.9.3 and 2.4.0, silence rspec should syntax warnings
Travis builds with old, new Ruby versions on trusty
- support float timeframes e.g. --projection 1.5days
- style improvements as suggested by iconara on PR #1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant