uptime-kuma
uptime-kuma copied to clipboard
feat: Datadog type monitor
⚠️⚠️⚠️ Since we do not accept all types of pull requests and do not want to waste your time. Please be sure that you have read pull request rules: https://github.com/louislam/uptime-kuma/blob/master/CONTRIBUTING.md#can-i-create-a-pull-request-for-uptime-kuma
Tick the checkbox if you understand [x]:
- [x] I have read and understand the pull request rules.
Description
Hello @louislam !
Some context: We use DataDog to monitor our stack/services, and it does not offer status page product, we take a look at the open sources projects that could fit. We found uptime-kuma 💘 the one we like the most and could fit better.
We even work already into a POC, but we need to work around with a way to get DataDog monitor states into uptime-kuma, creating push monitors and an extra service that should be the one that gather datadog and make the request to the push monitor endpoint.
Instead of having this kind of workaround, I thought that could be fun and worth to contribute to the project! (Alert! : I'm not a developer, so please bear with me and my small code changes).
With this feature, anyone that is using DataDog will be able to relay on uptime-kuma out of the box to create first class status pages 😎 .
New DataDog type monitor
This feature will allow to sync DataDog monitor state with uptime-kuma monitor.
As this is just initial base code changes, there are some things still need to be added:
- [ ] Tests
- [ ] Translation in place
- [ ] BUG: The creation works, but I missed something cause updating the monitor fields that I added is not working (Again bear with me 😞 )
- [ ] Documentation about this new monitor type
- [ ] Go through the checklist properly
- [ ] datadog-api-cli dependency or use just http to keep uptime-kuma dependencies lean and clean.
Type of change
- New feature (non-breaking change which adds functionality)
- This change requires a documentation update
Checklist
- [ ] My code follows the style guidelines of this project
- [ ] I ran ESLint and other linters for modified files
- [ ] I have performed a self-review of my own code and tested it
- [ ] I have commented my code, particularly in hard-to-understand areas (including JSDoc for methods)
- [ ] My changes generates no new warnings
- [ ] My code needed automated testing. I have added them (this is optional task)