Releases: Financial-Times/n-health
Fix for FastlyKeyExpirationCheck default properties
What's Changed
- FTDCS-196 - Fix health check FastlyKeyExpirationCheck by @JSRedondo in #192
Full Changelog: v6.1.0...v6.1.1
Add Fastly key expiration check
At the moment our Fastly keys are unmanageable - they’re stored in individual user accounts in Fastly and we cannot enforce things like key expiry or rotation.
We should add a check type to n-health which verifies Fastly keys using https://api.fastly.com/tokens/self:
- alert if the key expires in the next week or two
- alert if the key has a null expiry date
What's Changed
- FTDCS-152 - Fix CircleCI configuration file by @JSRedondo in #185
- FTDCS-152 - Update moment package to solve a vulnerability by @JSRedondo in #184
- CPP-890 update config for nightly scheduled-pipelines by @serena97 in #186
- FTDCS-196 - Update testing by @JSRedondo in #187
- FTDCS-196 - Fastly key expiration check merge by @JSRedondo in #189
- FTDCS-196 - Improve Fastly key expiration check by @JSRedondo in #190
- FTDCS-196 - Added default panic guide for Fastly key expiration check by @JSRedondo in #191
New Contributors
- @JSRedondo made their first contribution in #185
Full Changelog: v6.0.0...v6.1.0
Migrate to Node 14 + 16
What's Changed
- Add npm-publish-token CircleCI context by @serena97 in #175
- Add support for Node 14 and Node 16 by @ivomurrell in #174
Breaking Changes
- Dropped support for Node 12
Full Changelog: v5.0.6...v6.0.0
Add log to failed graphiteSpike check
Add handling to summarize, asPercent, and divideSeries
Update n-gage, add package-lock, log null data
This is a large patch release but it doesn't include any new functionality and is backwards compatible for consumers so it doesn't deserve a major or minor version bump.
- Update n-gage from v1 to v8
- Remove the package-lock from gitignore
- Log if consumers receive null data from Graphite
Fix Cannot read property ‘datapoints’ of undefined
Merge pull request #150 from Financial-Times/fix-datapoints-undefined Fix Cannot read property ‘datapoints’ of undefined
Handle zero sample and baseline values
Merge pull request #149 from Financial-Times/noZeroBaseline Added check for 0 baseline as it's used as a divisor
NOPS-817- Handle Sample and Baseline null values
deprecate Pingdom healthcheck
the current standard way of monitoring Pingdom checks is to tag them in Pingdom with your system code. having a separate way of monitoring Pingdom for FT.com apps is redundant, more to maintain, and brittle (because it requires every app to have a Pingdom API key in its environment, which isn't visible if the key is rotated, as happened in a recent incident).
this change removes the code that's actually checking Pingdom, and makes the Pingdom healthcheck class always fail, so that apps that inadvertently update to this version without migrating the check don't crash on startup, but instead get an alert that they can easily action.
this check will be fully removed in the next major version of n-health
, which will be released when enough apps have updated to this version and migrated their checks.
migration
when updating to this release, if you're using any Pingdom healthchecks, they'll start to unconditionally fail. you'll need to:
- remove these checks from your healthcheck configuration
- update the checks themselves in Pingdom to tag them with your system code (see step 8 in the "How To Pingdom Check" guide)
note that if you're using healthchecks to monitor other teams' systems, you'll inherit the severity they've set for their own Pingdom checks. we recommend duplicating this check for your own visibility, so you can set the severity and tagging for yourself, or writing a custom healthcheck to make calls similar to those your app is making.