assimbly / runtime

Java & REST API's for creating and running integrations
Apache License 2.0
18 stars 3 forks source link

Investigate if connection errors can be shown to users or alerts #313

Open Hooghof opened 2 weeks ago

Hooghof commented 2 weeks ago

As a user, I would like to see failed exchanges in FM when there are errors when not being able to retrieve files via the Inbound Google Drive component, so that I am aware that there are errors that need to be fixed.

Image

skin27 commented 2 weeks ago

This counts for:

InboundGoogleDrive FTP InboundEmail Samba etc

Best to this based on the logging in Elastic.

skin27 commented 28 minutes ago

@Hooghof

I investigated this issue. There are a couple of factors to take into account:

  1. Depth of information

A lot of health check only give information if something is UP / DOWN

Thus connection is UP or DOWN

If you want to know why something is down, then that's it's another thing. Also note that "connection" is strangely enough not a concept in the Camel framework. You can however get information:

a. Exchange/Steps (are message failed) b. Are services failed c. General failure on CamelContext (instance level)

There is no RouteFailed or ConnectionFailed info.

  1. Type of information

Healthchecks are mostly divided into "Liveness" and "Readiness". First just says if something running, other if it's ready to take up traffic. I think we are mostly interested in second, because first we will already see on startup.

  1. Push or pull

There are two ways to get notified about something is wrong:

  1. Pull: This means you actively ask the status of a component. For example by calling an API endpoint.
  2. Push: This means an "alert" message is send when something going wrong.

Camel doesn't have a lot of push mechanism. It does provide pull mechanism. It let other tools to really create the alerts.