AWS IoT Solução de problemas de trabalhos - AWS IoT Core

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

AWS IoT Solução de problemas de trabalhos

Esta é a seção de solução de problemas para AWS IoT trabalhos.

Como localizo um endpoint do AWS IoT Jobs?

Como localizo o endpoint do plano AWS IoT de controle de Jobs?

AWS IoT O Jobs oferece suporte a operações de API do plano de controles usando o protocolo HTTPS. Verifique se você se conectou ao endpoint do ambiente de gerenciamento correto usando o protocolo HTTPS.

Para obter uma lista de endpoints AWS específicos da região, consulte AWS IoT Core - endpoints do plano de controle.

Para obter uma lista de endpoints do ambiente de gerenciamento de trabalhos de AWS IoT compatíveis com FIPS, consulte Endpoints FIPS por serviço

nota

AWS IoT Trabalhe e AWS IoT Core compartilhe os mesmos endpoints AWS específicos da região.

Como localizo o endpoint do plano AWS IoT de dados do Jobs?

AWS IoT O Jobs suporta operações de API de plano de dados usando os protocolos HTTPS e MQTT. Verifique se você se conectou ao endpoint correto do plano de dados usando o protocolo HTTPS ou MQTT.

  • Protocolo HTTPS

    • Use o seguinte comando da describe-endpointCLI mostrado abaixo ou a API DescribeEndpointREST. Para o tipo de endpoint, use iot:Jobs.

      aws iot describe-endpoint --endpoint-type iot:Jobs
  • Protocolo MQTT

    • Use o seguinte comando da describe-endpointCLI mostrado abaixo ou a API DescribeEndpointREST. Para o tipo de endpoint, use iot:Data-ATS (recomendado) ou iot:Data.

      aws iot describe-endpoint --endpoint-type iot:Data-ATS (recommended)
      aws iot describe-endpoint --endpoint-type iot:Data

Para obter uma lista de endpoints do plano de dados de trabalhos de AWS IoT compatíveis com FIPS, consulte Endpoints FIPS por serviço

Como faço para monitorar a atividade do AWS IoT Jobs e fornecer métricas?

O monitoramento da atividade de AWS IoT trabalhos usando a Amazon CloudWatch fornece visibilidade em tempo real das operações contínuas de AWS IoT trabalhos e ajuda a controlar os custos com CloudWatch alarmes por meio de AWS IoT regras. Você deve configurar o registro antes de poder monitorar a atividade de AWS IoT trabalhos e configurar CloudWatch alarmes. Para obter mais informações sobre como configurar o log, consulte Configurar o AWS IoT registro.

Para obter mais informações sobre a Amazon CloudWatch e como configurar a permissão por meio de uma função de usuário do IAM para usar CloudWatch recursos, consulte Gerenciamento de identidade e acesso para a Amazon CloudWatch.

Como faço para configurar métricas e monitoramento de AWS IoT empregos usando a Amazon CloudWatch?

Para configurar o AWS IoT registro, siga as etapas descritas em Configurar o AWS IoT registro. AWS IoT a configuração do registro pode ser feita na API AWS Management Console AWS CLI, ou. AWS IoT o registro configurado para grupos de coisas específicos deve ser feito somente na API AWS CLI ou.

A seção Métricas de AWS IoT trabalhos contém as métricas de AWS IoT trabalhos usadas para monitorar a atividade de AWS IoT trabalhos. Ele explica como visualizar as métricas no AWS Management Console AWS CLI e.

Além disso, você pode configurar CloudWatch alarmes para alertá-lo sobre métricas específicas que você deseja monitorar de perto. Para obter orientação sobre a configuração de alarmes, consulte Como usar CloudWatch alarmes da Amazon.

Frotas de dispositivos e solução de problemas de dispositivos únicos

A execução de um trabalho mantém um status QUEUED indefinidamente

Quando uma execução de trabalho com um estado de status QUEUED não prossegue para o próximo estado de status lógico, como IN_PROGRESS, FAILED, ou TIMED_OUT um dos seguintes cenários pode ser a causa:

  • Revise a atividade do seu dispositivo nos CloudWatch registros localizados no CloudWatch console. Para obter mais informações, consulte Monitorar AWS IoT usando CloudWatch registros.

  • O perfil do IAM associado ao trabalho e à execução subsequente do trabalho pode não ter as permissões corretas listadas em uma das declarações de política do IAM anexadas a esse perfil do IAM. Use a API describe-job para identificar o perfil do IAM vinculado a esse trabalho e à execução subsequente do trabalho e revise a política do IAM para obter as permissões corretas. Depois que as declarações de permissão da política forem atualizadas, você poderá executar o comando da API AssumeRole no recurso.

Uma execução de trabalho não foi criada para meu objeto ou grupo de objetos

Quando um trabalho atualiza seu status para IN_PROGRESS, a distribuição do documento do trabalho será iniciada em todos os dispositivos do seu grupo de destino. Essa atualização do estado de status criará uma execução de trabalho para cada dispositivo de destino. Se a execução de uma tarefa não tiver sido criada para um dos dispositivos de destino, consulte as diretrizes a seguir:

  • A thing é direcionada diretamente pelo trabalho, o trabalho tem um estado de status IN_PROGRESS e o trabalho é simultâneo? Se todas as três condições forem atendidas, o trabalho ainda estará enviando execuções de trabalho para todos os dispositivos do seu grupo de destino e essa thing específica ainda não recebeu sua execução de trabalho.

    • Analise os dispositivos em seu grupo-alvo para o trabalho e o estado do status do trabalho no AWS Management Console ou use o comando da describe-jobAPI.

    • Use o comando da API describe-job para verificar se o trabalho tem a propriedade IsConcurrent definida como verdadeira ou falsa. Para obter mais informações, consulte Job limits.

  • A thing não é alvo direto do trabalho.

    • Se a Thing foi adicionada a um ThingGroup e o trabalho foi direcionado ao ThingGroup, verifique se a Thing faz parte do ThingGroup.

    • Se o trabalho for um trabalho de instantâneo com um estado de status IN_PROGRESS e for simultâneo, o trabalho ainda estará enviando execuções de trabalho para todos os dispositivos em seu grupo de destino e essa Thing específica ainda não recebeu sua execução de trabalho.

    • Se o trabalho for um trabalho contínuo com um estado de status IN_PROGRESS e for simultâneo, o trabalho ainda estará enviando execuções de trabalho para todos os dispositivos em seu grupo de destino e essa Thing específica ainda não recebeu sua execução de trabalho. Somente para trabalhos contínuos, você também pode remover a Thing do ThingGroup e depois adicionar a Thing de volta ao ThingGroup.

    • Se o trabalho for um trabalho instantâneo com um estado de status IN_PROGRESS e não for simultâneo, é provável que a relação de ThingGroup associação Thing ou associação não seja reconhecida por Jobs. AWS IoT É recomendável adicionar alguns segundos de tempo de espera após a AddThingToThingGroup chamada antes de criar suaJob. Como alternativa, você pode alternar a seleção do alvo paraContinuous, fazendo com que o serviço preencha o evento atrasado Thing e de vinculação da ThingGroup associação.

O novo trabalho falha devido a um erro LimitedExceededException

Se a criação do seu trabalho falhar com uma resposta de erro LimitedExceededException, chame a API list-jobs e revise todos os trabalhos com isConcurrent=true para determinar se você está no limite de simultaneidade do trabalho. Consulte Limites de trabalho para obter informações adicionais sobre trabalhos simultâneos. Para ver os limites de simultaneidade de trabalho e solicitar um aumento de limite, consulte Limites de trabalhos AWS IoT Device Management e cotas.

Limite de tamanho do documento de trabalho

O tamanho do documento de trabalho é limitado pelo tamanho da carga útil do MQTT. Se você precisar de um documento de trabalho maior que 32 kB (kilobytes), 32.000 B (bytes), crie e armazene o documento de trabalho no Amazon S3 e adicione um URL de objeto do Amazon S3 no campo documentSource para a API CreateJob ou usando o AWS CLI. Para o AWS Management Console, adicione uma URL de objeto do Amazon S3 na caixa de texto URL do Amazon S3 ao criar um trabalho.

A mensagem MQTT do lado do dispositivo solicita limites de controle de utilização

Se você receber um código de erro 400 ThrottlingException, a mensagem MQTT do lado do dispositivo falhou devido ao alcance do limite de solicitações simultâneas do lado do dispositivo. Consulte Limites e cotas de trabalhos AWS IoT Device Management para obter mais informações sobre limites de controle de utilização e se eles são ajustáveis.

Erro de tempo limite de conexão

Um código de erro 400 RequestExpired indica uma falha de conexão devido a alta latência ou baixos valores de tempo limite do lado do cliente.

Comando de API inválido

Confirme se o comando API correto foi inserido para evitar uma mensagem de erro informando que o comando API é inválido. Consulte a Referência da API AWS IoT para obter uma lista abrangente de todos os comandos da API AWS IoT .

Erro de conexão do lado do serviço

Um código de erro 503 ServiceUnavailable indica que o erro foi originado do lado do servidor.