

# Monitorar sua frota de recursos sem fio em tempo real usando o analisador de rede
<a name="network-analyzer-overview"></a>

O analisador de rede usa uma conexão WebSocket padrão para receber logs de mensagens de rastreamento em tempo real para os recursos de conectividade sem fio. Ao usar o analisador de rede, você pode adicionar os recursos que deseja monitorar, ativar uma sessão de rastreamento de mensagens e começar a receber mensagens de rastreamento em tempo real.

Para monitorar recursos, você também pode usar o Amazon CloudWatch. Para usar o CloudWatch, defina um perfil do IAM para configurar o log e, em seguida, espere que as entradas do log sejam exibidas no console. O analisador de rede reduz significativamente o tempo necessário para configurar uma conexão e começar a receber mensagens de rastreamento, apresentando informações de log em tempo hábil para a frota de recursos. Para obter informações sobre como utilizar o CloudWatch para monitoramento, consulte [Monitorar os recursos do AWS IoT Wireless utilizando o Amazon CloudWatch Logs](monitoring-cloudwatch.md).

Ao reduzir o tempo de configuração e usar as informações das mensagens de rastreamento, você pode monitorar os recursos com mais eficiência, obter insights significativos e solucionar erros. É possível monitorar os dispositivos e os gateways LoRaWAN. Por exemplo, você pode identificar com rapidez um erro de junção ao integrar um dos dispositivos LoRaWAN. Para depurar o erro, use as informações no log de mensagens de rastreamento apresentado.

**Como usar o analisador de rede**  
Para monitorar a frota de recursos e começar a receber mensagens de rastreamento, execute as etapas a seguir

1. 

**Crie a configuração do analisador de rede e adicione recursos**  
Antes de ativar as mensagens de rastreamento, crie uma configuração do analisador de rede e adicione recursos à configuração. Primeiro, especifique as configurações, que incluem níveis de log e informações sobre quadros de dispositivos. Adicione os recursos que deseja monitorar utilizando o gateway sem fio e os identificadores dos dispositivos sem fio. 

1. 

**Transmita mensagens de rastreamento com WebSockets**  
Você pode gerar um URL de solicitação pré-assinado usando as credenciais do perfil do IAM para transmitir mensagens de rastreamento do analisador de rede usando o protocolo WebSocket.

1. 

**Ative a sessão de rastreamento de mensagens e monitore as mensagens de rastreamento**  
Para começar a receber mensagens de rastreamento, ative sua sessão de rastreamento de mensagens. Para evitar custos adicionais, você pode desativar ou fechar a sessão de mensagens de rastreamento do analisador de rede.

 O vídeo a seguir descreve como o analisador de rede do AWS IoT Core for LoRaWAN funciona e fornece orientações sobre a adição de recursos e o rastreamento de atividades de junção utilizando o analisador de rede.

[![AWS Videos](http://img.youtube.com/vi/https://www.youtube.com/embed/Qk9pkhL8xjc/0.jpg)](http://www.youtube.com/watch?v=https://www.youtube.com/embed/Qk9pkhL8xjc)


Os tópicos a seguir mostram como criar a configuração, adicionar recursos e ativar a sessão de rastreamento de mensagens.

**Topics**
+ [Adicionar o perfil do IAM necessário para o analisador de rede](network-analyzer-iam.md)
+ [Criar a configuração do analisador de rede e adicionar recursos](network-analyzer-create-resources.md)
+ [Transmitir mensagens de rastreamento do analisador de rede com WebSockets](network-analyzer-api.md)
+ [Visualize e monitore os logs de mensagens de rastreamento do analisador de rede em tempo real](network-analyzer-logs.md)
+ [Depure e solucione problemas de seus grupos multicast e tarefas FUOTA usando o analisador de rede](lorawan-network-analyzer-fuota.md)

# Adicionar o perfil do IAM necessário para o analisador de rede
<a name="network-analyzer-iam"></a>

Ao usar o analisador de rede, você deve conceder permissão de usuário para usar as operações de API [UpdateNetworkAnalyzerConfiguration](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_UpdateNetworkAnalyzerConfiguration.html) e [GetNetworkAnalyzerConfiguration](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_GetNetworkAnalyzerConfiguration.html) para acessar os recursos do analisador de rede. Confira a seguir as políticas do IAM que você usa para conceder permissões.

## Políticas do IAM para analisador de rede
<a name="network-analyzer-policies"></a>

Use uma das opções a seguir:
+ 

**Política sem fio de acesso total**  
Conceda a política de acesso total do AWS IoT Core for LoRaWAN anexando a política **AWSIoTWirelessFullAccess** ao perfil. Para obter mais informações, consulte [Resumo da política de `AWSIoTWirelessFullAccess`](https://console.aws.amazon.com/iam/home#/policies/arn:aws:iam::aws:policy/AWSIoTWirelessFullAccess$serviceLevelSummary).
+ 

**Política do IAM com escopo definido para a API Get and Update**  
Crie a seguinte política do IAM acessando a página [Criar política](https://console.aws.amazon.com/iam/home#/policies$new?step=edit) do console do IAM, e na guia **Editor visual**:

  1. Escolha **IoTWireless** para **Serviço**.

  1. Em **Nível de acesso**, expanda **Ler**, escolha **GetNetworkAnalyzerConfiguration** e expanda **Gravar** e escolha **UpdateNetworkAnalyzerConfiguration**.

  1. Escolha **Próximo: tags** e insira um **Nome** para a política, como **IoTWirelessNetworkAnalyzerPolicy**. Escolha **Criar política**.

  Confira a seguir a política **IoTWirelessNetworkAnalyzerPolicy** que você criou. Para obter mais informações sobre a criação de uma política, consulte [Criar políticas do IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create).

  ```
  {
      "Version": "2012-10-17",
      "Statement": [
          {
              "Sid": "VisualEditor0",
              "Effect": "Allow",
              "Action": [
                  "iotwireless:GetNetworkAnalyzerConfiguration",
                  "iotwireless:UpdateNetworkAnalyzerConfiguration"
              ],
              "Resource": "*"
          }
      ]
  }
  ```

**Política com escopo definido para acessar recursos específicos**  
Para configurar um controle de acesso mais refinado, adicione os gateways sem fio e os dispositivos ao campo **Recurso**. A política a seguir utiliza o ARN curinga para conceder acesso a todos os gateways e dispositivos. É possível controlar o acesso a gateways e dispositivos específicos utilizando `WirelessGatewayId` e `WirelessDeviceId`.

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "iotwireless:GetNetworkAnalyzerConfiguration",
                "iotwireless:UpdateNetworkAnalyzerConfiguration"
            ],
            "Resource": [
                "arn:aws:iotwireless:*:{accountId}:WirelessDevice/*", 
                "arn:aws:iotwireless:*:{accountId}:WirelessGateway/*", 
                "arn:aws:iotwireless:*:{accountId}:NetworkAnalyzerConfiguration/*"
            ]
        }
    ]
}
```

Para conceder permissão a um usuário para utilizar o analisador de rede, mas não para utilizar gateways ou dispositivos sem fio, utilize a política a seguir. A menos que especificado, as permissões para usar os recursos são negadas implicitamente.

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "iotwireless:GetNetworkAnalyzerConfiguration",
                "iotwireless:UpdateNetworkAnalyzerConfiguration"
            ],
            "Resource": [                
                "arn:aws:iotwireless:*:{accountId}:NetworkAnalyzerConfiguration/*"
            ]
        }
    ]
}
```

## Próximas etapas
<a name="network-analyzer-iam-next"></a>

Agora que você criou a política, pode adicionar recursos à configuração do analisador de rede e receber informações de rastreamento de mensagens para esses recursos. Para ter mais informações, consulte [Criar a configuração do analisador de rede e adicionar recursos](network-analyzer-create-resources.md).

# Criar a configuração do analisador de rede e adicionar recursos
<a name="network-analyzer-create-resources"></a>

Antes de transmitir mensagens de rastreamento, crie uma configuração do analisador de rede e adicione os recursos que você deseja monitorar a essa configuração. Ao criar uma configuração, você pode:
+ Especificar um nome de configuração e uma descrição opcional.
+ Personalizar as configurações, como informações do quadro e nível de detalhes das mensagens de log.
+ Adicionar os recursos que você deseja monitorar. Os recursos podem ser dispositivos ou gateways sem fio ou ambos.

As configurações que você especificar determinarão as informações de rastreamento de mensagens que você receberá dos recursos adicionados à configuração. Talvez você também queira criar várias configurações, dependendo do caso de uso de monitoramento.

Veja a seguir como criar uma configuração e adicionar recursos.

**Topics**
+ [Criar uma configuração do analisador de rede](network-analyzer-create.md)
+ [Adicionar recursos e atualizar a configuração do analisador de rede](network-analyzer-resources.md)

# Criar uma configuração do analisador de rede
<a name="network-analyzer-create"></a>

Para poder monitorar os gateways ou os dispositivos sem fio, crie uma configuração para o analisador de rede. Ao criar a configuração, você só precisa especificar um nome de configuração. Você pode personalizar as configurações e adicionar os recursos que deseja monitorar à sua configuração mesmo depois de criada. As configurações determinam as informações de rastreamento de mensagens que você receberá para esses recursos.

Dependendo dos recursos que você deseja monitorar e do nível de informações que deseja receber sobre eles, talvez você queira criar várias configurações. Por exemplo, você pode criar uma configuração que exiba somente informações de erro para um conjunto de gateways em sua Conta da AWS. Você também pode criar uma configuração que exiba todas as informações sobre um dispositivo sem fio que você queira monitorar.

As seções a seguir mostram as várias definições de configuração e como criar a configuração.

## Definições de configuração
<a name="network-analyzer-config-settings"></a>

Ao criar ou atualizar a configuração do analisador de rede, você também pode personalizar os parâmetros a seguir para filtrar as informações do fluxo de logs.
+ 

**Informações sobre o quadro**  
Essa configuração é a informação do quadro dos recursos do seu dispositivo sem fio para mensagens de rastreamento. As informações do quadro podem ser usadas para depurar a comunicação entre o servidor de rede e os dispositivos finais. Ele é habilitado por padrão.
+ 

**Níveis de log**  
Você pode ver os logs de informações ou de erros, ou pode desativar o log.
  + 

**Informações**  
Os logs com um nível de log de **Informações** são mais detalhados e contêm fluxos de logs de erros e fluxos de logs informativos. Os logs informativos podem ser usados para visualizar alterações no estado de um dispositivo ou gateway.
**nota**  
A coleta de fluxos de logs mais detalhados pode gerar custos adicionais. Para obter mais informações sobre a definição de preço, consulte [Definição de preço do AWS IoT Core](https://aws.amazon.com/iot-core/pricing/). 
  + 

**Erro**  
Os logs com um nível de log de **Erro** são menos detalhados e exibem somente informações de erro. Você pode usar esses logs quando um aplicativo tem um erro, como um erro de conexão do dispositivo. Ao usar as informações do fluxo de logs, você pode identificar e solucionar erros nos recursos da sua frota.

## Criar uma configuração usando o console
<a name="network-analyzer-create-configuration-console"></a>

É possível criar uma configuração do analisador de rede e personalizar os parâmetros opcionais utilizando o console do AWS IoT ou a API do AWS IoT Wireless. Você também pode criar várias configurações e, posteriormente, excluir qualquer configuração que não esteja mais usando.

**Criar uma configuração do analisador de rede**  


1. Abra o [Hub do analisador de rede do console de AWS IoT](https://console.aws.amazon.com/iot/home#/wireless/networkAnalyzer) e escolha **Criar configuração**.

1. Especifique as definições da configuração.
   + 

**Nome, descrição e tags**  
Especifique um **Nome de configuração** exclusivo que contenha somente letras, números, hifens ou sublinhados. Utilize o campo opcional **Descrição**, para fornecer informações sobre a configuração, e o campo **Tags**, para adicionar pares de chave-valor de metadados sobre a configuração. Para obter mais informações sobre nomenclatura e descrição dos recursos, consulte [Descrever os recursos do AWS IoT Wireless](iotwireless-describe-resources.md).
   + 

**Definições de configuração**  
Escolha se deseja desativar as informações do quadro e use **Selecionar níveis de log** para escolher os níveis de log que você deseja usar para seus logs de mensagens de rastreamento. Escolha **Próximo**.

1. Adicione recursos à configuração. Você pode adicionar recursos agora ou escolher **Criar** e adicioná-los mais tarde. Para adicionar recursos posteriormente, escolha **Criar**.

   Na **página Hub do analisador de rede**, você verá a configuração que criou junto com as configurações. Para visualizar os detalhes da nova configuração, escolha o nome da configuração. 

**Excluir a configuração do analisador de rede**  


É possível criar várias configurações do analisador de rede dependendo dos recursos que você deseja monitorar e do nível de informações de rastreamento de mensagens que deseja receber sobre eles. 

**Para remover configurações do console**

1. Vá para o [Hub do analisador de rede do console de AWS IoT](https://console.aws.amazon.com/iot/home#/wireless/networkAnalyzer) e escolha a configuração que deseja remover.

1. Escolha **Ações** e, em seguida, escolha **Excluir**.

## Criar uma configuração usando a API
<a name="network-analyzer-create-configuration-api"></a>

Para criar uma configuração do analisador de rede usando a API, use a operação de API [CreateNetworkAnalyzerConfiguration](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_CreateNetworkAnalyzerConfiguration.html) ou o comando da CLI [create-network-analyzer-configuration](https://docs.aws.amazon.com/cli/latest/reference/iotwireless/create-network-analyzer-configuration.html).

Ao criar a configuração, você só precisa especificar um nome de configuração. Você também pode usar essa operação de API para especificar as definições de configuração e adicionar recursos ao criar a configuração. Também é possível especificá-las posteriormente utilizando a operação de API [UpdateNetworkAnalyzerConfiguration](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_UpdateNetworkAnalyzerConfiguration.html) ou o [update-network-analyzer-configuration](https://docs.aws.amazon.com/cli/latest/reference/iotwireless/update-network-analyzer-configuration.html) da CLI.
+ 

**Criar uma configuração**  
Ao criar sua configuração, é necessário especificar um nome. Por exemplo, o comando a seguir cria uma configuração apresentando somente um nome e uma descrição opcional. Por padrão, a configuração tem as informações do quadro ativadas e usa um nível de log de `INFO`.

  ```
  aws iotwireless create-network-analyzer-configuration \ 
      --configuration-name My_Network_Analyzer_Config \ 
      --description "My first network analyzer configuration"
  ```

  A execução desse comando exibe o ARN e o ID da configuração do analisador de rede.

  ```
  {
      "Arn": "arn:aws:iotwireless:us-east-1:123456789012:NetworkAnalyzerConfiguration/12345678-a1b2-3c45-67d8-e90fa1b2c34d",
      "Id": "12345678-a1b2-3c45-67d8-e90fa1b2c34d"
  }
  ```
+ 

**Criar configurações com recursos**  
Para personalizar as definições de configuração, use o parâmetro `trace-content`. Para adicionar recursos, utilize os parâmetros `WirelessDevices` e `WirelessGateways` para especificar os gateways e dispositivos que você deseja adicionar à configuração. Por exemplo, o comando a seguir personaliza as definições de configuração e adiciona os recursos sem fio, especificados por `WirelessGatewayID` e `WirelessDeviceID`, à configuração.

  ```
  aws iotwireless create-network-analyzer-configuration \ 
      --configuration-name My_NetworkAnalyzer_Config \ 
      --trace-content WirelessDeviceFrameInfo=DISABLED,LogLevel="ERROR" \ 
      --wireless-gateways "12345678-a1b2-3c45-67d8-e90fa1b2c34d" "90123456-de1f-2b3b-4c5c-bb1112223cd1"   
      --wireless-devices "1ffd32c8-8130-4194-96df-622f072a315f"
  ```

  O exemplo a seguir mostra a saída da execução do comando:

  ```
  {
      "Arn": "arn:aws:iotwireless:us-east-1:123456789012:NetworkAnalyzerConfiguration/12345678-a1b2-3c45-67d8-e90fa1b2c34d",
      "Id": "12345678-a1b2-3c45-67d8-e90fa1b2c34d"
  }
  ```

**Listar configurações do analisador de rede**  
É possível criar várias configurações do analisador de rede dependendo dos recursos que você deseja monitorar e do nível de detalhes das informações de rastreamento de mensagens que deseja receber sobre eles. Depois de criar essas configurações, você pode usar a operação de API [ListNetworkAnalyzerConfigurations](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_ListNetworkAnalyzerConfigurations.html) ou o comando da CLI [list-network-analyzer-configuration](https://docs.aws.amazon.com/cli/latest/reference/iotwireless/list-network-analyzer-configuration.html) para obter uma lista dessas configurações.

```
aws iotwireless list-network-analyzer-configurations
```

A execução desse comando exibe todas as configurações do analisador de rede na Conta da AWS. Você também pode usar o parâmetro `max-results` para especificar quantas configurações deseja exibir. Confira a seguir a saída de execução desse comando.

```
{
   "NetworkAnalyzerConfigurationList": [ 
      { 
         "Arn": "arn:aws:iotwireless:us-east-1:123456789012:NetworkAnalyzerConfiguration/12345678-a1b2-3c45-67d8-e90fa1b2c34d",
         "Name": "My_Network_Analyzer_Config1"
      },
      { 
         "Arn": "arn:aws:iotwireless:us-east-1:123456789012:NetworkAnalyzerConfiguration/90123456-a1a2-9a87-65b4-c12bf3c2d09a",
         "Name": "My_Network_Analyzer_Config2"
      }
   ]
}
```

**Excluir a configuração do analisador de rede**  
Você pode excluir uma configuração que não esteja mais usando com a operação de API [DeleteNetworkAnalyzerConfiguration](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_DeleteNetworkAnalyzerConfiguration.html) ou o comando da CLI [delete-network-analyzer-configuration](https://docs.aws.amazon.com/cli/latest/reference/iotwireless/delete-network-analyzer-configuration.html).

```
aws iotwireless delete-network-analyzer-configuration \ 
    --configuration-name My_NetworkAnalyzer_Config
```

A execução desse comando não retorna nenhuma saída. Para ver as configurações disponíveis, você pode usar a operação de API `ListNetworkAnalyzerConfigurations`.

## Próximas etapas
<a name="network-analyzer-create-next"></a>

Agora que criou uma configuração do analisador de rede, você pode adicionar recursos à sua configuração ou atualizar as definições de configuração. Para ter mais informações, consulte [Adicionar recursos e atualizar a configuração do analisador de rede](network-analyzer-resources.md). 

# Adicionar recursos e atualizar a configuração do analisador de rede
<a name="network-analyzer-resources"></a>

Para poder ativar as mensagens de rastreamento, adicione os recursos à configuração. É possível utilizar uma única configuração padrão do analisador de rede. O AWS IoT Core for LoRaWAN atribui o nome **NetworkAnalyzerConfig\$1Default** a essa configuração, e esse campo não pode ser editado. Essa configuração é adicionada automaticamente ao Conta da AWS quando você utiliza o analisador de rede no console.

É possível adicionar os recursos que deseja monitorar à configuração padrão. Os recursos podem ser dispositivos LoRaWAN e gateways LoRaWAN. Para adicionar cada recurso à configuração, utilize o gateway sem fio e os identificadores dos dispositivos sem fio.

## Definições de configuração
<a name="resources-config-settings"></a>

Para definir as configurações, primeiro adicione recursos à configuração padrão e ative as mensagens de rastreamento. Após o recebimento dos logs de mensagens de rastreamento, também é possível personalizar os parâmetros a seguir para atualizar a configuração padrão e filtrar o fluxo de logs.
+ 

**Informações sobre o quadro**  
Essa configuração são as informações de quadro dos recursos de dispositivos sem fio para mensagens de rastreamento. As informações de quadro são habilitadas por padrão e podem ser utilizadas para depurar a comunicação entre o servidor de rede e os dispositivos finais.
+ 

**Níveis de log**  
Você pode ver os logs de informações ou de erros, ou pode desativar o log.
  + 

**Informações**  
Os logs com o nível **Informações** são mais detalhados e contêm fluxos de logs tanto informativos como de erros. Os logs informativos podem ser utilizados para visualizar alterações no estado de um dispositivo ou de um gateway.
**nota**  
A coleta de fluxos de logs mais detalhados pode gerar custos adicionais. Para obter mais informações sobre a definição de preço, consulte [Definição de preço do AWS IoT Core](https://aws.amazon.com/iot-core/pricing/). 
  + 

**Erro**  
Os logs com um nível de log de **Erro** são menos detalhados e exibem somente informações de erro. Você pode usar esses logs quando um aplicativo tem um erro, como um erro de conexão do dispositivo. Ao usar as informações do fluxo de logs, você pode identificar e solucionar erros nos recursos da sua frota. 

## Pré-requisitos
<a name="resources-prereq"></a>

Para poder adicionar recursos, os gateways e dispositivos a serem monitorados já devem estar integrados ao AWS IoT Core for LoRaWAN. Para ter mais informações, consulte [Conectar gateways e dispositivos ao AWS IoT Core for LoRaWAN](lorawan-getting-started.md).

## Adicionar recursos e atualizar a configuração do analisador de rede com o console
<a name="add-resources-console"></a>

É possível adicionar recursos e personalizar os parâmetros opcionais utilizando o console do AWS IoT ou a API do AWS IoT Wireless. Além dos recursos, você também pode editar as definições de configuração e salvar a configuração atualizada.

**Como adicionar recursos à configuração (console)**  


1. Abra o [Hub do analisador de rede no console do AWS IoT](https://console.aws.amazon.com/iot/home#/wireless/networkAnalyzer) e escolha a configuração do analisador de rede, **NetworkAnalyzerConfig\$1Default**.

1. Selecione **Adicionar recursos**.

1. Adicione os recursos que deseja monitorar usando o gateway sem fio e os identificadores de dispositivos sem fio. É possível adicionar até 250 gateways ou dispositivos sem fio. Para adicionar o recurso:

   1. Utilize a guia **Visualizar gateways** ou **Visualizar dispositivos** para ver a lista de gateways e dispositivos que você adicionou ao Conta da AWS.

   1. Copie o `WirelessDeviceID` ou o `WirelessGatewayID` do dispositivo ou do gateway que você deseja monitorar e insira o valor do identificador para o recurso correspondente.

   1. Para continuar a adicionar recursos, escolha **Adicionar gateway** ou **Adicionar dispositivo** e adicione o gateway ou dispositivo sem fio. Se você adicionou um recurso que não deseja mais monitorar, escolha **Remover recurso**.

1. Depois de adicionar todos os recursos, escolha **Adicionar**.

   Você verá o número de gateways e dispositivos que adicionou na **página Hub do analisador de rede**. É possível continuar adicionando gateways e dispositivos até que a sessão de rastreamento de mensagens seja ativada. Depois que a sessão for ativada, para adicionar recursos, será necessário desativar a sessão.

**Como editar a configuração do analisador de rede (console)**  
É possível editar a configuração do analisador de rede e escolher se deseja desabilitar as informações de quadro e o nível de log das mensagens de rastreamento. 

1. Abra o [Hub do analisador de rede no console do AWS IoT](https://console.aws.amazon.com/iot/home#/wireless/networkAnalyzer) e escolha a configuração do analisador de rede, **NetworkAnalyzerConfig\$1Default**.

1. Selecione a opção **Editar**.

1. Escolha se deseja desativar as informações do quadro e use **Selecionar níveis de log** para escolher os níveis de log que você deseja usar para os logs de mensagens de rastreamento. Escolha **Salvar**.

   Você verá as definições de configuração especificadas na página de detalhes da configuração do analisador de rede.

## Adicionar recursos e atualizar a configuração do analisador de rede com a API
<a name="network-analyzer-add-resources-api"></a>

É possível utilizar as [operações de API do AWS IoT Wireless](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/) ou os [comandos da CLI do AWS IoT Wireless](https://docs.aws.amazon.com/cli/latest/reference/iotwireless/index.html) para adicionar recursos e atualizar as configurações do analisador de rede.
+ Para adicionar recursos ou atualizar a configuração do analisador de rede, utilize a API [UpdateNetworkAnalyzerConfiguration](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_UpdateNetworkAnalyzerConfiguration.html) ou o comando [update-network-analyzer-configuration](https://docs.aws.amazon.com/cli/latest/reference/iotwireless/update-network-analyzer-configuration.html) da CLI.
  + 

**Adicionar recursos**  
Para os dispositivos sem fio que você deseja adicionar, utilize `WirelessDevicesToAdd` para inserir o `WirelessDeviceID` dos dispositivos como uma matriz de strings. Para os gateways sem fio que você deseja adicionar, utilize `WirelessGatewaysToAdd` para inserir o `WirelessGatewayID` dos gateways como uma matriz de strings.
  + 

**Editar a configuração**  
Para editar a configuração do analisador de rede, utilize o parâmetro `TraceContent` para especificar se `WirelessDeviceFrameInfo` deve ser `ENABLED` ou `DISABLED`, e se o parâmetro `LogLevel` deve ser `INFO`, `ERROR` ou `DISABLED`. 

  ```
  {
     "TraceContent": { 
        "LogLevel": "string",
        "WirelessDeviceFrameInfo": "string"
     },
     "WirelessDevicesToAdd": [ "string" ],
     "WirelessDevicesToRemove": [ "string" ],
     "WirelessGatewaysToAdd": [ "string" ],
     "WirelessGatewaysToRemove": [ "string" ]
  }
  ```
+ Para obter informações sobre a configuração e os recursos adicionados, utilize a operação de API [GetNetworkAnalyzerConfiguration](https://docs.aws.amazon.com/iot-wireless/2020-11-22/apireference/API_UpdateNetworkAnalyzerConfiguration.html) ou o comando [get-network-analyzer-configuration](https://docs.aws.amazon.com/cli/latest/reference/iotwireless/get-network-analyzer-configuration.html). Forneça o nome da configuração do analisador de rede, `NetworkAnalyzerConfig_Default`, como entrada.

## Próximas etapas
<a name="network-analyzer-resources-next"></a>

Agora que adicionou recursos e especificou todas as definições opcionais para a configuração, é possível utilizar o protocolo WebSocket para estabelecer uma conexão com o AWS IoT Core for LoRaWAN e utilizar o analisador de rede. Em seguida, você pode ativar as mensagens de rastreamento e começar a receber essas mensagens para os recursos. Para ter mais informações, consulte [Transmitir mensagens de rastreamento do analisador de rede com WebSockets](network-analyzer-api.md).

# Transmitir mensagens de rastreamento do analisador de rede com WebSockets
<a name="network-analyzer-api"></a>

Ao usar o protocolo WebSocket, você pode transmitir mensagens de rastreamento do analisador de rede em tempo real. Quando você envia uma solicitação, o serviço responde com uma estrutura JSON. Depois de ativar as mensagens de rastreamento, você pode usar os logs de mensagens para obter informações sobre os recursos e solucionar erros. Para obter mais informações, consulte [Protocolo WebSocket](https://tools.ietf.org/html/rfc6455).

A seguir, é mostrado como transmitir mensagens de rastreamento do analisador de rede com WebSockets.

**Topics**
+ [Gerar uma solicitação pré-assinada com a biblioteca WebSocket](network-analyzer-generate-request.md)
+ [Mensagens e códigos de status do WebSocket](network-analyer-messages-status.md)

# Gerar uma solicitação pré-assinada com a biblioteca WebSocket
<a name="network-analyzer-generate-request"></a>

A seguir, descrevemos como gerar uma solicitação pré-assinada para que seja possível utilizar a biblioteca WebSocket para enviar solicitações ao serviço.

## Adicionar uma política para solicitações WebSocket ao perfil do IAM
<a name="network-analyzer-iam"></a>

Para usar o protocolo WebSocket para chamar o analisador de rede, anexe a política a seguir ao perfil do AWS Identity and Access Management (IAM) que faz a solicitação. 

```
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "iotwireless:StartNetworkAnalyzerStream",
            "Resource": "*"
        }
    ]
}
```

## Criar um URL pré-assinado
<a name="network-analyzer-presigned-url"></a>

Crie um URL para a solicitação WebSocket que contenha as informações necessárias para configurar a comunicação entre o aplicativo e o analisador de rede. Para verificar a identidade da solicitação, o streaming WebSocket usa o processo do Amazon Signature versão 4 para assinar solicitações. Para obter mais informações sobre o Signature versão 4, consulte [Assinar solicitações de API da AWS](https://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html) na *Referência geral do Amazon Web Services*.

Para chamar o analisador de rede, use o URL de solicitação `StartNetworkAnalyzerStream`. A solicitação será assinada usando as credenciais do perfil do IAM mencionado anteriormente. O URL tem o formato a seguir com quebras de linha adicionadas para facilitar a leitura.

```
GET wss://api.iotwireless.<region>.amazonaws.com/start-network-analyzer-stream?X-Amz-Algorithm=AWS4-HMAC-SHA256
   &X-Amz-Credential=Signature Version 4 credential scope
   &X-Amz-Date=date
   &X-Amz-Expires=time in seconds until expiration
   &X-Amz-Security-Token=security-token
   &X-Amz-Signature=Signature Version 4 signature 
   &X-Amz-SignedHeaders=host
```

Use os valores a seguir para os parâmetros de Signature versão 4:
+ **X-Amz-Algorithm** – O algoritmo que você está usando no processo de assinatura. O único valor válido é `AWS4-HMAC-SHA256`.
+ **X-Amz-Credential** – Uma string separada por barras ("/") formada concatenando o ID de chave de acesso e os componentes de escopo de credencial. O escopo de credencial inclui a data no formato AAAAMMDD, a Região da AWS, o nome do serviço e uma string de terminação (aws4\$1request).
+ **X-Amz-Date** – A data e a hora em que a assinatura foi criada. Gere a data e a hora seguindo as instruções em [Tratamento de datas no Signature versão 4](https://docs.aws.amazon.com/general/latest/gr/sigv4-date-handling.html) na *Referência geral do Amazon Web Services*.
+ **X-Amz-Expires** – O tempo, em segundos, até que as credenciais expirem. O valor máximo é de 300 segundos (5 minutos).
+ **X-Amz-Security-Token** – (opcional) Um token do Signature versão 4 para credenciais temporárias. Se você especificar esse parâmetro, inclua-o na solicitação canônica. Para obter mais informações, consulte [Solicitação de credenciais de segurança temporárias](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_request.html) no *Guia do usuário do AWS Identity and Access Management*.
+ **X-Amz-Signature** – A assinatura do Signature versão 4 que você gerou para a solicitação.
+ **X-Amz-SignedHeaders** – Os cabeçalhos que são assinados ao criar a assinatura para a solicitação. O único valor válido é `host`.

## Crie o URL da solicitação e crie a assinatura do Signature versão 4
<a name="connect-iot-network-analyzer-construct-url-sign"></a>

Para criar o URL para a solicitação e criar a assinatura do Signature versão 4, siga as etapas a seguir. Os exemplos estão em pseudocódigo.

### Tarefa 1: Criar uma solicitação canônica
<a name="canonical-request"></a>

Crie uma string que inclua as informações da solicitação em um formato padronizado. Isso garante que quando a AWS receber a solicitação, ela poderá calcular a mesma assinatura que você calcular em [Tarefa 3: Calcular a assinatura](#calculate-signature). Para obter mais informações, consulte [Criar uma solicitação canônica para o Signature versão 4](https://docs.aws.amazon.com/general/latest/gr/sigv4-create-canonical-request.html) na *Referência geral do Amazon Web Services*.

1. Defina variáveis para a solicitação no seu aplicativo.

   ```
   # HTTP verb
   method = "GET"
   # Service name
   service = "iotwireless"
   # Região da AWS
   region = "Região da AWS"
   # Service streaming endpoint
   endpoint = "wss://api.iotwireless.region.amazonaws.com"
   # Host
   host = "api.iotwireless.<region>.amazonaws.com"
   # Date and time of request
   amz-date = YYYYMMDD'T'HHMMSS'Z'
   # Date without time for credential scope
   datestamp = YYYYMMDD
   ```

1. Crie um URI canônico (identificador uniforme de recursos). O URI canônico é a parte do URI entre o domínio e a string de consulta.

   ```
   canonical_uri = "/start-network-analyzer-stream"
   ```

1. Crie cabeçalhos canônicos e cabeçalhos assinados. Observe o `\n` que aparece no final dos cabeçalhos canônicos.
   + Anexe o nome do cabeçalho em minúscula seguido por dois pontos.
   + Anexe uma lista separada por vírgulas de valores para esse cabeçalho. Não classifique os valores em cabeçalhos que têm vários valores.
   + Anexe uma nova linha (`\n`).

   ```
   canonical_headers = "host:" + host + "\n"
   signed_headers = "host"
   ```

1. Faça uma correspondência entre o algoritmo e o algoritmo de hash. Você deve usar SHA-256.

   ```
   algorithm = "AWS4-HMAC-SHA256"
   ```

1. Crie o escopo da credencial, que define o escopo da chave derivada como a data, a Região e o serviço ao qual a solicitação foi feita.

   ```
   credential_scope = datestamp + "/" + region + "/" + service + "/" + "aws4_request"
   ```

1. Crie a string de consulta canônica. Os valores de string de consulta devem ser codificados por URI e classificados por nome.
   + Classifique os nomes de parâmetro por ponto de código de caracteres em ordem ascendente. Parâmetros com nomes duplicados devem ser classificados pelo valor. Por exemplo, um nome de parâmetro que começa com a letra maiúscula F precede um nome de parâmetro que começa com uma letra minúscula b.
   + Não codifique em URI nenhum dos caracteres não reservados definidos pela [RFC 3986](https://datatracker.ietf.org/doc/html/rfc3986): A–Z, a–z, 0–9, hífen ( - ), sublinhado ( \$1 ), ponto ( . ) e til ( \$1 ).
   + Codifique em percentual todos os outros caracteres com %XY, em que X e Y são caracteres hexadecimais (de 0 a 9 e maiúsculas de A a F). Por exemplo, o caractere de espaço deve ser codificado como %20 (não usando '\$1', como alguns esquemas de codificação) e deve haver caracteres UTF-8 estendidos na forma %XY%ZA%BC.
   + Codifique duas vezes todos os caracteres de sinal de igual (=) em valores de parâmetro.

   ```
   canonical_querystring  = "X-Amz-Algorithm=" + algorithm
   canonical_querystring += "&X-Amz-Credential="+ URI-encode(access key + "/" + credential_scope)
   canonical_querystring += "&X-Amz-Date=" + amz_date 
   canonical_querystring += "&X-Amz-Expires=300"
   canonical_querystring += "&X-Amz-Security-Token=" + token
   canonical_querystring += "&X-Amz-SignedHeaders=" + signed_headers
   canonical_querystring += "&language-code=en-US&media-encoding=pcm&sample-rate=16000"
   ```

1. Crie um hash da carga útil. Para uma solicitação GET, a carga útil é uma string vazia.

   ```
   payload_hash = HashSHA256(("").Encode("utf-8")).HexDigest()
   ```

1. Combine todos os elementos para criar a solicitação canônica.

   ```
   canonical_request = method + '\n' 
      + canonical_uri + '\n' 
      + canonical_querystring + '\n' 
      + canonical_headers + '\n' 
      + signed_headers + '\n' 
      + payload_hash
   ```

### Tarefa 2: Criar a string para assinar
<a name="create-urlsign"></a>

A string para assinar inclui metainformações sobre sua solicitação. Você usará a string para assinar na próxima etapa, quando calcular a assinatura da solicitação. Para obter mais informações, consulte [Criar uma string para assinar o Signature versão 4](https://docs.aws.amazon.com/general/latest/gr/sigv4-create-string-to-sign.html) na *Referência geral do Amazon Web Services*.

```
string_to_sign=algorithm + "\n"
   + amz_date + "\n"
   + credential_scope + "\n"
   + HashSHA256(canonical_request.Encode("utf-8")).HexDigest()
```

### Tarefa 3: Calcular a assinatura
<a name="calculate-signature"></a>

Você derivará uma chave de assinatura da sua chave de acesso secreta da AWS. Para obter um grau maior de proteção, a chave derivada é específica à data, ao serviço e à Região da AWS. Você usa a chave derivada para assinar a solicitação. Para obter mais informações, consulte [Calcular a assinatura do Signature versão 4 da AWS](https://docs.aws.amazon.com/general/latest/gr/sigv4-calculate-signature.html) na *Referência geral do Amazon Web Services*.

O código pressupõe que você tenha implementado a função `GetSignatureKey` para gerar uma chave de assinatura. Para obter mais informações e exemplos de funções, consulte [Exemplos de como derivar uma chave de assinatura do Signature versão 4](https://docs.aws.amazon.com/general/latest/gr/signature-v4-examples.html) na *Referência geral do Amazon Web Services*.

A função `HMAC(key, data)` representa uma função HMAC-SHA256 que retorna os resultados em formato binário.

```
#Create the signing key
signing_key = GetSignatureKey(secret_key, datestamp, region, service)
                
# Sign the string_to_sign using the signing key
signature = HMAC.new(signing_key, (string_to_sign).Encode("utf-8"), Sha256()).HexDigest
```

### Tarefa 4: Adicionar informações de assinatura à solicitação e criar o URL da solicitação
<a name="sign-request"></a>

Depois de calcular a assinatura, adicione-a à string de consulta. Para obter mais informações, consulte [Adicionar a assinatura à solicitação](https://docs.aws.amazon.com/general/latest/gr/sigv4-add-signature-to-request.html) na *Referência geral do Amazon Web Services*.

```
#Add the authentication information to the query string
canonical_querystring += "&X-Amz-Signature=" + signature
                
# Sign the string_to_sign using the signing key
request_url = endpoint + canonical_uri + "?" + canonical_querystring
```

## Próximas etapas
<a name="network-analyzer-request-next"></a>

Você pode usar o URL da solicitação com a biblioteca WebSocket para fazer a solicitação ao serviço e observar as mensagens. Para ter mais informações, consulte [Mensagens e códigos de status do WebSocket](network-analyer-messages-status.md).

# Mensagens e códigos de status do WebSocket
<a name="network-analyer-messages-status"></a>

Depois de criar uma solicitação pré-assinada, você pode usar o URL da solicitação com a biblioteca WebSocket ou com uma biblioteca adequada à sua linguagem de programação para fazer solicitações ao serviço. Para obter mais informações sobre como gerar essa solicitação pré-assinada, consulte [Gerar uma solicitação pré-assinada com a biblioteca WebSocket](network-analyzer-generate-request.md).

## Mensagens WebSocket
<a name="network-analyer-messages"></a>

O protocolo WebSocket pode ser usado para estabelecer uma conexão bidirecional. As mensagens podem ser transmitidas de cliente para servidor e de servidor para cliente. No entanto, o analisador de rede suporta somente mensagens enviadas do servidor para o cliente. Qualquer mensagem recebida do cliente é inesperada e o servidor encerrará automaticamente a conexão do WebSocket se uma mensagem for recebida do cliente.

Quando a solicitação é recebida e uma sessão de rastreamento de mensagens é iniciada, o servidor responde com uma estrutura JSON, que é a carga útil. Para obter mais informações sobre a carga útil e como você pode ativar o rastreamento de mensagens a partir do Console de gerenciamento da AWS, consulte [Visualize e monitore os logs de mensagens de rastreamento do analisador de rede em tempo real](network-analyzer-logs.md).

## Códigos de status WebSocket
<a name="network-analyer-status-codes"></a>

O seguinte mostra os códigos de status do WebSocket para a comunicação do servidor com o cliente. Os códigos de status do WebSocket seguem o [Padrão RFC de encerramento normal de conexões](https://datatracker.ietf.org/doc/html/rfc6455#section-7.3).

A opção a seguir mostra os códigos de status compatíveis:
+ 

**1000**  
Esse código de status indica um encerramento normal, ou seja, que a conexão do WebSocket foi estabelecida e a solicitação foi atendida. Esse status pode ser observado quando uma sessão está ociosa, fazendo com que a conexão atinja o tempo limite.
+ 

**1.002**  
Esse código de status indica que o endpoint está encerrando a conexão devido a um erro de protocolo.
+ 

**1003**  
Esse código de status indica um status de erro em que o endpoint encerrou a conexão porque recebeu dados em um formato que não pode aceitar. O endpoint suporta somente dados de texto e pode exibir esse código de status se receber uma mensagem binária ou uma mensagem do cliente que esteja usando um formato incompatível.
+ 

**1008**  
Esse código de status indica um status de erro em que o endpoint encerrou a conexão porque recebeu uma mensagem que viola essa política. Esse status é genérico e é exibido quando os outros códigos de status, como 1003 ou 1009, não são aplicáveis. Você também verá esse status exibido se houver necessidade de ocultar a política ou quando houver uma falha na autorização, como uma assinatura expirada.
+ 

**1011**  
Esse código de status indica um status de erro em que o servidor está encerrando a conexão porque encontrou uma condição inesperada ou um erro interno que o impediu de atender à solicitação.

## Próximas etapas
<a name="network-analyzer-websockets-next"></a>

Agora que você aprendeu como gerar uma solicitação pré-assinada e como observar as mensagens do servidor usando a conexão WebSocket, você pode ativar o rastreamento de mensagens e começar a receber logs de mensagens para o gateway sem fio e os recursos do dispositivo sem fio. Para ter mais informações, consulte [Visualize e monitore os logs de mensagens de rastreamento do analisador de rede em tempo real](network-analyzer-logs.md).

# Visualize e monitore os logs de mensagens de rastreamento do analisador de rede em tempo real
<a name="network-analyzer-logs"></a>

Se adicionou recursos à configuração do analisador de rede, você pode ativar as mensagens de rastreamento para começar a receber mensagens de rastreamento para seus recursos. É possível utilizar o Console de gerenciamento da AWS, a API do AWS IoT Wireless ou a AWS CLI.

## Pré-requisitos
<a name="network-analyzer-logs-prereq"></a>

Antes de ativar o rastreamento de mensagens usando o analisador de rede, você deve ter:
+ Adicionado os recursos que deseja monitorar à configuração padrão do analisador de rede. Para ter mais informações, consulte [Adicionar recursos e atualizar a configuração do analisador de rede](network-analyzer-resources.md).
+ Gerado uma solicitação pré-assinada usando o URL da solicitação `StartNetworkAnalyzerStream`. A solicitação será assinada usando as credenciais do perfil do AWS Identity and Access Management que faz essa solicitação. Para ter mais informações, consulte [Criar um URL pré-assinado](network-analyzer-generate-request.md#network-analyzer-presigned-url).

## Ativado o rastreamento de mensagens usando o console
<a name="network-analyzer-activate-console"></a>

Para ativar o rastreamento de mensagens

1. Abra o [Hub do analisador de rede do console de AWS IoT](https://console.aws.amazon.com/iot/home#/wireless/networkAnalyzer) e escolha a configuração do analisador de rede, **NetworkAnalyzerConfig\$1Default**.

1. Na página de detalhes da configuração do analisador de rede, escolha **Ativar rastreamento de mensagens** e, em seguida, escolha **Ativar**.

   Você começará a receber mensagens de rastreamento quando a mensagem de rastreamento mais recente aparecer primeiro no console.
**nota**  
Após o início da sessão de mensagens, o recebimento de mensagens de rastreamento pode gerar custos adicionais até que você desative a sessão ou saia da sessão de rastreamento. Para obter mais informações sobre a definição de preço, consulte [Definição de preço do AWS IoT Core](https://aws.amazon.com/iot-core/pricing/).

## Visualizar e monitorar mensagens de rastreamento
<a name="network-analyzer-view-trace"></a>

Depois de ativar o rastreamento de mensagens, a conexão do WebSocket é estabelecida e as mensagens de rastreamento começam a aparecer em tempo real, primeiro as mais recentes. Você pode personalizar as preferências para especificar o número de mensagens de rastreamento a serem exibidas em cada página e exibir somente os campos relevantes para cada mensagem. Por exemplo, você pode personalizar o log de mensagens de rastreamento para mostrar somente logs de recursos de gateway sem fio que tenham o **Nível de log** definido como `ERROR`, para que você possa identificar e depurar erros com rapidez com seus gateways. As mensagens de rastreamento contêm as seguintes informações: 
+ **Número da mensagem**: um número exclusivo que mostra a última mensagem recebida primeiro.
+ **ID do recurso**: o gateway sem fio ou ID do dispositivo sem fio do recurso.
+ **Carimbo de data/hora**: a hora em que a mensagem foi recebida.
+ **ID da mensagem**: um identificador que o AWS IoT Core for LoRaWAN atribui a cada mensagem recebida.
+ **FPort**: a porta de frequência para comunicação com o dispositivo usando a conexão WebSocket.
+ **DevEui**: o identificador exclusivo estendido (EUI) para o dispositivo sem fio.
+ **Recurso**: se o recurso monitorado é um dispositivo sem fio ou um gateway sem fio.
+ **Evento**: o evento de uma mensagem de log para um dispositivo sem fio, que pode ser **Join**, **Rejoin**, **Uplink\$1Data**, **Downlink\$1Data** ou **Registration**.
+ **Nível de log**: informações sobre os fluxos de logs `INFO` ou `ERROR` para o dispositivo.

## Mensagem de log JSON do analisador de rede
<a name="connect-iot-network-analyzer-trace-logs"></a>

Você também pode escolher uma mensagem de rastreamento por vez para visualizar a carga útil JSON dessa mensagem. Dependendo da mensagem selecionada nos logs de mensagens de rastreamento, você verá informações na carga útil JSON que indicam que há duas partes: **CustomerLog** e **LoRaFrame**.

**CustomerLog**  
A parte **CustomerLog** do JSON exibe o tipo e o identificador do recurso que recebeu a mensagem, o nível do log e o conteúdo da mensagem. O exemplo a seguir mostra uma mensagem de log **CustomerLog**. Você pode usar o campo `message` no JSON para obter mais informações sobre o erro e como ele pode ser resolvido.

**LoRaFrame**  
A parte **LoRaFrame** do JSON tem um **ID de mensagem** e contém informações sobre a carga útil física do dispositivo e os metadados sem fio.

O exemplo a seguir mostra a estrutura da mensagem de rastreamento.

```
export type TraceMessage = {
  ResourceId: string;
  Timestamp: string;
  LoRaFrame: 
  {
    MessageId: string;
    PhysicalPayload: any;
    WirelessMetadata: 
    {
      fPort: number;
      dataRate: number;
      devEui: string;
      frequency: number,
      timestamp: string;
    },
  }
  CustomerLog: 
  {
    resource: string;
    wirelessDeviceId: string;
    wirelessDeviceType: string;
    event: string;
    logLevel: string;
    messageId: string;
    message: string;
  },
};
```

## Revisão e próximas etapas
<a name="network-analyzer-review"></a>

Nesta seção, você visualizou mensagens de rastreamento e aprendeu como usar as informações para depurar erros. Depois de ver todas as mensagens, você pode:
+ 

**Desativar o rastreamento de mensagens**  
Para evitar custos adicionais, você pode desativar a sessão de rastreamento de mensagens. A desativação da sessão desconecta a conexão WebSocket para que você não receba nenhuma mensagem de rastreamento adicional. Você ainda pode continuar a visualizar as mensagens existentes no console.
+ 

**Edite as informações do quadro para a configuração**  
Você pode editar a configuração do analisador de rede e escolher se deseja desativar as informações do quadro e escolher os níveis de log para suas mensagens. Antes de atualizar a configuração, considere desativar a sessão de rastreamento de mensagens. Para fazer essas edições, abra a [página de detalhes do analisador de rede no console de AWS IoT](https://console.aws.amazon.com/iot/home#/wireless/networkAnalyzer/details/NetworkAnalyzerConfig_Default) e escolha **Editar**. Em seguida, você pode atualizar a configuração com as novas definições de configuração e ativar o rastreamento de mensagens para ver as mensagens atualizadas.
+ 

**Adicionar recursos à configuração**  
Você também pode adicionar mais recursos à configuração do analisador de rede e monitorá-los em tempo real. Você pode adicionar um total combinado de 250 recursos de gateway sem fio e dispositivo sem fio. Para adicionar recursos, na [página de detalhes do analisador de rede do console de AWS IoT](https://console.aws.amazon.com/iot/home#/wireless/networkAnalyzer/details/NetworkAnalyzerConfig_Default), escolha a guia **Recursos** e **Adicionar recursos**. Em seguida, você pode atualizar a configuração com os novos recursos e ativar o rastreamento de mensagens para ver as mensagens atualizadas dos recursos adicionais.

Para obter mais informações sobre como atualizar a configuração do analisador de rede editando as definições de configuração e adicionando recursos, consulte [Adicionar recursos e atualizar a configuração do analisador de rede](network-analyzer-resources.md).

# Depure e solucione problemas de seus grupos multicast e tarefas FUOTA usando o analisador de rede
<a name="lorawan-network-analyzer-fuota"></a>

Os recursos sem fio que você pode monitorar incluem dispositivos LoRaWAN, gateways LoRaWAN e grupos multicast. Você também pode usar o analisador de rede para depurar e solucionar quaisquer problemas com a tarefa FUOTA. Você também pode monitorar e rastrear mensagens relacionadas à configuração, transmissão de dados e consulta de status quando a tarefa FUOTA está em andamento. 

Para monitorar a tarefa FUOTA, se a tarefa contiver grupos multicast, você deverá adicionar o grupo multicast e os dispositivos no grupo à configuração do analisador de rede. Ative também as informações de quadros e de quadros multicast para rastrear as mensagens unicast e multicast de uplink e downlink trocadas com o grupo multicast e os dispositivos enquanto a tarefa FUOTA estiver em andamento.

Para monitorar grupos multicast, é possível adicioná-los à configuração do analisador de rede e utilizar as informações de quadros multicast para solucionar problemas de mensagens multicast de downlink enviadas a esses grupos. Para solucionar problemas de dispositivos que estão tentando se juntar a um grupo em que a comunicação unicast é utilizada, inclua esses dispositivos também na configuração do analisador de rede. Para monitorar somente a comunicação unicast com os dispositivos do grupo, ative as informações do quadro para os dispositivos sem fio. Essa abordagem garante monitoramento e diagnóstico abrangentes para grupos multicast e dispositivos que estão se juntando ao grupo. 

As seções a seguir descrevem como depurar e solucionar problemas de grupos multicast e tarefas FUOTA usando o analisador de rede.

**Topics**
+ [Depurar tarefas FUOTA que contêm dispositivos](#lorawan-network-analyzer-fuota-devices)
+ [Depure tarefas FUOTA com grupos multicast](#lorawan-network-analyzer-fuota-multicast)
+ [Depure dispositivos que estão tentando se juntar a um grupo multicast](#lorawan-network-analyzer-fuota-multicast)
+ [Depurar uma sessão de grupo multicast](#lorawan-network-analyzer-fuota-multicastsession)

## Depurar tarefas FUOTA que contêm dispositivos
<a name="lorawan-network-analyzer-fuota-devices"></a>

Você pode usar o analisador de rede para depurar uma tarefa FUOTA que tenha apenas dispositivos LoRaWAN adicionados à tarefa. Para obter informações sobre como adicionar dispositivos a uma tarefa FUOTA, consulte [Adicionar dispositivos e grupos de multicast a uma tarefa FUOTA e agendar uma sessão FUOTA](lorawan-fuota-add-devices.md). Para depurar a tarefa FUOTA, execute as seguintes etapas:

1. Crie uma configuração do analisador de rede ativando as informações de quadros para os dispositivos sem fio, para que seja possível monitorar as mensagens FUOTA de uplink e downlink trocadas com os dispositivos enquanto a tarefa está em andamento.

1. Adicione os dispositivos na tarefa FUOTA à configuração do analisador de rede usando os identificadores de dispositivos sem fio.

1. Ative o rastreamento de mensagens para começar a receber mensagens de rastreamento para os dispositivos na configuração do analisador de rede.

Na coluna `applicationCommandType` das informações da mensagem de rastreamento, você começará a receber mensagens unicast de downlink relacionadas à configuração de transmissão e fragmentação de dados.

**nota**  
Se você não vir a coluna `applicationCommandType` na tabela de mensagens de rastreamento, poderá ajustar as configurações para mostrar essa coluna na tabela.

Você também pode ver `applicationCommandType` e outras mensagens detalhadas na mensagem de log JSON em **WirelessMetadata > ApplicationInfo**.

## Depure tarefas FUOTA com grupos multicast
<a name="lorawan-network-analyzer-fuota-multicast"></a>

Você pode usar o analisador de rede para depurar uma tarefa FUOTA que tenha grupos multicast e dispositivos LoRaWAN adicionados ao grupo. Para obter informações sobre como adicionar dispositivos a uma tarefa FUOTA, consulte [Adicionar dispositivos e grupos de multicast a uma tarefa FUOTA e agendar uma sessão FUOTA](lorawan-fuota-add-devices.md). Para depurar a tarefa FUOTA, execute as seguintes etapas:

1. Crie uma configuração do analisador de rede ativando as configurações de informações do quadro e de informações do quadro multicast para os dispositivos sem fio e grupos multicast.

1. Adicione o grupo multicast na tarefa FUOTA à configuração do analisador de rede usando o identificador de grupo multicast. Ao ativar as informações do quadro multicast, você pode depurar a mensagem de dados do firmware e as mensagens de consulta de status FUOTA que são enviadas ao grupo enquanto a tarefa FUOTA está em andamento.

1. Adicione os dispositivos no grupo multicast à configuração do analisador de rede usando os identificadores de dispositivos sem fio. Ao ativar as informações do quadro, você pode monitorar as mensagens de uplink e downlink que são trocadas diretamente com os dispositivos enquanto a tarefa FUOTA está em andamento.

1. Ative o rastreamento de mensagens para começar a receber mensagens de rastreamento para os dispositivos e grupos multicast na configuração do analisador de rede.

É possível visualizar as mensagens de rastreamento e depurá-las utilizando a coluna `applicationCommandType` da tabela de mensagens de rastreamento e usando os detalhes na mensagem do log JSON, conforme descrito em [Depurar tarefas FUOTA que contêm dispositivos](#lorawan-network-analyzer-fuota-devices).

## Depure dispositivos que estão tentando se juntar a um grupo multicast
<a name="lorawan-network-analyzer-fuota-multicast"></a>

Você pode usar o analisador de rede para depurar dispositivos que estão tentando se juntar a um grupo multicast. Para obter informações sobre como adicionar dispositivos a um grupo multicast, consulte [Criar grupos de multicast e adicionar dispositivos ao grupo](lorawan-create-multicast-groups.md). Para depurar o grupo multicast, execute as seguintes etapas:

1. Crie uma configuração do analisador de rede ativando as informações do quadro para os dispositivos sem fio.

1. Adicione os dispositivos que deseja monitorar à configuração do analisador de rede usando os identificadores de dispositivos sem fio.

1. Ative o rastreamento de mensagens para começar a receber mensagens de rastreamento para os dispositivos na configuração do analisador de rede.

1. Comece a associar os dispositivos ao grupo multicast depois que as mensagens de rastreamento forem ativadas para os dispositivos do grupo.

## Depurar uma sessão de grupo multicast
<a name="lorawan-network-analyzer-fuota-multicastsession"></a>

Você pode usar o analisador de rede para depurar uma sessão de grupo multicast. Para ter mais informações, consulte [Agendar uma mensagem de downlink para enviar para os dispositivos de um grupo de multicast](lorawan-multicast-schedule-downlink.md). Para depurar uma sessão de grupo multicast, execute as seguintes etapas:

1. Crie uma configuração do analisador de rede ativando as informações do quadro multicast para o grupo multicast.

1. Adicione o grupo multicast que deseja monitorar à configuração do analisador de rede usando o identificador de grupo multicast.

1. Antes do início da sessão multicast, ative o rastreamento de mensagens para começar a receber mensagens de rastreamento para a sessão de grupo multicast.

1. Inicie a sessão do grupo multicast e monitore o status visualizando as mensagens que são exibidas na tabela de mensagens de rastreamento e na mensagem de log JSON.

Na tabela de mensagens de rastreamento, `MulticastAddr` será exibido na coluna `DevAddr`. Na mensagem de log JSON, você pode visualizar informações detalhadas como `MulticastGroupId` em **WirelessMetadata > ApplicationInfo**.