Skip to content

az containerapp debug: websocket._exceptions.WebSocketBadStatusExceptionΒ #31740

@daviewales

Description

@daviewales

Describe the bug

I'm trying to use az containerapp debug to connect to a running container.
I'm following these instructions:
https://learn.microsoft.com/en-us/azure/container-apps/container-debug-console

However, I'm getting the following error:

websocket._exceptions.WebSocketBadStatusException: Handshake status 200 OK

Related command

az containerapp debug

Errors

az containerapp debug --name "$container_name" --resource-group "$resource_group"
This command is in preview and under development. Reference and support levels: https://aka.ms/CLI_refstatus
Validating...
Connecting...
The command failed with an unexpected error. Here is the traceback:
Handshake status 200 OK
Traceback (most recent call last):
  File "/opt/az/lib/python3.12/site-packages/knack/cli.py", line 233, in invoke
    cmd_result = self.invocation.execute(args)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/azure/cli/core/commands/__init__.py", line 666, in execute
    raise ex
  File "/opt/az/lib/python3.12/site-packages/azure/cli/core/commands/__init__.py", line 734, in _run_jobs_serially
    results.append(self._run_job(expanded_arg, cmd_copy))
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/azure/cli/core/commands/__init__.py", line 703, in _run_job
    result = cmd_copy(params)
             ^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/azure/cli/core/commands/__init__.py", line 336, in __call__
    return self.handler(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/azure/cli/core/commands/command_operation.py", line 120, in handler
    return op(**command_args)
           ^^^^^^^^^^^^^^^^^^
  File "/home/example/.azure/cliextensions/containerapp/azext_containerapp/custom.py", line 3556, in containerapp_debug
    conn = DebugWebSocketConnection(
           ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/example/.azure/cliextensions/containerapp/azext_containerapp/_ssh_utils.py", line 19, in __init__
    super(DebugWebSocketConnection, self).__init__(cmd, resource_group_name, name, revision, replica, container, "")
  File "/opt/az/lib/python3.12/site-packages/azure/cli/command_modules/containerapp/_ssh_utils.py", line 61, in __init__
    self._socket.connect(self._url, header=[f"Authorization: Bearer {self._token}"])
  File "/opt/az/lib/python3.12/site-packages/websocket/_core.py", line 253, in connect
    self.handshake_response = handshake(self.sock, url, *addrs, **options)
                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/websocket/_handshake.py", line 57, in handshake
    status, resp = _get_resp_headers(sock)
                   ^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/websocket/_handshake.py", line 148, in _get_resp_headers
    raise WebSocketBadStatusException("Handshake status %d %s", status, status_message, resp_headers)
websocket._exceptions.WebSocketBadStatusException: Handshake status 200 OK

Issue script & Debug output

az containerapp debug --name "$container_name" --resource-group "$resource_group" --debug
cli.knack.cli: Command arguments: ['containerapp', 'debug', '--name', 'CONTAINER_NAME', '--resource-group', 'RESOURCE_GROUP', '--debug']
cli.knack.cli: __init__ debug log:
Enable color in terminal.
cli.knack.cli: Event: Cli.PreExecute []
cli.knack.cli: Event: CommandParser.OnGlobalArgumentsCreate [<function CLILogging.on_global_arguments at 0x7f24ee0d7880>, <function OutputProducer.on_global_arguments at 0x7f24ede827a0>, <function CLIQuery.on_global_arguments at 0x7f24edec7ce0>]
cli.knack.cli: Event: CommandInvoker.OnPreCommandTableCreate []
cli.azure.cli.core: Modules found from index for 'containerapp': ['azext_containerapp', 'azure.cli.command_modules.containerapp', 'azure.cli.command_modules.serviceconnector']
cli.azure.cli.core: Loading command modules:
cli.azure.cli.core: Name                  Load Time    Groups  Commands
cli.azure.cli.core: containerapp              0.289        37       123
cli.azure.cli.core: serviceconnector          0.052        20       331
cli.azure.cli.core: Total (2)                 0.342        57       454
cli.azure.cli.core: These extensions are not installed and will be skipped: ['azext_ai_examples', 'azext_next']
cli.azure.cli.core: Loading extensions:
cli.azure.cli.core: Name                  Load Time    Groups  Commands  Directory
cli.azure.cli.core: containerapp              0.020        57       161  /home/example/.azure/cliextensions/containerapp
cli.azure.cli.core: Total (1)                 0.020        57       161
cli.azure.cli.core: Loaded 97 groups, 580 commands.
cli.azure.cli.core: Found a match in the command table.
cli.azure.cli.core: Raw command  : containerapp debug
cli.azure.cli.core: Command table: containerapp debug
cli.knack.cli: Event: CommandInvoker.OnPreCommandTableTruncate [<function AzCliLogging.init_command_file_logging at 0x7f24ed09c180>]
cli.azure.cli.core.azlogging: metadata file logging enabled - writing logs to '/home/example/.azure/commands/2025-07-01.12-54-45.containerapp_debug.266955.log'.
az_command_data_logger: command args: containerapp debug --name {} --resource-group {} --debug
cli.knack.cli: Event: CommandInvoker.OnPreArgumentLoad [<function register_global_subscription_argument.<locals>.add_subscription_parameter at 0x7f24ed0f4680>]
cli.knack.cli: Event: CommandInvoker.OnPostArgumentLoad []
cli.knack.cli: Event: CommandInvoker.OnPostCommandTableCreate [<function register_ids_argument.<locals>.add_ids_arguments at 0x7f24ed0f6e80>, <function register_cache_arguments.<locals>.add_cache_arguments at 0x7f24ed0f6fc0>, <function register_upcoming_breaking_change_info.<locals>.update_breaking_change_info at 0x7f24ed0f7060>]
cli.knack.cli: Event: CommandInvoker.OnCommandTableLoaded []
cli.knack.cli: Event: CommandInvoker.OnPreParseArgs []
cli.knack.cli: Event: CommandInvoker.OnPostParseArgs [<function OutputProducer.handle_output_argument at 0x7f24ede82840>, <function CLIQuery.handle_query_parameter at 0x7f24edec7d80>, <function register_ids_argument.<locals>.parse_ids_arguments at 0x7f24ed0f6f20>]
az_command_data_logger: extension name: containerapp
az_command_data_logger: extension version: 1.2.0b1
This command is in preview and under development. Reference and support levels: https://aka.ms/CLI_refstatus
cli.azext_containerapp._validators: Validating...
cli.azure.cli.core.util: Found subscription ID SUBSCRIPTION_ID in the URL https://management.azure.com/subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/providers/Microsoft.App/containerApps/CONTAINER_NAME?api-version=2025-02-02-preview
cli.azure.cli.core.util: Retrieving token for resource https://management.core.windows.net/, subscription SUBSCRIPTION_ID
cli.azure.cli.core.auth.persistence: build_persistence: location='/home/example/.azure/msal_token_cache.json', encrypt=False
cli.azure.cli.core.auth.binary_cache: load: /home/example/.azure/msal_http_cache.bin
urllib3.util.retry: Converted retries value: 1 -> Retry(total=1, connect=None, read=None, redirect=None, status=None)
msal.authority: Initializing with Entra authority: https://login.microsoftonline.com/TENANT_ID
msal.authority: openid_config("https://login.microsoftonline.com/TENANT_ID/v2.0/.well-known/openid-configuration") = {'token_endpoint': 'https://login.microsoftonline.com/TENANT_ID/oauth2/v2.0/token', 'token_endpoint_auth_methods_supported': ['client_secret_post', 'private_key_jwt', 'client_secret_basic'], 'jwks_uri': 'https://login.microsoftonline.com/TENANT_ID/discovery/v2.0/keys', 'response_modes_supported': ['query', 'fragment', 'form_post'], 'subject_types_supported': ['pairwise'], 'id_token_signing_alg_values_supported': ['RS256'], 'response_types_supported': ['code', 'id_token', 'code id_token', 'id_token token'], 'scopes_supported': ['openid', 'profile', 'email', 'offline_access'], 'issuer': 'https://login.microsoftonline.com/TENANT_ID/v2.0', 'request_uri_parameter_supported': False, 'userinfo_endpoint': 'https://graph.microsoft.com/oidc/userinfo', 'authorization_endpoint': 'https://login.microsoftonline.com/TENANT_ID/oauth2/v2.0/authorize', 'device_authorization_endpoint': 'https://login.microsoftonline.com/TENANT_ID/oauth2/v2.0/devicecode', 'http_logout_supported': True, 'frontchannel_logout_supported': True, 'end_session_endpoint': 'https://login.microsoftonline.com/TENANT_ID/oauth2/v2.0/logout', 'claims_supported': ['sub', 'iss', 'cloud_instance_name', 'cloud_instance_host_name', 'cloud_graph_host_name', 'msgraph_host', 'aud', 'exp', 'iat', 'auth_time', 'acr', 'nonce', 'preferred_username', 'name', 'tid', 'ver', 'at_hash', 'c_hash', 'email'], 'kerberos_endpoint': 'https://login.microsoftonline.com/TENANT_ID/kerberos', 'tenant_region_scope': 'OC', 'cloud_instance_name': 'microsoftonline.com', 'cloud_graph_host_name': 'graph.windows.net', 'msgraph_host': 'graph.microsoft.com', 'rbac_url': 'https://pas.windows.net'}
msal.application: Broker enabled? None
cli.azure.cli.core.auth.credential_adaptor: CredentialAdaptor.get_token: scopes=('https://management.core.windows.net//.default',), kwargs={}
cli.azure.cli.core.auth.msal_credentials: UserCredential.acquire_token: scopes=['https://management.core.windows.net//.default'], claims_challenge=None, kwargs={}
msal.application: Cache hit an AT
msal.telemetry: Generate or reuse correlation_id: CORRELATION_ID
cli.azure.cli.core.util: Request URL: 'https://management.azure.com/subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/providers/Microsoft.App/containerApps/CONTAINER_NAME?api-version=2025-02-02-preview'
cli.azure.cli.core.util: Request method: 'GET'
cli.azure.cli.core.util: Request headers:
cli.azure.cli.core.util:     'User-Agent': 'python/3.12.10 (Linux-6.8.0-62-generic-x86_64-with-glibc2.39) AZURECLI/2.74.0 (DEB)'
cli.azure.cli.core.util:     'Accept-Encoding': 'gzip, deflate'
cli.azure.cli.core.util:     'Accept': '*/*'
cli.azure.cli.core.util:     'Connection': 'keep-alive'
cli.azure.cli.core.util:     'x-ms-client-request-id': 'CLIENT_REQUEST_ID'
cli.azure.cli.core.util:     'CommandName': 'containerapp debug'
cli.azure.cli.core.util:     'ParameterSetName': '--name --resource-group --debug'
cli.azure.cli.core.util:     'Authorization': 'Bearer eyJ0eXAiOiJKV...'
cli.azure.cli.core.util: Request body:
cli.azure.cli.core.util: None
urllib3.connectionpool: Starting new HTTPS connection (1): management.azure.com:443
urllib3.connectionpool: https://management.azure.com:443 "GET /subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/providers/Microsoft.App/containerApps/CONTAINER_NAME?api-version=2025-02-02-preview HTTP/1.1" 200 2803
cli.azure.cli.core.util: Response status: 200
cli.azure.cli.core.util: Response headers:
cli.azure.cli.core.util:     'Cache-Control': 'no-cache'
cli.azure.cli.core.util:     'Pragma': 'no-cache'
cli.azure.cli.core.util:     'Content-Length': '2803'
cli.azure.cli.core.util:     'Content-Type': 'application/json; charset=utf-8'
cli.azure.cli.core.util:     'Expires': '-1'
cli.azure.cli.core.util:     'Vary': 'Accept-Encoding'
cli.azure.cli.core.util:     'x-ms-ratelimit-remaining-subscription-reads': '249'
cli.azure.cli.core.util:     'api-supported-versions': '2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview, 2025-01-01, 2025-02-02-preview, 2025-07-01'
cli.azure.cli.core.util:     'X-Powered-By': 'ASP.NET'
cli.azure.cli.core.util:     'x-ms-ratelimit-remaining-subscription-global-reads': '3749'
cli.azure.cli.core.util:     'x-ms-request-id': 'REQUEST_ID'
cli.azure.cli.core.util:     'x-ms-correlation-request-id': 'REQUEST_ID'
cli.azure.cli.core.util:     'x-ms-routing-request-id': 'COUNTRYLOCATION:20250701T025446Z:REQUEST_ID'
cli.azure.cli.core.util:     'Strict-Transport-Security': 'max-age=31536000; includeSubDomains'
cli.azure.cli.core.util:     'X-Content-Type-Options': 'nosniff'
cli.azure.cli.core.util:     'X-Cache': 'CONFIG_NOCACHE'
cli.azure.cli.core.util:     'X-MSEdge-Ref': 'Ref A: B23E155CF1A646EB96159B6B0BE41C7F Ref B: SYD03EDGE1909 Ref C: 2025-07-01T02:54:46Z'
cli.azure.cli.core.util:     'Date': 'Tue, 01 Jul 2025 02:54:46 GMT'
cli.azure.cli.core.util: Response content:
cli.azure.cli.core.util: {"id":"/subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/providers/Microsoft.App/containerapps/CONTAINER_NAME","name":"CONTAINER_NAME","type":"Microsoft.App/containerApps","location":"Australia Southeast","systemData":{"createdBy":"[email protected]","createdByType":"User","createdAt":"2025-07-01T02:07:34.2332155","lastModifiedBy":"[email protected]","lastModifiedByType":"User","lastModifiedAt":"2025-07-01T02:42:52.7540334"},"properties":{"provisioningState":"Succeeded","runningStatus":"Running","managedEnvironmentId":"/subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/providers/Microsoft.App/managedEnvironments/CONTAINER_NAME","environmentId":"/subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/providers/Microsoft.App/managedEnvironments/CONTAINER_NAME","workloadProfileName":"Consumption","patchingMode":"Automatic","outboundIpAddresses":["20.11.235.37","20.11.235.29","20.11.235.31","20.11.235.35","20.11.235.32","20.11.235.36","20.11.235.33","20.11.235.30","20.11.235.28","20.11.235.34","13.77.3.70","13.77.0.63","13.70.186.57","13.70.191.222","13.70.185.255","13.70.186.252","13.70.187.134","13.70.186.138","13.70.191.92","13.70.187.245","4.198.137.28"],"latestRevisionName":"CONTAINER_NAME--0000009","latestReadyRevisionName":"CONTAINER_NAME--0000009","latestRevisionFqdn":"","customDomainVerificationId":"1DCDDA4B5219B4901C219CB28BCEEF8C25CC6A772367DE5FD64763EB7E1D34B0","configuration":{"secrets":null,"activeRevisionsMode":"Single","targetLabel":"","revisionTransitionThreshold":null,"ingress":null,"registries":[{"server":"phnexampleacr.azurecr.io","username":"","passwordSecretRef":"","identity":"system"}],"identitySettings":[],"dapr":null,"runtime":null,"maxInactiveRevisions":null,"service":null},"template":{"revisionSuffix":"","terminationGracePeriodSeconds":null,"containers":[{"image":"phnexampleacr.azurecr.io/test_ssh/CONTAINER_NAME:9805ad53.1751333377","imageType":"ContainerImage","name":"CONTAINER_NAME","command":["/bin/bash"],"resources":{"cpu":0.25,"memory":"0.5Gi","ephemeralStorage":"1Gi"},"probes":[],"volumeMounts":[{"volumeName":"temp","mountPath":"/tmp"}]}],"initContainers":null,"scale":{"minReplicas":null,"maxReplicas":10,"cooldownPeriod":300,"pollingInterval":30,"rules":null},"volumes":[{"name":"temp","storageType":"AzureFile","storageName":"example-CONTAINER_NAME-temp-fileshare"}],"serviceBinds":null},"eventStreamEndpoint":"https://countrylocation.azurecontainerapps.dev/subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/containerApps/CONTAINER_NAME/eventstream","delegatedIdentities":[]},"identity":{"type":"SystemAssigned","principalId":"PRINCIPAL_ID","tenantId":"TENANT_ID"}}
cli.azure.cli.core.util: Found subscription ID SUBSCRIPTION_ID in the URL https://management.azure.com/subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/providers/Microsoft.App/containerApps/CONTAINER_NAME/revisions/CONTAINER_NAME--0000009/replicas?api-version=2025-02-02-preview
cli.azure.cli.core.util: Retrieving token for resource https://management.core.windows.net/, subscription SUBSCRIPTION_ID
urllib3.util.retry: Converted retries value: 1 -> Retry(total=1, connect=None, read=None, redirect=None, status=None)
msal.authority: Initializing with Entra authority: https://login.microsoftonline.com/TENANT_ID
msal.authority: openid_config("https://login.microsoftonline.com/TENANT_ID/v2.0/.well-known/openid-configuration") = {'token_endpoint': 'https://login.microsoftonline.com/TENANT_ID/oauth2/v2.0/token', 'token_endpoint_auth_methods_supported': ['client_secret_post', 'private_key_jwt', 'client_secret_basic'], 'jwks_uri': 'https://login.microsoftonline.com/TENANT_ID/discovery/v2.0/keys', 'response_modes_supported': ['query', 'fragment', 'form_post'], 'subject_types_supported': ['pairwise'], 'id_token_signing_alg_values_supported': ['RS256'], 'response_types_supported': ['code', 'id_token', 'code id_token', 'id_token token'], 'scopes_supported': ['openid', 'profile', 'email', 'offline_access'], 'issuer': 'https://login.microsoftonline.com/TENANT_ID/v2.0', 'request_uri_parameter_supported': False, 'userinfo_endpoint': 'https://graph.microsoft.com/oidc/userinfo', 'authorization_endpoint': 'https://login.microsoftonline.com/TENANT_ID/oauth2/v2.0/authorize', 'device_authorization_endpoint': 'https://login.microsoftonline.com/TENANT_ID/oauth2/v2.0/devicecode', 'http_logout_supported': True, 'frontchannel_logout_supported': True, 'end_session_endpoint': 'https://login.microsoftonline.com/TENANT_ID/oauth2/v2.0/logout', 'claims_supported': ['sub', 'iss', 'cloud_instance_name', 'cloud_instance_host_name', 'cloud_graph_host_name', 'msgraph_host', 'aud', 'exp', 'iat', 'auth_time', 'acr', 'nonce', 'preferred_username', 'name', 'tid', 'ver', 'at_hash', 'c_hash', 'email'], 'kerberos_endpoint': 'https://login.microsoftonline.com/TENANT_ID/kerberos', 'tenant_region_scope': 'OC', 'cloud_instance_name': 'microsoftonline.com', 'cloud_graph_host_name': 'graph.windows.net', 'msgraph_host': 'graph.microsoft.com', 'rbac_url': 'https://pas.windows.net'}
msal.application: Broker enabled? None
cli.azure.cli.core.auth.credential_adaptor: CredentialAdaptor.get_token: scopes=('https://management.core.windows.net//.default',), kwargs={}
cli.azure.cli.core.auth.msal_credentials: UserCredential.acquire_token: scopes=['https://management.core.windows.net//.default'], claims_challenge=None, kwargs={}
msal.application: Cache hit an AT
msal.telemetry: Generate or reuse correlation_id: CORRELATION_ID
cli.azure.cli.core.util: Request URL: 'https://management.azure.com/subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/providers/Microsoft.App/containerApps/CONTAINER_NAME/revisions/CONTAINER_NAME--0000009/replicas?api-version=2025-02-02-preview'
cli.azure.cli.core.util: Request method: 'GET'
cli.azure.cli.core.util: Request headers:
cli.azure.cli.core.util:     'User-Agent': 'python/3.12.10 (Linux-6.8.0-62-generic-x86_64-with-glibc2.39) AZURECLI/2.74.0 (DEB)'
cli.azure.cli.core.util:     'Accept-Encoding': 'gzip, deflate'
cli.azure.cli.core.util:     'Accept': '*/*'
cli.azure.cli.core.util:     'Connection': 'keep-alive'
cli.azure.cli.core.util:     'x-ms-client-request-id': 'CLIENT_REQUEST_ID'
cli.azure.cli.core.util:     'CommandName': 'containerapp debug'
cli.azure.cli.core.util:     'ParameterSetName': '--name --resource-group --debug'
cli.azure.cli.core.util:     'Authorization': 'Bearer eyJ0eXAiOiJKV...'
cli.azure.cli.core.util: Request body:
cli.azure.cli.core.util: None
urllib3.connectionpool: Starting new HTTPS connection (1): management.azure.com:443
urllib3.connectionpool: https://management.azure.com:443 "GET /subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/providers/Microsoft.App/containerApps/CONTAINER_NAME/revisions/CONTAINER_NAME--0000009/replicas?api-version=2025-02-02-preview HTTP/1.1" 200 2695
cli.azure.cli.core.util: Response status: 200
cli.azure.cli.core.util: Response headers:
cli.azure.cli.core.util:     'Cache-Control': 'no-cache'
cli.azure.cli.core.util:     'Pragma': 'no-cache'
cli.azure.cli.core.util:     'Content-Length': '2695'
cli.azure.cli.core.util:     'Content-Type': 'application/json; charset=utf-8'
cli.azure.cli.core.util:     'Expires': '-1'
cli.azure.cli.core.util:     'Vary': 'Accept-Encoding'
cli.azure.cli.core.util:     'x-ms-operation-identifier': 'tenantId=TENANT_ID,objectId=OBJECT_ID/australiaeast/OPERATION_ID'
cli.azure.cli.core.util:     'api-supported-versions': '2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview, 2025-01-01, 2025-02-02-preview, 2025-07-01'
cli.azure.cli.core.util:     'X-Powered-By': 'ASP.NET'
cli.azure.cli.core.util:     'x-ms-ratelimit-remaining-subscription-reads': '249'
cli.azure.cli.core.util:     'x-ms-ratelimit-remaining-subscription-global-reads': '3749'
cli.azure.cli.core.util:     'x-ms-request-id': 'REQUEST_ID'
cli.azure.cli.core.util:     'x-ms-correlation-request-id': 'REQUEST_ID'
cli.azure.cli.core.util:     'x-ms-routing-request-id': 'COUNTRYEAST:20250701T025447Z:REQUEST_ID'
cli.azure.cli.core.util:     'Strict-Transport-Security': 'max-age=31536000; includeSubDomains'
cli.azure.cli.core.util:     'X-Content-Type-Options': 'nosniff'
cli.azure.cli.core.util:     'X-Cache': 'CONFIG_NOCACHE'
cli.azure.cli.core.util:     'X-MSEdge-Ref': 'Ref A: 88EDAE27199847519D30BBD4AD4AB83E Ref B: SYD03EDGE1605 Ref C: 2025-07-01T02:54:46Z'
cli.azure.cli.core.util:     'Date': 'Tue, 01 Jul 2025 02:54:46 GMT'
cli.azure.cli.core.util: Response content:
cli.azure.cli.core.util: {"value":[{"id":"/subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/providers/Microsoft.App/containerApps/CONTAINER_NAME/revisions/CONTAINER_NAME--0000009/replicas/CONTAINER_NAME--0000009-5d85869d7d-wzfrt","name":"CONTAINER_NAME--0000009-5d85869d7d-wzfrt","type":"Microsoft.App/containerapps/revisions/replicas","properties":{"createdTime":"2025-07-01T02:42:59Z","runningState":"NotRunning","runningStateDetails":"System Identity Container is still running.","containers":[{"name":"CONTAINER_NAME","ready":false,"started":false,"restartCount":6,"runningState":"Waiting","runningStateDetails":"Container is waiting with reason: CrashLoopBackOff on legion.","logStreamEndpoint":"https://countrylocation.azurecontainerapps.dev/subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/containerApps/CONTAINER_NAME/revisions/CONTAINER_NAME--0000009/replicas/CONTAINER_NAME--0000009-5d85869d7d-wzfrt/containers/CONTAINER_NAME/logstream","execEndpoint":"wss://countrylocation.azurecontainerapps.dev/subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/containerApps/CONTAINER_NAME/revisions/CONTAINER_NAME--0000009/replicas/CONTAINER_NAME--0000009-5d85869d7d-wzfrt/containers/CONTAINER_NAME/exec","debugEndpoint":"wss://countrylocation.azurecontainerapps.dev/subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/containerApps/CONTAINER_NAME/revisions/CONTAINER_NAME--0000009/replicas/CONTAINER_NAME--0000009-5d85869d7d-wzfrt/debug?targetContainer=CONTAINER_NAME"}],"initContainers":[{"name":"identity-service-0cee4339-transition","ready":false,"started":false,"restartCount":0,"runningState":"Terminated","runningStateDetails":"Container was terminated with reason: ProcessExited, exit code: 0.","logStreamEndpoint":"https://countrylocation.azurecontainerapps.dev/subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/containerApps/CONTAINER_NAME/revisions/CONTAINER_NAME--0000009/replicas/CONTAINER_NAME--0000009-5d85869d7d-wzfrt/containers/identity-service-0cee4339-transition/logstream","execEndpoint":"wss://countrylocation.azurecontainerapps.dev/subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/containerApps/CONTAINER_NAME/revisions/CONTAINER_NAME--0000009/replicas/CONTAINER_NAME--0000009-5d85869d7d-wzfrt/containers/identity-service-0cee4339-transition/exec","debugEndpoint":"wss://countrylocation.azurecontainerapps.dev/subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/containerApps/CONTAINER_NAME/revisions/CONTAINER_NAME--0000009/replicas/CONTAINER_NAME--0000009-5d85869d7d-wzfrt/debug?targetContainer=identity-service-0cee4339-transition"}]}}]}
cli.azext_containerapp.custom: Connecting...
cli.azure.cli.core.util: Found subscription ID SUBSCRIPTION_ID in the URL https://management.azure.com/subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/providers/Microsoft.App/containerApps/CONTAINER_NAME/getAuthToken?api-version=2025-01-01
cli.azure.cli.core.util: Retrieving token for resource https://management.core.windows.net/, subscription SUBSCRIPTION_ID
urllib3.util.retry: Converted retries value: 1 -> Retry(total=1, connect=None, read=None, redirect=None, status=None)
msal.authority: Initializing with Entra authority: https://login.microsoftonline.com/TENANT_ID
msal.authority: openid_config("https://login.microsoftonline.com/TENANT_ID/v2.0/.well-known/openid-configuration") = {'token_endpoint': 'https://login.microsoftonline.com/TENANT_ID/oauth2/v2.0/token', 'token_endpoint_auth_methods_supported': ['client_secret_post', 'private_key_jwt', 'client_secret_basic'], 'jwks_uri': 'https://login.microsoftonline.com/TENANT_ID/discovery/v2.0/keys', 'response_modes_supported': ['query', 'fragment', 'form_post'], 'subject_types_supported': ['pairwise'], 'id_token_signing_alg_values_supported': ['RS256'], 'response_types_supported': ['code', 'id_token', 'code id_token', 'id_token token'], 'scopes_supported': ['openid', 'profile', 'email', 'offline_access'], 'issuer': 'https://login.microsoftonline.com/TENANT_ID/v2.0', 'request_uri_parameter_supported': False, 'userinfo_endpoint': 'https://graph.microsoft.com/oidc/userinfo', 'authorization_endpoint': 'https://login.microsoftonline.com/TENANT_ID/oauth2/v2.0/authorize', 'device_authorization_endpoint': 'https://login.microsoftonline.com/TENANT_ID/oauth2/v2.0/devicecode', 'http_logout_supported': True, 'frontchannel_logout_supported': True, 'end_session_endpoint': 'https://login.microsoftonline.com/TENANT_ID/oauth2/v2.0/logout', 'claims_supported': ['sub', 'iss', 'cloud_instance_name', 'cloud_instance_host_name', 'cloud_graph_host_name', 'msgraph_host', 'aud', 'exp', 'iat', 'auth_time', 'acr', 'nonce', 'preferred_username', 'name', 'tid', 'ver', 'at_hash', 'c_hash', 'email'], 'kerberos_endpoint': 'https://login.microsoftonline.com/TENANT_ID/kerberos', 'tenant_region_scope': 'OC', 'cloud_instance_name': 'microsoftonline.com', 'cloud_graph_host_name': 'graph.windows.net', 'msgraph_host': 'graph.microsoft.com', 'rbac_url': 'https://pas.windows.net'}
msal.application: Broker enabled? None
cli.azure.cli.core.auth.credential_adaptor: CredentialAdaptor.get_token: scopes=('https://management.core.windows.net//.default',), kwargs={}
cli.azure.cli.core.auth.msal_credentials: UserCredential.acquire_token: scopes=['https://management.core.windows.net//.default'], claims_challenge=None, kwargs={}
msal.application: Cache hit an AT
msal.telemetry: Generate or reuse correlation_id: CORRELATION_ID
cli.azure.cli.core.util: Request URL: 'https://management.azure.com/subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/providers/Microsoft.App/containerApps/CONTAINER_NAME/getAuthToken?api-version=2025-01-01'
cli.azure.cli.core.util: Request method: 'POST'
cli.azure.cli.core.util: Request headers:
cli.azure.cli.core.util:     'User-Agent': 'python/3.12.10 (Linux-6.8.0-62-generic-x86_64-with-glibc2.39) AZURECLI/2.74.0 (DEB)'
cli.azure.cli.core.util:     'Accept-Encoding': 'gzip, deflate'
cli.azure.cli.core.util:     'Accept': '*/*'
cli.azure.cli.core.util:     'Connection': 'keep-alive'
cli.azure.cli.core.util:     'x-ms-client-request-id': 'CORRELATION_REQUEST_ID'
cli.azure.cli.core.util:     'CommandName': 'containerapp debug'
cli.azure.cli.core.util:     'ParameterSetName': '--name --resource-group --debug'
cli.azure.cli.core.util:     'Authorization': 'Bearer eyJ0eXAiOiJKV...'
cli.azure.cli.core.util:     'Content-Length': '0'
cli.azure.cli.core.util: Request body:
cli.azure.cli.core.util: None
urllib3.connectionpool: Starting new HTTPS connection (1): management.azure.com:443
urllib3.connectionpool: https://management.azure.com:443 "POST /subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/providers/Microsoft.App/containerApps/CONTAINER_NAME/getAuthToken?api-version=2025-01-01 HTTP/1.1" 200 789
cli.azure.cli.core.util: Response status: 200
cli.azure.cli.core.util: Response headers:
cli.azure.cli.core.util:     'Cache-Control': 'no-cache'
cli.azure.cli.core.util:     'Pragma': 'no-cache'
cli.azure.cli.core.util:     'Content-Length': '789'
cli.azure.cli.core.util:     'Content-Type': 'application/json; charset=utf-8'
cli.azure.cli.core.util:     'Expires': '-1'
cli.azure.cli.core.util:     'Vary': 'Accept-Encoding'
cli.azure.cli.core.util:     'x-ms-operation-identifier': 'tenantId=TENANT_ID,objectId=OBJECT_ID/countrylocation/OPERATION_IDENTIFIER'
cli.azure.cli.core.util:     'api-supported-versions': '2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview, 2025-01-01, 2025-02-02-preview, 2025-07-01'
cli.azure.cli.core.util:     'X-Powered-By': 'ASP.NET'
cli.azure.cli.core.util:     'x-ms-ratelimit-remaining-subscription-writes': '199'
cli.azure.cli.core.util:     'x-ms-ratelimit-remaining-subscription-global-writes': '2999'
cli.azure.cli.core.util:     'x-ms-request-id': 'REQUEST_ID'
cli.azure.cli.core.util:     'x-ms-correlation-request-id': 'REQUEST_ID'
cli.azure.cli.core.util:     'x-ms-routing-request-id': 'COUNTRYLOCATION:20250701T025447Z:REQUEST_ID'
cli.azure.cli.core.util:     'Strict-Transport-Security': 'max-age=31536000; includeSubDomains'
cli.azure.cli.core.util:     'X-Content-Type-Options': 'nosniff'
cli.azure.cli.core.util:     'X-Cache': 'CONFIG_NOCACHE'
cli.azure.cli.core.util:     'X-MSEdge-Ref': 'Ref A: 0E98BC037884493FAC0A4843EEF856B8 Ref B: SYD03EDGE2012 Ref C: 2025-07-01T02:54:47Z'
cli.azure.cli.core.util:     'Date': 'Tue, 01 Jul 2025 02:54:46 GMT'
cli.azure.cli.core.util: Response content:
cli.azure.cli.core.util: {"location":"Australia Southeast","properties":{"token":"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJjYXBwX3N1YiI6Ijc5ZGI1OTcwLTMyZGEtNGMxZC1hYWQ5LWM4OWZiMzEwZDRkYyIsImNhcHBfcmciOiJEYXZpZC1XYWxlcy1QbGF5Z3JvdW5kIiwiY2FwcF9uYW1lIjoicG9sYXItZXRsIiwiY2FwcF9qaXRfZXhwaXJ5IjoiMjAyNS0wNy0wMVQwMzo1NDo0Ny44MTUyNzY5WiIsIm5iZiI6MTc1MTMzODQ4NywiZXhwIjoxNzUxMzQyMDg3LCJpYXQiOjE3NTEzMzg0ODcsImlzcyI6IkF6dXJlQ29udGFpbmVyQXBwcyIsImF1ZCI6Imh0dHBzOi8vYXVzdHJhbGlhc291dGhlYXN0LmF6dXJlY29udGFpbmVyYXBwcy5kZXYifQ.GAMC0j7KAlBVGlWZvnbZHxb5_z0hYBI2xu9nmj46M9c","expires":"2025-07-01T03:54:47.8152769Z"},"id":"/subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/providers/Microsoft.App/containerapps/CONTAINER_NAME","name":"CONTAINER_NAME","type":"Microsoft.App/containerApps/accesstoken"}
cli.azure.cli.core.util: Found subscription ID SUBSCRIPTION_ID in the URL https://management.azure.com/subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/providers/Microsoft.App/containerApps/CONTAINER_NAME/revisions/CONTAINER_NAME--0000009/replicas/CONTAINER_NAME--0000009-5d85869d7d-wzfrt/?api-version=2025-01-01
cli.azure.cli.core.util: Retrieving token for resource https://management.core.windows.net/, subscription SUBSCRIPTION_ID
urllib3.util.retry: Converted retries value: 1 -> Retry(total=1, connect=None, read=None, redirect=None, status=None)
msal.authority: Initializing with Entra authority: https://login.microsoftonline.com/TENANT_ID
msal.authority: openid_config("https://login.microsoftonline.com/TENANT_ID/v2.0/.well-known/openid-configuration") = {'token_endpoint': 'https://login.microsoftonline.com/TENANT_ID/oauth2/v2.0/token', 'token_endpoint_auth_methods_supported': ['client_secret_post', 'private_key_jwt', 'client_secret_basic'], 'jwks_uri': 'https://login.microsoftonline.com/TENANT_ID/discovery/v2.0/keys', 'response_modes_supported': ['query', 'fragment', 'form_post'], 'subject_types_supported': ['pairwise'], 'id_token_signing_alg_values_supported': ['RS256'], 'response_types_supported': ['code', 'id_token', 'code id_token', 'id_token token'], 'scopes_supported': ['openid', 'profile', 'email', 'offline_access'], 'issuer': 'https://login.microsoftonline.com/TENANT_ID/v2.0', 'request_uri_parameter_supported': False, 'userinfo_endpoint': 'https://graph.microsoft.com/oidc/userinfo', 'authorization_endpoint': 'https://login.microsoftonline.com/TENANT_ID/oauth2/v2.0/authorize', 'device_authorization_endpoint': 'https://login.microsoftonline.com/TENANT_ID/oauth2/v2.0/devicecode', 'http_logout_supported': True, 'frontchannel_logout_supported': True, 'end_session_endpoint': 'https://login.microsoftonline.com/TENANT_ID/oauth2/v2.0/logout', 'claims_supported': ['sub', 'iss', 'cloud_instance_name', 'cloud_instance_host_name', 'cloud_graph_host_name', 'msgraph_host', 'aud', 'exp', 'iat', 'auth_time', 'acr', 'nonce', 'preferred_username', 'name', 'tid', 'ver', 'at_hash', 'c_hash', 'email'], 'kerberos_endpoint': 'https://login.microsoftonline.com/TENANT_ID/kerberos', 'tenant_region_scope': 'OC', 'cloud_instance_name': 'microsoftonline.com', 'cloud_graph_host_name': 'graph.windows.net', 'msgraph_host': 'graph.microsoft.com', 'rbac_url': 'https://pas.windows.net'}
msal.application: Broker enabled? None
cli.azure.cli.core.auth.credential_adaptor: CredentialAdaptor.get_token: scopes=('https://management.core.windows.net//.default',), kwargs={}
cli.azure.cli.core.auth.msal_credentials: UserCredential.acquire_token: scopes=['https://management.core.windows.net//.default'], claims_challenge=None, kwargs={}
msal.application: Cache hit an AT
msal.telemetry: Generate or reuse correlation_id: CORRELATION_ID
cli.azure.cli.core.util: Request URL: 'https://management.azure.com/subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/providers/Microsoft.App/containerApps/CONTAINER_NAME/revisions/CONTAINER_NAME--0000009/replicas/CONTAINER_NAME--0000009-5d85869d7d-wzfrt/?api-version=2025-01-01'
cli.azure.cli.core.util: Request method: 'GET'
cli.azure.cli.core.util: Request headers:
cli.azure.cli.core.util:     'User-Agent': 'python/3.12.10 (Linux-6.8.0-62-generic-x86_64-with-glibc2.39) AZURECLI/2.74.0 (DEB)'
cli.azure.cli.core.util:     'Accept-Encoding': 'gzip, deflate'
cli.azure.cli.core.util:     'Accept': '*/*'
cli.azure.cli.core.util:     'Connection': 'keep-alive'
cli.azure.cli.core.util:     'x-ms-client-request-id': 'CLIENT_REQUEST_ID'
cli.azure.cli.core.util:     'CommandName': 'containerapp debug'
cli.azure.cli.core.util:     'ParameterSetName': '--name --resource-group --debug'
cli.azure.cli.core.util:     'Authorization': 'Bearer eyJ0eXAiOiJKV...'
cli.azure.cli.core.util: Request body:
cli.azure.cli.core.util: None
urllib3.connectionpool: Starting new HTTPS connection (1): management.azure.com:443
urllib3.connectionpool: https://management.azure.com:443 "GET /subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/providers/Microsoft.App/containerApps/CONTAINER_NAME/revisions/CONTAINER_NAME--0000009/replicas/CONTAINER_NAME--0000009-5d85869d7d-wzfrt/?api-version=2025-01-01 HTTP/1.1" 200 2086
cli.azure.cli.core.util: Response status: 200
cli.azure.cli.core.util: Response headers:
cli.azure.cli.core.util:     'Cache-Control': 'no-cache'
cli.azure.cli.core.util:     'Pragma': 'no-cache'
cli.azure.cli.core.util:     'Content-Length': '2086'
cli.azure.cli.core.util:     'Content-Type': 'application/json; charset=utf-8'
cli.azure.cli.core.util:     'Expires': '-1'
cli.azure.cli.core.util:     'Vary': 'Accept-Encoding'
cli.azure.cli.core.util:     'x-ms-operation-identifier': 'tenantId=TENANT_ID,objectId=OBJECT_ID/australiacentral/ID'
cli.azure.cli.core.util:     'api-supported-versions': '2022-03-01, 2022-06-01-preview, 2022-10-01, 2022-11-01-preview, 2023-04-01-preview, 2023-05-01, 2023-05-02-preview, 2023-08-01-preview, 2023-11-02-preview, 2024-02-02-preview, 2024-03-01, 2024-08-02-preview, 2024-10-02-preview, 2025-01-01, 2025-02-02-preview, 2025-07-01'
cli.azure.cli.core.util:     'X-Powered-By': 'ASP.NET'
cli.azure.cli.core.util:     'x-ms-ratelimit-remaining-subscription-reads': '249'
cli.azure.cli.core.util:     'x-ms-ratelimit-remaining-subscription-global-reads': '3749'
cli.azure.cli.core.util:     'x-ms-request-id': 'REQUEST_ID'
cli.azure.cli.core.util:     'x-ms-correlation-request-id': 'REQUEST_ID'
cli.azure.cli.core.util:     'x-ms-routing-request-id': 'COUNTRYLOCATION:20250701T025449Z:REQUEST_ID'
cli.azure.cli.core.util:     'Strict-Transport-Security': 'max-age=31536000; includeSubDomains'
cli.azure.cli.core.util:     'X-Content-Type-Options': 'nosniff'
cli.azure.cli.core.util:     'X-Cache': 'CONFIG_NOCACHE'
cli.azure.cli.core.util:     'X-MSEdge-Ref': 'Ref A: ED1E65FE4E284918A217C3485B8106E2 Ref B: SYD03EDGE0917 Ref C: 2025-07-01T02:54:47Z'
cli.azure.cli.core.util:     'Date': 'Tue, 01 Jul 2025 02:54:48 GMT'
cli.azure.cli.core.util: Response content:
cli.azure.cli.core.util: {"id":"/subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/providers/Microsoft.App/containerApps/CONTAINER_NAME/revisions/CONTAINER_NAME--0000009/replicas/CONTAINER_NAME--0000009-5d85869d7d-wzfrt","name":"CONTAINER_NAME--0000009-5d85869d7d-wzfrt","type":"Microsoft.App/containerapps/revisions/replicas","properties":{"createdTime":"2025-07-01T02:42:59Z","runningState":"NotRunning","runningStateDetails":"System Identity Container is still running.","containers":[{"name":"CONTAINER_NAME","ready":false,"started":false,"restartCount":6,"runningState":"Waiting","runningStateDetails":"Container is waiting with reason: CrashLoopBackOff on legion.","logStreamEndpoint":"https://countrylocation.azurecontainerapps.dev/subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/containerApps/CONTAINER_NAME/revisions/CONTAINER_NAME--0000009/replicas/CONTAINER_NAME--0000009-5d85869d7d-wzfrt/containers/CONTAINER_NAME/logstream","execEndpoint":"wss://countrylocation.azurecontainerapps.dev/subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/containerApps/CONTAINER_NAME/revisions/CONTAINER_NAME--0000009/replicas/CONTAINER_NAME--0000009-5d85869d7d-wzfrt/containers/CONTAINER_NAME/exec"}],"initContainers":[{"name":"identity-service-0cee4339-transition","ready":false,"started":false,"restartCount":0,"runningState":"Terminated","runningStateDetails":"Container was terminated with reason: ProcessExited, exit code: 0.","logStreamEndpoint":"https://countrylocation.azurecontainerapps.dev/subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/containerApps/CONTAINER_NAME/revisions/CONTAINER_NAME--0000009/replicas/CONTAINER_NAME--0000009-5d85869d7d-wzfrt/containers/identity-service-0cee4339-transition/logstream","execEndpoint":"wss://countrylocation.azurecontainerapps.dev/subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/containerApps/CONTAINER_NAME/revisions/CONTAINER_NAME--0000009/replicas/CONTAINER_NAME--0000009-5d85869d7d-wzfrt/containers/identity-service-0cee4339-transition/exec"}]}}
cli.azure.cli.command_modules.containerapp._ssh_utils: Attempting to connect to wss://countrylocation.azurecontainerapps.dev/subscriptions/SUBSCRIPTION_ID/resourceGroups/RESOURCE_GROUP/containerApps/CONTAINER_NAME/revisions/CONTAINER_NAME--0000009/replicas/CONTAINER_NAME--0000009-5d85869d7d-wzfrt/debug?targetContainer=CONTAINER_NAME
cli.azure.cli.core.azclierror: Traceback (most recent call last):
  File "/opt/az/lib/python3.12/site-packages/knack/cli.py", line 233, in invoke
    cmd_result = self.invocation.execute(args)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/azure/cli/core/commands/__init__.py", line 666, in execute
    raise ex
  File "/opt/az/lib/python3.12/site-packages/azure/cli/core/commands/__init__.py", line 734, in _run_jobs_serially
    results.append(self._run_job(expanded_arg, cmd_copy))
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/azure/cli/core/commands/__init__.py", line 703, in _run_job
    result = cmd_copy(params)
             ^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/azure/cli/core/commands/__init__.py", line 336, in __call__
    return self.handler(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/azure/cli/core/commands/command_operation.py", line 120, in handler
    return op(**command_args)
           ^^^^^^^^^^^^^^^^^^
  File "/home/example/.azure/cliextensions/containerapp/azext_containerapp/custom.py", line 3556, in containerapp_debug
    conn = DebugWebSocketConnection(
           ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/example/.azure/cliextensions/containerapp/azext_containerapp/_ssh_utils.py", line 19, in __init__
    super(DebugWebSocketConnection, self).__init__(cmd, resource_group_name, name, revision, replica, container, "")
  File "/opt/az/lib/python3.12/site-packages/azure/cli/command_modules/containerapp/_ssh_utils.py", line 61, in __init__
    self._socket.connect(self._url, header=[f"Authorization: Bearer {self._token}"])
  File "/opt/az/lib/python3.12/site-packages/websocket/_core.py", line 253, in connect
    self.handshake_response = handshake(self.sock, url, *addrs, **options)
                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/websocket/_handshake.py", line 57, in handshake
    status, resp = _get_resp_headers(sock)
                   ^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/websocket/_handshake.py", line 148, in _get_resp_headers
    raise WebSocketBadStatusException("Handshake status %d %s", status, status_message, resp_headers)
websocket._exceptions.WebSocketBadStatusException: Handshake status 200 OK

cli.azure.cli.core.azclierror: The command failed with an unexpected error. Here is the traceback:
az_command_data_logger: The command failed with an unexpected error. Here is the traceback:
cli.azure.cli.core.azclierror: Handshake status 200 OK
Traceback (most recent call last):
  File "/opt/az/lib/python3.12/site-packages/knack/cli.py", line 233, in invoke
    cmd_result = self.invocation.execute(args)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/azure/cli/core/commands/__init__.py", line 666, in execute
    raise ex
  File "/opt/az/lib/python3.12/site-packages/azure/cli/core/commands/__init__.py", line 734, in _run_jobs_serially
    results.append(self._run_job(expanded_arg, cmd_copy))
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/azure/cli/core/commands/__init__.py", line 703, in _run_job
    result = cmd_copy(params)
             ^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/azure/cli/core/commands/__init__.py", line 336, in __call__
    return self.handler(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/azure/cli/core/commands/command_operation.py", line 120, in handler
    return op(**command_args)
           ^^^^^^^^^^^^^^^^^^
  File "/home/example/.azure/cliextensions/containerapp/azext_containerapp/custom.py", line 3556, in containerapp_debug
    conn = DebugWebSocketConnection(
           ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/example/.azure/cliextensions/containerapp/azext_containerapp/_ssh_utils.py", line 19, in __init__
    super(DebugWebSocketConnection, self).__init__(cmd, resource_group_name, name, revision, replica, container, "")
  File "/opt/az/lib/python3.12/site-packages/azure/cli/command_modules/containerapp/_ssh_utils.py", line 61, in __init__
    self._socket.connect(self._url, header=[f"Authorization: Bearer {self._token}"])
  File "/opt/az/lib/python3.12/site-packages/websocket/_core.py", line 253, in connect
    self.handshake_response = handshake(self.sock, url, *addrs, **options)
                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/websocket/_handshake.py", line 57, in handshake
    status, resp = _get_resp_headers(sock)
                   ^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/websocket/_handshake.py", line 148, in _get_resp_headers
    raise WebSocketBadStatusException("Handshake status %d %s", status, status_message, resp_headers)
websocket._exceptions.WebSocketBadStatusException: Handshake status 200 OK
az_command_data_logger: Handshake status 200 OK
Traceback (most recent call last):
  File "/opt/az/lib/python3.12/site-packages/knack/cli.py", line 233, in invoke
    cmd_result = self.invocation.execute(args)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/azure/cli/core/commands/__init__.py", line 666, in execute
    raise ex
  File "/opt/az/lib/python3.12/site-packages/azure/cli/core/commands/__init__.py", line 734, in _run_jobs_serially
    results.append(self._run_job(expanded_arg, cmd_copy))
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/azure/cli/core/commands/__init__.py", line 703, in _run_job
    result = cmd_copy(params)
             ^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/azure/cli/core/commands/__init__.py", line 336, in __call__
    return self.handler(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/azure/cli/core/commands/command_operation.py", line 120, in handler
    return op(**command_args)
           ^^^^^^^^^^^^^^^^^^
  File "/home/example/.azure/cliextensions/containerapp/azext_containerapp/custom.py", line 3556, in containerapp_debug
    conn = DebugWebSocketConnection(
           ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/example/.azure/cliextensions/containerapp/azext_containerapp/_ssh_utils.py", line 19, in __init__
    super(DebugWebSocketConnection, self).__init__(cmd, resource_group_name, name, revision, replica, container, "")
  File "/opt/az/lib/python3.12/site-packages/azure/cli/command_modules/containerapp/_ssh_utils.py", line 61, in __init__
    self._socket.connect(self._url, header=[f"Authorization: Bearer {self._token}"])
  File "/opt/az/lib/python3.12/site-packages/websocket/_core.py", line 253, in connect
    self.handshake_response = handshake(self.sock, url, *addrs, **options)
                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/websocket/_handshake.py", line 57, in handshake
    status, resp = _get_resp_headers(sock)
                   ^^^^^^^^^^^^^^^^^^^^^^^
  File "/opt/az/lib/python3.12/site-packages/websocket/_handshake.py", line 148, in _get_resp_headers
    raise WebSocketBadStatusException("Handshake status %d %s", status, status_message, resp_headers)
websocket._exceptions.WebSocketBadStatusException: Handshake status 200 OK
To check existing issues, please visit: https://github.com/Azure/azure-cli/issues
cli.knack.cli: Event: Cli.PostExecute [<function AzCliLogging.deinit_cmd_metadata_logging at 0x7f24ed09c400>]
az_command_data_logger: exit code: 1
cli.__main__: Command ran in 25.760 seconds (init: 0.164, invoke: 25.596)
telemetry.main: Begin splitting cli events and extra events, total events: 1
telemetry.client: Accumulated 0 events. Flush the clients.
telemetry.main: Finish splitting cli events and extra events, cli events: 1
telemetry.save: Save telemetry record of length 8387 in cache file under /home/example/.azure/telemetry/20250701125510935
telemetry.main: Begin creating telemetry upload process.
telemetry.process: Creating upload process: "/opt/az/bin/python3 /opt/az/lib/python3.12/site-packages/azure/cli/telemetry/__init__.py /home/example/.azure /home/example/.azure/telemetry/20250701125510935"
telemetry.process: Return from creating process 266997
telemetry.main: Finish creating telemetry upload process.

Expected behavior

I expect to connect to a debug shell for the running container.

Environment Summary

azure-cli                         2.74.0 *

core                              2.74.0 *
telemetry                          1.1.0

Extensions:
containerapp                     1.2.0b1
log-analytics                    1.0.0b1

Dependencies:
msal                              1.32.3
azure-mgmt-resource               23.3.0

Python location '/opt/az/bin/python3'
Config directory '/home/example/.azure'
Extensions directory '/home/example/.azure/cliextensions'

Python (Linux) 3.12.10 (main, May 27 2025, 09:12:37) [GCC 13.3.0]

Additional context

My Dockerfile is simply:

FROM docker.io/python:3.13-slim-bookworm

I built the container with:

az acr build --resource-group "$resource_group" --registry "$container_registry" --image "$image_name" .

And deployed it with:

az containerapp create \
    --name "$container_name" \
    --resource-group "$resource_group" \
    --environment "$environment" \
    --system-assigned \
    --registry-identity system \
    --registry-server "$container_registry_url" \
    --cpu "$cpu" \
    --memory "$memory" \
    --image "${container_registry_url}/${image_name}"

I also manually updated the entrypoint to /bin/bash.

Metadata

Metadata

Labels

Auto-AssignAuto assign by botAuto-ResolveAuto resolve by botContainerAppService AttentionThis issue is responsible by Azure service team.bugThis issue requires a change to an existing behavior in the product in order to be resolved.customer-reportedIssues that are reported by GitHub users external to the Azure organization.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions