Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
As operações da API REST para o serviço Batch devolvem códigos de estado HTTP padrão, conforme definido nas Definições de Código de Estado HTTP/1.1.
As operações de API também podem devolver informações de erro adicionais para fornecer ao programador mais informações sobre o erro. Por exemplo, a seguinte resposta de erro indica que um parâmetro de consulta especificado no URI do pedido era inválido e fornece informações adicionais sobre o nome e o valor do parâmetro inválido e o motivo do erro.
{
"code": "InvalidQueryParameterValue",
"message": {
"lang": "en-us",
"value": "Value for one of the query parameters specified in the request URI is invalid"
},
"values": [{
"key": "QueryParameterName",
"value": "state"
}, {
"key": "QueryParameterValue",
"value": "deleted"
}, {
"key": "Reason",
"value": "invalid state"
}]
}
As secções seguintes fornecem listas de códigos de erro para o serviço Batch:
Códigos de Erro comuns da API REST
Os códigos de erro listados na tabela seguinte podem ser devolvidos por uma operação no serviço Batch.
| Código de erro | Código de estado de HTTP | Mensagem de utilizador |
|---|---|---|
| ConditionNotMet | Não Modificado (304) | A condição especificada nos cabeçalhos condicionais não foi cumprida para uma operação de leitura. |
| MissingRequiredHeader | Pedido Incorreto (400) | Não foi especificado um cabeçalho HTTP necessário. |
| MissingRequiredProperty | Pedido Incorreto (400) | Não foi especificada uma propriedade necessária no corpo do pedido. |
| Não SuportadoHeader | Pedido Incorreto (400) | Um dos cabeçalhos HTTP especificados no pedido não é suportado. |
| Não SuportadoProperty | Pedido Incorreto (400) | Uma das propriedades especificadas no corpo do pedido não é suportada. |
| InvalidHeaderValue | Pedido Incorreto (400) | O valor fornecido para um dos cabeçalhos HTTP não estava no formato correto. |
| InvalidPropertyValue | Pedido Incorreto (400) | O valor fornecido para uma das propriedades no corpo do pedido é inválido. |
| MissingRequiredQueryParameter | Pedido Incorreto (400) | Não foi especificado um parâmetro de consulta necessário para este pedido. |
| UnsupportedQueryParameter | Pedido Incorreto (400) | Um dos parâmetros de consulta especificados no URI do pedido não é suportado. |
| InvalidQueryParameterValue | Pedido Incorreto (400) | Foi especificado um valor inválido para um dos parâmetros de consulta no URI do pedido. |
| OutOfRangeQueryParameterValue | Pedido Incorreto (400) | Um parâmetro de consulta especificado no URI do pedido está fora do intervalo permitido. |
| RequestUrlFailedToParse | Pedido Incorreto (400) | Não foi possível analisar o URL no pedido. |
| InvalidUri | Pedido Incorreto (400) | O URI pedido não representa nenhum recurso no servidor. |
| InválidoHttpVerb | Pedido Incorreto (400) | O verbo HTTP especificado não foi reconhecido pelo servidor. |
| EmptyMetadataKey | Pedido Incorreto (400) | A chave para um dos pares chave-valor de metadados está vazia. |
| InvalidRequestBody | Pedido Incorreto (400) | O Corpo do Pedido especificado não é sintaticamente válido. |
| OutOfRangeInput | Pedido Incorreto (400) | Uma das entradas do pedido está fora do intervalo. |
| InvalidAuthenticationInfo | Pedido Incorreto (400) | As informações de autenticação não foram fornecidas no formato correto. Verifique o valor do cabeçalho Autorização . |
| InvalidInput | Pedido Incorreto (400) | Uma das entradas do pedido não é válida. |
| InvalidMetadata | Pedido Incorreto (400) | Os metadados especificados são inválidos. Inclui carateres que não são permitidos. |
| MetadataTooLarge | Pedido Incorreto (400) | O tamanho dos metadados especificados excede o tamanho máximo permitido. |
| MultipleConditionHeadersNotSupported | Pedido Incorreto (400) | Não são suportados vários cabeçalhos de condição. |
| AuthenticationFailed | Proibido (403) | O servidor não conseguiu autenticar o pedido. Verifique se o valor do cabeçalho autorização é formado corretamente e inclui a assinatura. |
| InsufficientAccountPermissions | Proibido (403) | A conta a ser acedida não tem permissões suficientes para executar esta operação. |
| AccountIsDisabled | Proibido (403) | A conta especificada está desativada. |
| ResourceNotFound | Não Encontrado (404) | O recurso especificado não existe. |
| Não suportadoHttpVerb | Método Não Permitido (405) | O recurso não suporta o verbo HTTP especificado. |
| MissingContentLengthHeader | Comprimento Necessário (411) | O cabeçalho Content-Length não foi especificado. |
| ConditionNotMet | Falha na Pré-condição (412) | A condição especificada nos cabeçalhos condicionais não foi cumprida para uma operação de escrita. |
| RequestBodyTooLarge | Entidade do Pedido Demasiado Grande (413) | O tamanho do corpo do pedido excede o tamanho máximo permitido. |
| InvalidRange | Intervalo Pedido Não Satisfiable (416) | O intervalo especificado é inválido para o tamanho atual do recurso. |
| InternalError | Erro interno do Servidor (500) | O servidor encontrou um erro interno. Repita o pedido. |
| OperationTimedOut | Erro interno do Servidor (500) | Não foi possível concluir a operação dentro do tempo permitido. |
| ServerBusy | Serviço Indisponível (503) | Atualmente, o servidor não consegue receber pedidos. Tente novamente o seu pedido. |
Códigos de Erro do Serviço Batch
Os códigos de erro listados na tabela seguinte podem ser devolvidos por uma operação no serviço Batch.
| Código de erro | Código de estado de HTTP | Mensagem de utilizador |
|---|---|---|
| UnsupportedRequestVersion | BadRequest (400) | A versão do pedido especificado não é suportada. |
| InvalidAutoScalingSettings | BadRequest (400) | As definições de dimensionamento automático especificadas não são válidas. |
| AutoScalingFormulaSyntaxError | BadRequest (400) | A fórmula de dimensionamento automático especificada tem um erro de sintaxe. |
| AutoScalingFormulaTooLong | BadRequest (400) | A fórmula de dimensionamento automático especificada excede o limite de comprimentos. |
| OSVersionNotFound | BadRequest (400) | A Versão do SO especificada não existe. |
| OSVersionDisabled | BadRequest (400) | A Versão do SO especificada está desativada. |
| OSVersionExpired | BadRequest (400) | A Versão do SO especificada expirou. |
| PoolVersionEqualsUpgradeVersion | BadRequest (400) | O conjunto já está com a versão especificada. |
| PoolNotEligibleForOSVersionUpgrade | BadRequest (400) | O conjunto especificado não é elegível para atualização da Versão do SO. |
| PoolNotFound | NotFound (404) | O conjunto especificado não existe. |
| NodeNotFound | NotFound (404) | O nó especificado não existe. |
| JobScheduleNotFound | NotFound (404) | A agenda de tarefas especificada não existe. |
| JobNotFound | NotFound (404) | A tarefa especificada não existe. |
| TaskNotFound | NotFound (404) | A tarefa especificada não existe. |
| FicheiroNotFound | NotFound (404) | O ficheiro especificado não existe. |
| NodeUserNotFound | NotFound (404) | O utilizador do nó especificado não existe. |
| CertificateNotFound | NotFound (404) | O certificado especificado não existe. |
| JobPreparationTaskNotRunOnNode | NotFound (404) | A tarefa de preparação da tarefa não foi executada no nó especificado. |
| JobReleaseTaskNotRunOnNode | NotFound (404) | A tarefa de lançamento da tarefa não foi executada no nó especificado. |
| NodeAgentSKUNotFound | NotFound (404) | O SKU do Agente de Nó especificado não existe. |
| OperationInvalidForCurrentState | Conflito (409) | A operação especificada não é válida para o estado atual do recurso. |
| PoolBeingDeleted | Conflito (409) | O conjunto especificado foi marcado para eliminação e está a ser recuperado. |
| PoolBeingResized | Conflito (409) | O conjunto especificado está a ser redimensionado |
| PoolBeingCreated | Conflito (409) | O conjunto especificado está a ser criado. |
| NodeBeingCreated | Conflito (409) | O nó especificado está a ser criado |
| NodeBeingStarted | Conflito (409) | O nó especificado está a ser iniciado |
| NodeBeingReimaged | Conflito (409) | O nó especificado está a ser recriado |
| NodeBeingRebooted | Conflito (409) | O nó especificado está a ser reiniciado |
| NodeStateUnusable | Conflito (409) | O estado do nó especificado é inutilizável |
| JobScheduleBeingTerminated | Conflito (409) | A agenda de tarefas especificada está a ser terminada. |
| JobScheduleBeingDeleted | Conflito (409) | O agendamento de tarefas especificado foi marcado para eliminação e está a ser recuperado. |
| CertificateBeingDeleted | Conflito (409) | O certificado especificado foi marcado para eliminação e está a ser eliminado. |
| PoolExists | Conflito (409) | O conjunto especificado já existe. |
| JobScheduleExists | Conflito (409) | A agenda de tarefas especificada já existe. |
| NodeUserExists | Conflito (409) | O utilizador do nó especificado já existe. |
| JobExists | Conflito (409) | A tarefa especificada já existe. |
| NodeUserExists | Conflito (409) | O utilizador do nó especificado já existe. |
| CertificateExists | Conflito (409) | O certificado especificado já existe. |
| JobScheduleDisabled | Conflito (409) | A agenda de tarefas especificada está desativada. |
| JobScheduleCompleted | Conflito (409) | O agendamento de tarefas especificado já está no estado concluído. |
| JobBeingTerminated | Conflito (409) | A tarefa especificada está a ser terminada. |
| JobBeingDeleted | Conflito (409) | A tarefa especificada foi marcada para eliminação e está a ser recolhida lixo. |
| JobDisabled | Conflito (409) | A tarefa especificada está desativada. |
| Tarefa Concluída | Conflito (409) | A tarefa especificada já está num estado concluído. |
| JobNotActive | Conflito (409) | A tarefa especificada não está no estado ativo. |
| TaskExists | Conflito (409) | A tarefa especificada já existe. |
| Tarefas Concluídos | Conflito (409) | A tarefa especificada já está num estado concluído. |
| TaskNotCompleted | Conflito (409) | A tarefa especificada não está num estado concluído e a operação pedida só pode ser efetuada em tarefas concluídas. |
| TarefaScedidas | Conflito (409) | A tarefa especificada já foi concluída com êxito e não é possível efetuar a operação pedida em tarefas com êxito. |
| TaskFilesUnavailable | Conflito (409) | Os ficheiros da tarefa especificada não estão disponíveis. |
| TaskFilesCleanedup | Conflito (409) | Os ficheiros da tarefa especificada são limpos. |
| ActiveJobAndScheduleQuotaReached | Conflito (409) | A quota de tarefas ativas e agendamento para a conta foi atingida. |
| PoolQuotaReached | Conflito (409) | A quota do conjunto para a conta foi atingida. |
| UpgradePoolVersionConflict | Conflito (409) | O conjunto já está a atualizar para uma versão diferente. |
| JobPreparationTaskNotSpecified | Conflito (409) | A tarefa especificada não tem a tarefa de preparação de tarefas. |
| JobReleaseTaskNotSpecified | Conflito (409) | A tarefa especificada não tem a tarefa de lançamento da tarefa. |
| TaskIdSameAsJobPreparationTask | Conflito (409) | O ID de tarefa especificado é igual à tarefa de preparação da tarefa. |
| TaskIdSameAsJobReleaseTask | Conflito (409) | O ID de tarefa especificado é o mesmo que a tarefa de lançamento da tarefa. |
| JobWithSameIdExists | Conflito (409) | Existe uma tarefa com o ID de agendamento de tarefas especificado. O agendamento de trabalhos e trabalhos não pode ter o mesmo ID. |
| JobScheduleWithSameIdExists | Conflito (409) | Existe um horário de trabalho com o ID de tarefa especificado. O agendamento de trabalhos e trabalhos não pode ter o mesmo ID. |
| NodeAlreadyInTargetSchedulingState | Conflito (409) | O nó especificado já está no estado de agendamento de destino. |
| OperationNotValidOnNode | Conflito (409) | A operação especificada não é válida no nó. |
| OperationNotValidOnPool | Conflito (409) | A operação especificada não é válida no conjunto. |
| IOError | Proibido (403) | Ocorreu um erro de E/S ao aceder ao recurso especificado. |
| TooManyEnableAutoScaleRequests | ServiceUnavailable (503) | São emitidos demasiados pedidos ativar o Dimensionamento Automático do Conjunto no conjunto. |
| ApplicationNotFound | Não Encontrado (404) | A aplicação especificada não existe. |
| InvalidApplicationPackageReferences | Conflito (409) | Não foi possível satisfazer uma ou mais referências de pacotes de aplicações. Isto ocorre se o ID ou versão da aplicação não existir ou não estiver ativo ou se a referência não tiver especificado uma versão e não existir uma versão predefinida configurada. |
| TaskDependenciesNotSpecifiedOnJob | Pedido Incorreto (400) | Uma tarefa foi especificada consoante outras tarefas, mas a tarefa não especificou que iria utilizar dependências de tarefas. |
| TaskDependencyListTooLong | Pedido Incorreto (400) | Uma tarefa foi especificada como dependendo de outras tarefas, mas a lista de dependências era demasiado longa para ser armazenada. O comprimento total armazenado está limitado a 64000 carateres; a duração total dos IDs de tarefas tem de ser ligeiramente menor do que esta para permitir a sobrecarga de armazenamento interno. Se encontrar este erro, considere utilizar dependências do intervalo de tarefas. |
| TaskDependencyRangesTooLong | Pedido Incorreto (400) | Uma tarefa foi especificada como dependendo de vários intervalos de IDs de tarefas e a lista de intervalos era demasiado longa para ser armazenada. Tenha em atenção que o problema não é com o tamanho dos intervalos, mas sim com o número de intervalos. |
Códigos de Erro de Agendamento de Tarefas/Tarefas
Se o serviço Batch encontrar um erro ao iniciar uma tarefa num nó, marca a tarefa como concluída. As informações de erro são devolvidas dentro de um failureInfo elemento no corpo de resposta de Listar os ficheiros associados a uma tarefa e Obter informações sobre as APIs de tarefas .
Da mesma forma, se o serviço Batch encontrar um erro ao iniciar a tarefa, marca a tarefa como concluída. Estas informações de erro de agendamento são devolvidas dentro de um schedulingError elemento no corpo de resposta de Obter informações sobre uma tarefa nas APIs do Batch .
A tabela seguinte fornece a lista de categorias para erros de agendamento de tarefas.
| Categoria | Descrição |
|---|---|
| UserError | Erros na especificação de tarefa fornecida pelo utilizador. |
| ServidorErro | Erros encontrados pelo serviço Batch que o impedem de agendar a tarefa. |
Segue-se um exemplo de erro de pré-processamento devolvido pelo serviço Batch.
{
"preProcessingError": {
"category": "UserError",
"code": "BlobNotFound",
"message": "The specified blob does not exist.",
"values": {
"name": "FilePath",
"value": "myfile.txt"
}
}
}
A tabela seguinte fornece a lista de códigos de erro de agendamento de tarefas que podem ser devolvidos pelo serviço Batch.
| Código de erro | Categoria | Mensagem de utilizador |
|---|---|---|
| InvalidCertificatesInAutoPool | UserError | As referências de certificado especificadas na especificação do conjunto automático não são válidas. |
| AutoPoolCreationFailedWithQuotaReached | UserError | A quota de conjunto da conta é atingida. |
| InvalidApplicationPackageReferencesInAutoPool | UserError | Um ou mais pacotes de aplicações especificados para o conjunto são inválidos. |
| InvalidAutoScaleFormulaInAutoPool | UserError | As definições de dimensionamento automático especificadas não são válidas. |
| InvalidAutoPoolSettings | UserError | As definições de conjunto automático especificadas não são válidas. |
| JobBeingTerminated | UserError | Não é possível iniciar a tarefa porque a tarefa associada está a ser terminada. |
| Desconhecido | ServidorErro | Ocorreu um erro de agendamento desconhecido. |
A tabela seguinte fornece a lista de códigos de erro de agendamento de tarefas que podem ser devolvidos pelo serviço Batch.
| Código de erro | Categoria | Mensagem de utilizador |
|---|---|---|
| BlobNotFound | UserError | Um dos Blobs do Azure especificados não foi encontrado. |
| BlobAccessDenied | UserError | O acesso a um dos Blobs do Azure especificados é negado. |
| BlobDownloadTimedOut | ServidorErro | Foi encontrado um tempo limite excedido ao transferir um dos Blobs do Azure especificados. |
| BlobDownloadMiscError | ServidorErro | Erro diverso encontrado ao transferir um dos Blobs do Azure especificados. |
| ResourceDirectoryCreateFailed | ServidorErro | Falha ao criar o diretório de recursos para a tarefa. |
| ResourceFileCreateFailed | ServidorErro | Ocorreu uma falha ao criar o ficheiro de recursos. |
| ResourceFileWriteFailed | ServidorErro | Falha ao escrever o ficheiro de recursos. |
| CommandProgramNotFound | UserError | O programa de comandos especificado não foi encontrado. |
| CommandLaunchFailed | UserError | Falha ao iniciar a linha de comandos especificada. |
| TarefaSEndidas | UserError | A tarefa foi terminada por pedido do utilizador. |
| MaxInternalRetryCountReached | UserError | A tarefa especificada atingiu a contagem máxima de repetições internas. |
| TaskSchedulingConstraintFailed | UserError | Não é possível agendar a tarefa no conjunto associado à tarefa |
| DiskFull | ServidorErro | Não existe espaço em disco suficiente no nó que foi selecionado para executar a tarefa. |
| Desconhecido | ServidorErro | Ocorreu um erro de agendamento desconhecido. |