Todos os produtos
Search
Central de documentação

Alibaba Cloud SDK:Tratamento de exceções

Última atualização: Jun 28, 2026

O SDK V2.0 define quatro tipos de exceção. Saiba como identificar e tratar cada uma delas.

Tipos de exceção

Tipo de exceção

Descrição

Ação recomendada

UnretryableException

Exceção relacionada à rede, geralmente lançada quando o número máximo de tentativas se esgota devido a um problema de conectividade.

  1. Verifique se há problemas de rede no ambiente de execução do programa.

  2. Se a rede estiver funcionando corretamente, aumente o tempo limite e tente novamente.

ClientException

Exceção do lado do cliente com código de status HTTP na faixa de 400 a 499, causada por problemas como parâmetros de solicitação inválidos, falhas de autenticação ou permissões insuficientes.

No Troubleshoot, copie o RequestId da exceção para diagnosticar o erro. Em seguida, trate o erro com base na solução fornecida.

ServerException

Exceção do lado do servidor com código de status HTTP na faixa de 500 a 599, indicando um problema no serviço da Alibaba Cloud, como erro interno do servidor ou indisponibilidade do serviço.

Tente executar a operação novamente. Se o problema persistir após várias tentativas, entre em contato conosco para obter ajuda.

ThrottlingException

Lançada quando uma chamada de API aciona o mecanismo de limitação da Alibaba Cloud.

Ajuste a frequência das chamadas de API para cumprir os limites de taxa definidos na documentação da API.

ClientException, ServerException e ThrottlingException expõem os seguintes parâmetros para solução de problemas:

  • request_id: identificador exclusivo da solicitação.

  • status_code: código de status HTTP retornado pela OpenAPI.

  • code: código de erro retornado pela OpenAPI.

  • message: mensagem de erro retornada pela OpenAPI.

  • data: informações detalhadas retornadas pelo servidor quando o erro ocorreu.

Código de exemplo:

Importante

Este exemplo apenas imprime a saída para fins de demonstração. Em produção, trate as exceções adequadamente: propague-as, registre-as em log ou tente uma recuperação para garantir a estabilidade do sistema.

import os

from alibabacloud_ecs20140526.client import Client
from alibabacloud_ecs20140526.models import DescribeImagesRequest
from alibabacloud_tea_openapi.exceptions import (
    ClientException,
    ServerException,
    ThrottlingException
)
from alibabacloud_tea_openapi.models import Config
from darabonba.exceptions import UnretryableException

'''Elastic Compute Service example'''
# Initialize Config.
config = Config(
    access_key_id=os.environ['ALIBABA_CLOUD_ACCESS_KEY_ID'],
    access_key_secret=os.environ['ALIBABA_CLOUD_ACCESS_KEY_SECRET'],
    region_id='<REGION_ID>'
)
try:
    client = Client(config)
    # Initialize Request.
    request = DescribeImagesRequest(image_id='<IMAGE_ID>', region_id='<REGION_ID>')
    response = client.describe_images(request)
except UnretryableException as e:
    # A network exception occurred. This example only prints the exception. Handle exceptions with care. Do not ignore them in your projects.
    print(e)
except  (ClientException, ServerException, ThrottlingException) as e:
    # A client exception occurred. This example only prints the exception. Handle exceptions with care. Do not ignore them in your projects.
    print(f"RequestId:{e.request_id},StatusCode:{e.status_code},Message:{e.message},Data:{e.data}")

Resolver exceções

Se ocorrer uma exceção durante uma chamada de API, resolva-a das seguintes maneiras: