Troubleshoot Serverless Workers
When a Serverless Worker is not running your Tasks, the failure is almost always in one of three places: the Worker Controller Instance (WCI) is not starting compute, the compute provider is rejecting the request, or the Worker starts but cannot do its job.
Every provider follows the same overall shape:
- You deploy the Worker to the compute provider.
- You create a Worker Deployment Version with a compute configuration. This starts a WCI Workflow.
- A Worker polls the Temporal Service, which binds its Task Queue to the Worker Deployment Version.
- The WCI monitors that Task Queue. The Matching Service also signals the WCI when a Task arrives with no Worker free to take it.
- Work arrives, the WCI starts compute, and the Worker processes Tasks.
How the WCI starts compute is where providers differ, and so is most of the diagnosis. On AWS Lambda the WCI invokes a function per unit of work. On GCP Cloud Run it resizes a long-lived Worker Pool. Pick your provider:
- AWS Lambda - Diagnose functions that are never invoked, invocation loops, and timeouts that cut Workers short.
- GCP Cloud Run - Diagnose Worker Pools that never scale up, impersonation and IAM failures, and instances stopped mid-Activity.