Configurar o AWS IoT registro - 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á.

Configurar o AWS IoT registro

Você deve ativar o registro usando o AWS IoT console, a CLI ou a API antes de poder monitorar e registrar AWS IoT atividades.

Você pode ativar o registro em todos os grupos de coisas AWS IoT ou somente em grupos específicos. Você pode configurar o AWS IoT registro usando o AWS IoT console, a CLI ou a API; no entanto, você deve usar a CLI ou a API para configurar o registro para grupos de coisas específicos.

Ao considerar como configurar seu AWS IoT registro, a configuração de registro padrão determina como a AWS IoT atividade será registrada, a menos que especificado de outra forma. No começo, talvez você queira obter logs detalhados com um nível de log padrão de INFO ou DEBUG. Depois que analisar os logs iniciais, você poderá alterar o nível de log padrão para um nível menos detalhado, como WARN ou ERROR e definir um nível de log mais detalhado específico do recursos em recursos que possam precisar de mais atenção. É possível alterar os níveis de log sempre que quiser.

Este tópico aborda o login na nuvem. AWS IoT Para obter informações sobre registro e monitoramento do lado do dispositivo, consulte Carregar registros do lado do dispositivo para. CloudWatch

Para obter informações sobre registro e monitoramento AWS IoT Greengrass, consulte Registro e monitoramento em AWS IoT Greengrass. Em 30 de junho de 2023, o software AWS IoT Greengrass Core migrou para o. AWS IoT Greengrass Version 2

Configurar a função e a política de registro em log

Antes de ativar o login AWS IoT, você deve criar uma função do IAM e uma política que dê AWS permissão para monitorar a AWS IoT atividade em seu nome. Você também pode gerar um perfil do IAM com as políticas necessárias na seção Logs do AWS IoT console.

nota

Antes de ativar o AWS IoT registro, certifique-se de entender as permissões de acesso aos CloudWatch registros. Os usuários com acesso aos CloudWatch registros podem ver as informações de depuração dos seus dispositivos. Para obter mais informações, consulte Autenticação e controle de acesso para Amazon CloudWatch Logs.

Se você espera altos padrões de tráfego AWS IoT Core devido aos testes de carga, considere desativar o registro de IoT para evitar a limitação. Se for detectado tráfego intenso, nosso serviço poderá desativar o registro em log em sua conta.

Veja a seguir como criar uma função de registro e uma política para AWS IoT Core recursos.

Criar uma função de registro em log

Para criar uma função de registro em log, abra o hub Roles do console do IAM e escolha a opção Criar função.

  1. Em Selecionar tipo de entidade confiável, selecione a opção AWS Serviço. Em seguida, escolha a opção IoT em Caso de uso. Se a opção IoT não for exibida, entre e pesquise IoT em Casos de uso para outros AWS serviços: menu suspenso. Escolha Próximo.

  2. Na página Adicionar permissões, você verá as políticas que são automaticamente anexadas ao perfil de serviço. Escolha Próximo.

  3. Na página Nome, revisão e criação, insira um Nome do perfil e uma Descrição da função para a função e escolha Criar função.

  4. Na lista de Funções, encontre a função criada, abra-a e copie o ARN da função (logging-role-arn) a ser usado em Configurar o registro em log padrão no AWS IoT (console).

Política de função de registro em log

Os documentos de política a seguir fornecem a política de função e a política de confiança que AWS IoT permitem enviar entradas de registro CloudWatch em seu nome. Se você também permitiu que AWS IoT Core a LoRa WAN enviasse entradas de registro, você verá um documento de política criado para você que registra as duas atividades.

nota

Esses documentos foram criados para você quando você criou a função de registro em log. Os documentos têm variáveis, ${partition}, ${region}, e ${accountId}, que você deve substituir pelos seus valores.

Política de função:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents", "logs:PutMetricFilter", "logs:PutRetentionPolicy", "iot:GetLoggingOptions", "iot:SetLoggingOptions", "iot:SetV2LoggingOptions", "iot:GetV2LoggingOptions", "iot:SetV2LoggingLevel", "iot:ListV2LoggingLevels", "iot:DeleteV2LoggingLevel" ], "Resource": [ "arn:${partition}:logs:${region}:${accountId}:log-group:AWSIotLogsV2:*" ] } ] }

Política de confiança para registrar somente AWS IoT Core atividades:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "iot.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

Configurar o registro em log padrão no AWS IoT (console)

Esta seção descreve como usar o AWS IoT console para configurar o registro em log para todos os AWS IoT. Para configurar o registro em log somente para grupos de objetos específicos, use a CLI ou a API. Para obter informações sobre como configurar o registro em log para grupos de objetos específicos, consulte Configurar registro em log de recursos específicos no AWS IoT (CLI).

Para usar o AWS IoT console para configurar o registro padrão para todos os AWS IoT
  1. Faça login no AWS IoT console. Para ter mais informações, consulte Abra o AWS IoT console.

  2. No painel de navegação à esquerda, escolha Configurações. Na seção Logs da página Configurações, escolha Gerenciar logs.

    A página Logs exibe a função de registro em log e o nível de detalhamento usados por todo o AWS IoT.

    A página Registros exibindo a função do registro e o nível de detalhamento.
  3. Na página Logs, escolha Selecionar função para especificar uma função que você criou em Criar uma função de registro em log, ou Criar função para criar uma nova função para usar no registro em log.

    A página Registros exibindo a função e o nível do registro.
  4. Escolha o nível de registro que descreve o nível de detalhe das entradas de registro que você deseja que apareçam nos CloudWatch registros.

  5. Escolha Atualizar para salvar suas alterações.

Depois que habilitar o registro em log, acesse Visualizando AWS IoT registros no CloudWatch console para saber mais sobre como visualizar as entradas de log.

Configurar login padrão AWS IoT (CLI)

Esta seção descreve como configurar o registro global AWS IoT usando a CLI.

nota

É necessário o nome do recurso da Amazon (ARN) da função que você deseja usar. Se você precisar criar uma função a ser usada para o registro em log, consulte Criar uma função de registro em log antes de continuar.

A entidade principal usada para chamar a API deve ter Transmitir permissões de função para sua função de registro em log.

Você também pode realizar esse procedimento com a API usando os métodos na AWS API que correspondem aos comandos da CLI mostrados aqui.

Para usar a CLI para configurar o registro padrão para AWS IoT
  1. Use o comando set-v2-logging-options para definir as opções de registro em log para sua conta.

    aws iot set-v2-logging-options \ --role-arn logging-role-arn \ --default-log-level log-level

    onde:

    --role-arn

    O ARN da função que concede AWS IoT permissão para gravar em seus registros em CloudWatch Logs.

    --default-log-level

    O nível de log a ser usado. Os valores válidos são ERROR, WARN, INFO, DEBUG ou DISABLED.

    --no-disable-all-logs

    Um parâmetro opcional que habilita todo o AWS IoT registro. Use esse parâmetro para habilitar o registro em log se ele estiver desabilitado no momento.

    --disable-all-logs

    Um parâmetro opcional que desativa todo o AWS IoT registro. Use esse parâmetro para desabilitar o registro em log se ele estiver habilitado no momento.

  2. Use o comando get-v2-logging-options para obter as opções de registro em log atuais.

    aws iot get-v2-logging-options

Depois que habilitar o registro em log, acesse Visualizando AWS IoT registros no CloudWatch console para saber mais sobre como visualizar as entradas de log.

nota

AWS IoT continua oferecendo suporte a comandos mais antigos (set-logging-optionseget-logging-options) para definir e obter o registro global em sua conta. Lembre-se de que, quando esses comandos são usados, os logs resultantes conterão texto sem formatação, em vez de cargas úteis JSON, e a latência dos registros em logs geralmente será mais alta. Não haverá mais melhorias à implementação desses comandos mais antigos. Recomendamos que você use a versão "v2" para configurar suas opções de registro em log e, quando possível, altere quaisquer aplicativos legados que usam as versões mais antigas.

Configurar registro em log de recursos específicos no AWS IoT (CLI)

Esta seção descreve como configurar o registro em log específico de recursos AWS IoT usando a CLI. O registro em log de recursos específicos permite que você especifique um nível de log para um grupo de objetos específico.

Grupos de objetos podem conter outros grupos de objetos para criar um relacionamento hierárquico. Este procedimento descreve como configurar o registro em log de um único grupo de objetos. É possível aplicar esse procedimento ao grupo de objetos pai em uma hierarquia para configurar o registro em log para todos os grupos de objetos na hierarquia. Também é possível aplicar esse procedimento a um grupo de objetos filho para substituir a configuração de registro em log do grupo pai.

Além dos grupos de objetos, você também pode registrar destinos como o ID do cliente, o IP de origem e o ID principal do dispositivo.

nota

É necessário o nome do recurso da Amazon (ARN) da função que você deseja usar. Se você precisar criar uma função a ser usada para o registro em log, consulte Criar uma função de registro em log antes de continuar.

A entidade principal usada para chamar a API deve ter Transmitir permissões de função para sua função de registro em log.

Você também pode realizar esse procedimento com a API usando os métodos na AWS API que correspondem aos comandos da CLI mostrados aqui.

Para usar a CLI para configurar o registro específico de recursos para AWS IoT
  1. Use o comando set-v2-logging-options para definir as opções de registro em log para sua conta.

    aws iot set-v2-logging-options \ --role-arn logging-role-arn \ --default-log-level log-level

    onde:

    --role-arn

    O ARN da função que concede AWS IoT permissão para gravar em seus registros em CloudWatch Logs.

    --default-log-level

    O nível de log a ser usado. Os valores válidos são ERROR, WARN, INFO, DEBUG ou DISABLED.

    --no-disable-all-logs

    Um parâmetro opcional que habilita todo o AWS IoT registro. Use esse parâmetro para habilitar o registro em log se ele estiver desabilitado no momento.

    --disable-all-logs

    Um parâmetro opcional que desativa todo o AWS IoT registro. Use esse parâmetro para desabilitar o registro em log se ele estiver habilitado no momento.

  2. Use o comando set-v2-logging-level para configurar o registro em log específico de recursos para um grupo de objetos.

    aws iot set-v2-logging-level \ --log-target targetType=THING_GROUP,targetName=thing_group_name \ --log-level log_level
    --log-target

    O tipo e o nome do recurso para o qual você está configurando o registro em log. O valor target_type deve ser um dos seguintes: THING_GROUP | CLIENT_ID | SOURCE_IP |PRINCIPAL_ID. O valor do parâmetro-alvo de log pode ser texto, como mostrado no exemplo de comando anterior, ou uma string JSON, como o exemplo a seguir.

    aws iot set-v2-logging-level \ --log-target '{"targetType": "THING_GROUP","targetName": "thing_group_name"}' \ --log-level log_level
    --log-level

    O nível de registro em log usado ao gerar logs para o recurso especificado. Os valores válidos são: DEBUG, INFO, ERROR, WARN e DISABLED

    aws iot set-v2-logging-level \ --log-target targetType=CLIENT_ID,targetName=ClientId1 \ --log-level DEBUG
  3. Use o comando list-v2-logging-levels para listar os níveis de registro em log configurados no momento.

    aws iot list-v2-logging-levels
  4. Use o comando delete-v2-logging-level para excluir um nível de registro em log específico de recursos, conforme os exemplos seguintes.

    aws iot delete-v2-logging-level \ --target-type "THING_GROUP" \ --target-name "thing_group_name"
    aws iot delete-v2-logging-level \ --target-type=CLIENT_ID --target-name=ClientId1
    --targetType

    O valor target_type deve ser um dos seguintes: THING_GROUP | CLIENT_ID | SOURCE_IP |PRINCIPAL_ID.

    --targetName

    O nome do grupo de objetos do qual remover o nível de registro em log.

Depois que habilitar o registro em log, acesse Visualizando AWS IoT registros no CloudWatch console para saber mais sobre como visualizar as entradas de log.

Níveis de log

Esses níveis de log determinam os eventos que são registrados em log e se aplicam aos níveis de log padrão e de recursos específicos.

ERRO

Qualquer erro que cause a falha de uma operação.

Os logs incluem apenas informações do tipo ERRO.

WARN

Tudo que possa causar inconsistências no sistema, mas que não cause falha na operação.

Os logs incluem informações dos tipos ERRO e AVISO.

INFORMAÇÕES

Informações de alto nível sobre o fluxo das objetos.

Os logs incluem informações dos tipos INFORMAÇÕES, ERRO e AVISO.

DEBUG

Informações que podem ser úteis ao depurar um problema.

Os logs incluem informações dos tipos DEBUG, INFORMAÇÕES, ERRO e AVISO.

DISABLED

Todos os registros são desativados.