How can we manage external task client service stops working

Hi there,

I’m considering if we can manage/handle errors if there is no external client subcribe topic.

My context:

  • I’m using Camunda as an independent service.
  • I’m developing several independent services of each other and each service provides some TashHandlers which are external tasks subscription.

How can we manage if an external service is unavailable?

Thanks & best regards!

Hi @shinnguyen0105,

you can add an event subprocess starting with a timer when the process instance gets overdue. In the event subprocess you can do some activities t remind somebody or take care about the environment. Event Subprocess | docs.camunda.org

Another option is to handle the timeout in the external task worker and send a fail command back to the process engine. Then you get an incident, and you can use the incident handler to inform some people about this. Incidents | docs.camunda.org and GitHub - camunda-community-hub/email-incident-notification-plugin

Hope this helps, Ingo

2 Likes

Thank you very much!

I haven’t tried your solution yet but at least I know the direction to go for my use case.

Cheers.

But don’t you then try to solve a problem (worker stopped working) with the thing that caused the problem? I mean, in order to send a failure, you need a worker. But if the whole client (with all its workers) is down…

My setup has 1 service that allows users to interact with UI where users can trigger start a process. If that service is unavailable then I will know. About other services, I think there is a possibility to interact with them via actuator info or some endpoint to present the application available (I’m using spring-boot-starter-external-task-client) by HTTP connector.

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.