agent.health.error if the bot is unhealthy, details for that metric convey the errors
Open to discuss:
This is the naive approach to emit healthcheck metrics, another option would be to mimic Tx/Block/Combination processors where we have request/response channels, healthcheck analyzer module and metric extraction logic. Second option is not hard to implement either, just introduces more code and decided to make a judgement call to go with the naive approach.
HealthCheck
every 30 secondsagent.health.attempt
for any healthcheck callagent.health.success
if the bot is healthyagent.health.error
if the bot is unhealthy, details for that metric convey the errorsOpen to discuss: This is the naive approach to emit healthcheck metrics, another option would be to mimic Tx/Block/Combination processors where we have request/response channels, healthcheck analyzer module and metric extraction logic. Second option is not hard to implement either, just introduces more code and decided to make a judgement call to go with the naive approach.