promregator
promregator copied to clipboard
Idea: Support Endpoint
Summary / Problem Statement
Provide a new endpoint, let's say /support. It must be protected by some sort of password.
Once triggered, the response shall be a JSON document, which contains all kind of interesting values/attributes, which could help tracking down issues.
For instance:
- Various metric values from the InternalMetrics.
- The number of CFCC call made
- The latency the different CFCCs generate
- The cache hit rate (if running on Caffeine)
- The last 10 log statements of level "WARN" or higher
- The number of apps defined in config
- The number of targets defined in config
- The number of resolvedTargets determined
- The timestamp when it was created
- The version of Promregator
- The heap memory currently occupied
- ...
Could also be implemented with an indirection: We could register several "support context providers" (defined via an interface), which can be registered during runtime.
The format shall be kept private and dynamic.
Keep it lean, though: We don't want to write an ITSAM framework here...