TwiN / gatus

⛑ Automated developer-oriented status page
https://gatus.io
Apache License 2.0
5.78k stars 396 forks source link

Support service agents #437

Open epoberezkin opened 1 year ago

epoberezkin commented 1 year ago

Describe the feature request

Currently the service itself should be queried by Gatus in order to determine its response time / availability.

There are more complex services that require a standalone "agent" application to determine service availability from "business logic" point of view – e.g., it can be determined as a sequence of service requests rather than just one request, and the service "delay" is the time of transaction and not the time of one request.

The proposal is NOT to complicate the logic of Gatus to allow all possible scenarios, but rather add support for endpoint agents when:

Why do you personally want this feature to be implemented?

We are looking for an open-source solution to present the status of preset servers in https://simplex.chat apps to the end users - this can only be done via agent, as we need to test that the message is actually delivered and show e2e delivery time, rather than just that the server responds to PING or anything else.

How long have you been using this project?

evaluating

Additional information

We can sponsor this feature - not to cover all costs though, but we would sponsor say $100.

epoberezkin commented 1 year ago

alternatively it could be status update API I guess to achieve the same...

TwiN commented 1 year ago

Because of the fact that users could be monitoring pretty much anything, I don't think creating agents for each individual use case would be appropriate. Instead, as you've pointed out, something like #229 would make more sense, as even if we decide to create agents in the future, #229 would still likely be necessary.

TwiN commented 3 months ago

This will become possible once #724 is merged