Worker: Failed to poll for task

Hi,

I’m executing a worker on my laptop and connecting to Temporal Cloud. After a while of inactivity (i.e. no running workflows), I notice these types of warning messages pop-up. Once there is work to do (i.e. there’s a new running workflow), then the worker seems fine and pick ups work appropriately.

2:52PM WRN Failed to poll for task. Error={"Message":"keepalive ping failed to receive ACK within timeout"} Namespace=namespace.infil TaskQueue=governor-service WorkerID=14528@mbp-3.lan@ WorkerType=ActivityWorker
2:52PM WRN Failed to poll for task. Error={"Message":"keepalive ping failed to receive ACK within timeout"} Namespace=namespace.infil TaskQueue=governor-service WorkerID=14528@mbp-3.lan@ WorkerType=WorkflowWorker
3:08PM WRN Failed to poll for task. Error={"Message":"error reading from server: read tcp <IP:PORT>-\u003e<IP:PORT>: read: operation timed out"} Namespace=namespace.infil TaskQueue=governor-service WorkerID=14528@mbp-3.lan@ WorkerType=WorkflowWorker
3:08PM WRN Failed to poll for task. Error={"Message":"error reading from server: read tcp <IP:PORT>-\u003e<IP:PORT>: read: operation timed out"} Namespace=namespace.infil TaskQueue=governor-service WorkerID=14528@mbp-3.lan@ WorkerType=ActivityWorker
3:08PM WRN Failed to poll for task. Error={"Message":"last connection error: connection error: desc = \"transport: Error while dialing dial tcp <IP:PORT>: connect: network is unreachable\""} Namespace=namespace.infil TaskQueue=governor-service WorkerID=14528@mbp-3.lan@ WorkerType=ActivityWorker
3:08PM WRN Failed to poll for task. Error={"Message":"last connection error: connection error: desc = \"transport: Error while dialing dial tcp <IP:PORT>: connect: network is unreachable\""} Namespace=namespace.infil TaskQueue=governor-service WorkerID=14528@mbp-3.lan@ WorkerType=WorkflowWorker

Should I be concerned? Is it possible to change the worker code to avoid having warning messages pop up?

Thanks!

Albert

It is fine to see these warnings from workers on long-poll timeouts (70s for Go SDK) when there is no activity (no workflow/activity tasks to poll).
Given the messages in your logs tho, would like to double check on our side just in case so can you please share your namespace name and the time zone for time stamp in shared logs?

Ah, don’t worry about checking for inactivity. I’m 100% sure there was nothing that running because I’m the only one that uses that particular namespace for local testing purposes.

That said, is there an easy way to suppress these logs? Or at least change the log level?

is there an easy way to suppress these logs? Or at least change the log level?

This depends on logger you want to use (default one out of the box is not customizable for Go SDK).
Take a look at https://github.com/temporalio/samples-go/tree/main/zapadapter think it will help