Skip to content

Preparing for new ARGO Monitoring API

Latest

Choose a tag to compare

@john-shepherdson john-shepherdson released this 04 Aug 16:41
· 2 commits to main since this release

Favour ARGO public dashboards to old API.

Refactoring to make introduction of new ARGO API more straightforward.

Switch by replacing just the source implementation in CheckServiceUptime.java; the UI and JSON contract stay unchanged.

  1. Add a new UptimeReportSource implementation (e.g. NewArgoApiSource) that calls the new API and returns UptimeReportData in the same shape (project, endpoints, uptime_percentage, average_availability, average_reliability, days_monitored).
  2. In resolveReportData(...), put new NewArgoApiSource() first in the sources list.
  3. Keep DashboardSource and/or LegacyApiSource temporarily as fallback until you trust the new API.
  4. Once stable, remove fallback sources if you want strict API-only behaviour.

What's Changed

  • Simplify error handling paths and check instantiation, use loggers consistently, pass dependencies into the checks by @matthew-morris-cessda in #4
  • Encapsulate job running into JobRunner, use the built-in Spring Excecutor by @matthew-morris-cessda in #5

New Contributors

Full Changelog: 1.2.1...1.2.2