# Temporal Client/Worker health-check

**URL:** <https://community.temporal.io/t/temporal-client-worker-health-check/205>\
**Category:** Community Support\
**Tags:** java-sdk\
**Created:** [July 17, 2020, 3:31am UTC](https://community.temporal.io/t/temporal-client-worker-health-check/205 "2020-07-17T03:31:48Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![ganta](https://sea2.discourse-cdn.com/flex016/user_avatar/community.temporal.io/ganta/32/18_2.png) [@ganta](https://community.temporal.io/u/ganta)\
**Post date:** [July 17, 2020, 3:31am UTC](https://community.temporal.io/t/temporal-client-worker-health-check/205/1 "2020-07-17T03:31:48Z")

</div>

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

---

<div class="post-metadata">

**Author:** ![maxim](https://sea2.discourse-cdn.com/flex016/user_avatar/community.temporal.io/maxim/32/8_2.png) [@maxim](https://community.temporal.io/u/maxim)\
**Post date:** [July 17, 2020, 3:37am UTC](https://community.temporal.io/t/temporal-client-worker-health-check/205/2 "2020-07-17T03:37:43Z")

</div>

Not yet. Here is the [issue](https://github.com/temporalio/java-sdk/issues/102) to get this added.

You already can the list of the connected workers from the service using [DescribeTaskQueue](https://github.com/temporalio/api/blob/654ab3d048dfff04d9c3f93ccd5c99caa478a67d/temporal/api/workflowservice/v1/service.proto#L266) 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
```

---

<div class="post-metadata">

**Author:** ![ganta](https://sea2.discourse-cdn.com/flex016/user_avatar/community.temporal.io/ganta/32/18_2.png) [@ganta](https://community.temporal.io/u/ganta)\
**Post date:** [July 17, 2020, 4:20am UTC](https://community.temporal.io/t/temporal-client-worker-health-check/205/3 "2020-07-17T04:20:11Z")

</div>

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

---

<div class="post-metadata">

**Author:** ![ryland](https://sea2.discourse-cdn.com/flex016/user_avatar/community.temporal.io/ryland/32/11_2.png) [@ryland](https://community.temporal.io/u/ryland)\
**Post date:** [July 17, 2020, 4:49am UTC](https://community.temporal.io/t/temporal-client-worker-health-check/205/5 "2020-07-17T04:49:25Z")

</div>



---

<div class="post-metadata">

**Author:** ![maxim](https://sea2.discourse-cdn.com/flex016/user_avatar/community.temporal.io/maxim/32/8_2.png) [@maxim](https://community.temporal.io/u/maxim)\
**Post date:** [July 17, 2020, 7:17am UTC](https://community.temporal.io/t/temporal-client-worker-health-check/205/6 "2020-07-17T07:17:43Z")

</div>

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.

---

<div class="post-metadata">

**Author:** ![Sandeep\_Paul](https://sea2.discourse-cdn.com/flex016/user_avatar/community.temporal.io/sandeep_paul/32/145_2.png) [@Sandeep\_Paul](https://community.temporal.io/u/Sandeep_Paul)\
**Post date:** [September 14, 2020, 5:32am UTC](https://community.temporal.io/t/temporal-client-worker-health-check/205/7 "2020-09-14T05:32:16Z")

</div>

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.

 ![image](https://us1.discourse-cdn.com/flex016/uploads/temporal/original/1X/304ba66e030ce108288348e1d8014fe9240a631f.png)

Is there anyother way to setup a healthcheck for temporal ?

---

<div class="post-metadata">

**Author:** ![maxim](https://sea2.discourse-cdn.com/flex016/user_avatar/community.temporal.io/maxim/32/8_2.png) [@maxim](https://community.temporal.io/u/maxim)\
**Post date:** [September 14, 2020, 3:48pm UTC](https://community.temporal.io/t/temporal-client-worker-health-check/205/8 "2020-09-14T15:48:07Z")

</div>

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.

---

<div class="post-metadata">

**Author:** ![frangarcia](https://sea2.discourse-cdn.com/flex016/user_avatar/community.temporal.io/frangarcia/32/662_2.png) [@frangarcia](https://community.temporal.io/u/frangarcia)\
**Post date:** [January 21, 2021, 12:17pm UTC](https://community.temporal.io/t/temporal-client-worker-health-check/205/9 "2021-01-21T12:17:21Z")

</div>

Is there any way of doing using the java libraries?

---

<div class="post-metadata">

**Author:** ![andrei](https://sea2.discourse-cdn.com/flex016/user_avatar/community.temporal.io/andrei/32/329_2.png) [@andrei](https://community.temporal.io/u/andrei)\
**Post date:** [January 21, 2021, 1:50pm UTC](https://community.temporal.io/t/temporal-client-worker-health-check/205/10 "2021-01-21T13:50:44Z")

</div>

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.

```auto
workflowClient
    .getWorkflowServiceStubs()
    .blockingStub()
    .getClusterInfo(GetClusterInfoRequest.newBuilder().build());

```
