Temporal Client/Worker health-check

Is there a way to check if temporal client/worker is healthy i.e., able to connect to temporal server. Something like WorkerFactory.isHealthy()

1 Like

Not yet. Here is the issue to get this added.

You already can the list of the connected workers from the service using DescribeTaskQueue service API.

You can execute it through CLI as well:

$ tctl --ns canary taskqueue desc  -tq canary-java
  WORKFLOW POLLER IDENTITY |   LAST ACCESS TIME
  unknown-mac              | 2020-07-17T03:35:51Z
1 Like

Thanks @maxim. Will this be part of initial V1 release.

1 Like

I don’t think so. We are trying to limit V1 release to the backwards incompatible changes. This one can be added at any time later.

3 Likes

hi Maxim,

with respect to helm charts.

I tried the tctl cmd that you have mentioned above to describe the task queue inside worker and history pod. Im getting connection error. however, our application is working fine with temporal and the workflows are running as desired.

Is there anyother way to setup a healthcheck for temporal ?

Temporal supports gRPC health checks. In your case I would pass --address parameter to the tctl command to tell it which DNS address or IP address to connect.

Is there any way of doing using the java libraries?

2 Likes

We are currently using the WorfklowClient to get some cluster information for the health check. This should verify at least that the connection is healthy.

workflowClient
    .getWorkflowServiceStubs()
    .blockingStub()
    .getClusterInfo(GetClusterInfoRequest.newBuilder().build());
4 Likes