You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Most entries in Consul catalog have two fields CreateIndex and ModifyIndex.
It would be very useful for services outside Consul gathering information about services to be able to know when those Index have been created. While they can access the index, it is not possible to find at what time the index was modified.
A few use cases:
a service has been added and some checks take time to start being passing => the load balancer would like to know since when the Checks are passing, and gradually add traffic to it to let the service warming up
being able to know when maintenance mode has been enabled
being able to know when a node has been registered
being able to know when a given service has been started (very useful in a PaaS)
Being able to show a service despite its status being critical during a determined period (for instance, we had recently a case of network saturation where node was marked as down since SerfHealth was flapping up/down since some other nodes could not reach it while opened connection still did work well)
While some of those use cases might be achieved using Node.MetaData or Service.Tags (or even better, using #3881 ), it is not always possible to do so, especially for the healthchecks.
Since healthchecks are driven by Consul itself, it is not possible to add this kind of metadata (in facts, it is possible for some using conventions, for instance by adding Timestamp in output of a HTTP HealthCheck, but not for all kind of HealtChecks anyway).
What do you think about adding a Timestamp (a uint64 for instance) to those Entries, or at least to healthchecks (and in that case, I would argue for a ModifyStateTime in order to know when the state of a HealthCheck did change the last time).
The PR is not that difficult to implement and would greatly simplify life with discovery, I'll be please to implement this if you might consider integrating it.
Regards
The text was updated successfully, but these errors were encountered:
Most entries in Consul catalog have two fields CreateIndex and ModifyIndex.
It would be very useful for services outside Consul gathering information about services to be able to know when those Index have been created. While they can access the index, it is not possible to find at what time the index was modified.
A few use cases:
While some of those use cases might be achieved using Node.MetaData or Service.Tags (or even better, using #3881 ), it is not always possible to do so, especially for the healthchecks.
Since healthchecks are driven by Consul itself, it is not possible to add this kind of metadata (in facts, it is possible for some using conventions, for instance by adding Timestamp in output of a HTTP HealthCheck, but not for all kind of HealtChecks anyway).
What do you think about adding a Timestamp (a uint64 for instance) to those Entries, or at least to healthchecks (and in that case, I would argue for a ModifyStateTime in order to know when the state of a HealthCheck did change the last time).
The PR is not that difficult to implement and would greatly simplify life with discovery, I'll be please to implement this if you might consider integrating it.
Regards
The text was updated successfully, but these errors were encountered: