I can grpcurl my server but temporal cli and tctl fail

this returns data:

❯ grpcurl -d '{
  "execution": {
    "workflowId": "myWorkflowId"
  },
  "namespace": "default"
}' temporal-server.internal.mydomain.com:443 temporal.api.workflowservice.v1.WorkflowService/DescribeWorkflowExecution

but temporal cli and tctl both fail:

❯ export TEMPORAL_ADDRESS=temporal-server.internal.mydomain.com:443
❯ temporal workflow describe --workflow-id=myWorkflowId
time=2024-08-16T13:23:09.169 level=ERROR msg="failed reaching server: context deadline exceeded"
❯ tctl --address temporal-server.internal.myDomain.com:443 workflow describe --workflow_id myWorkflowId
Error: Describe workflow execution failed
Error Details: rpc error: code = Unavailable desc = connection error: desc = "error reading server preface: http2: frame too large"

Any idea what could be wrong here? The https cert is a normal, publically-available CA cert. 443 is mapped to 7233 and the temporal client (typescript) we use has no issues talking to temporal on this address at 443.

TLS is disabled by default, try --tls setting for temporal

Thanks, unfortunately I’m seeing the same error:

❯ temporal workflow describe --tls --workflow-id=myWorkflowId
time=2024-08-16T20:57:35.482 level=ERROR msg="failed reaching server: context deadline exceeded"

Any other way I can debug this? I’d really like to stop using grpcurl and use the official temporal cli :slight_smile:

Still looking for some help here :slight_smile:

Things I’ve tried:

  • changing my ALB listener from port 443 to 7233
  • changing from a *.mydomain.com cert to a cert that exactly matches the temporal-server url
export TEMPORAL_ADDRESS=temporal-server.myDomain.net:7233

temporal workflow describe --tls --tls-disable-host-verification   --workflow-id=myWorkflowId
time=2024-09-25T11:36:16.196 level=ERROR msg="failed reaching server: context deadline exceeded"

temporal workflow --tls describe --workflow-id=myWorkflowId
time=2024-09-25T11:59:20.830 level=ERROR msg="failed reaching server: context deadline exceeded"

temporal workflow describe --workflow-id=myWorkflowId
time=2024-09-25T11:59:30.373 level=ERROR msg="failed reaching server: context deadline exceeded"

meanwhile grpcurl has no issues, but as stated above it’s pretty cumbersome :slight_smile: