Configurar o registro em log para recursos do AWS IoT Wireless
Para configurar o registro em log de recursos do AWS IoT Wireless, use a API ou a CLI. Quando você começar a monitorar recursos do AWS IoT Wireless, é possível usar a configuração padrão. Para fazer isso, pule este tópico e avance para Monitorar o AWS IoT Wireless com o CloudWatch Logs para monitorar seus logs.
Depois de começar a monitorar os logs, é possível usar a CLI para alterar os níveis de log para uma opção mais detalhada, como fornecer informações de INFO
e ERROR
e ativar o registro em log para obter mais recursos.
Recursos e níveis de log do AWS IoT Wireless
Antes de usar a API ou a CLI, use a tabela a seguir para saber mais sobre os diferentes níveis de log e os recursos para os quais você pode configurar o registro em log. A tabela exibe parâmetros que você vê nos logs do CloudWatch ao monitorar recursos. A forma como você configura o registro em log para seus recursos determinará os logs que presentes no console.
Para obter informações sobre a aparência de uma amostra de logs do CloudWatch e como você pode usar esses parâmetros para registrar em log informações úteis sobre os recursos do AWS IoT Wireless, consulte Visualizar entradas de log do AWS IoT Wireless no CloudWatch.
Recursos e níveis de log | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Nome | Possíveis valores | Descrição | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
logLevel |
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
resource |
|
O tipo do recurso, que pode ser |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wirelessGatewayType |
LoRaWAN |
O tipo de gateway sem fio, quando resource é WirelessGateway , que é sempre LoRaWAN. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wirelessDeviceType |
LoRaWAN ou Sidewalk |
O tipo do dispositivo sem fio, quando resource é WirelessDevice , que pode ser LoRaWAN ou Sidewalk . |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wirelessGatewayId |
- | O identificador do gateway sem fio, quando resource é WirelessGateway . |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wirelessDeviceId |
- | O identificador do dispositivo sem fio, quando resource é WirelessDevice . |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
event |
Join , Rejoin , Registration , Uplink_data , Downlink_data , CUPS_Request , e Certificate |
O tipo de evento que está sendo registrado em log, que depende se o recurso que você está registrando em log é um dispositivo sem fio ou um gateway sem fio. Para ter mais informações, consulte Visualizar entradas de log do AWS IoT Wireless no CloudWatch. |
API de registro em log do AWS IoT Wireless
É possível usar as seguintes ações de API para configurar o registro em log de recursos. A tabela também exibe um exemplo de política do IAM que você precisa criar para usar as ações de API. A seção a seguir descreve como usar as APIs para configurar níveis de log de recursos.
Ações de API de registro em log | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Nome da API | Descrição | Exemplo de política do IAM | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Retorna os níveis de log padrão atuais ou os níveis de log por tipo de recurso, que podem incluir opções de log para dispositivos sem fio ou gateways sem fio. |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Retorna a substituição em nível de log de um determinado identificador e tipo de recurso. O recurso pode ser um gateway sem fio ou um dispositivo sem fio. |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Define a substituição em nível de log de um determinado identificador e tipo de recurso. O recurso pode ser um gateway sem fio ou um dispositivo sem fio. notaEssa API tem um limite de 200 substituições em nível de log por conta. |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Remove as substituições em nível de log de todos os recursos, o que inclui gateways sem fio e dispositivos sem fio. notaEssa API não afeta os níveis de log definidos através da API |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Remove a substituição em nível de log de um determinado identificador e tipo de recurso. O recurso pode ser um gateway sem fio ou um dispositivo sem fio. |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Define o nível de log padrão ou níveis de log por tipo de recurso. É possível usar essa API para opções de log para dispositivos sem fio ou gateways sem fio e controlar as mensagens de log que serão exibidas no CloudWatch. notaOs eventos são opcionais e o tipo de evento está atrelado ao tipo de recurso. Para ter mais informações, consulte Tipos de eventos e recursos. |
|
Configurar níveis de log de recursos usando a CLI
Esta seção descreve como configurar níveis de log para recursos do AWS IoT Wireless usando a API ou a AWS CLI.
Antes de usar a CLI:
-
Verifique se você criou a política do IAM para a API para a qual deseja executar o comando da CLI, conforme descrito anteriormente.
-
É necessário o nome do recurso da Amazon (ARN) do perfil que você deseja usar. Se precisar criar um perfil a ser usado para o registro em log, consulte Criar um perfil e uma política de log para o AWS IoT Wireless.
Por que usar o AWS CLI
Por padrão, se criar um perfil do IAM, IoTWirelessLogsRole
, como descrito em Criar um perfil e uma política de log para o AWS IoT Wireless, você verá os logs do CloudWatch no AWS Management Console com nível de log padrão de ERROR
. Para alterar o nível de log padrão para todos os recursos, ou para recursos específicos, use a API de registro em log AWS IoT Wireless ou a CLI.
Como usar a AWS CLI
As ações de API podem ser categorizadas nos tipos a seguir, dependendo se você deseja configurar os níveis de log para todos os recursos ou para recursos específicos:
-
As ações de API
GetLogLevelsByResourceTypes
eUpdateLogLevelsByResourceTypes
podem recuperar e atualizar os níveis de log de todos os recursos da sua conta que sejam de um tipo específico, como um gateway sem fio ou um dispositivo LoRaWAN ou Sidewalk. -
As ações de API
GetResourceLogLevel
,PutResourceLogLevel
eResetResourceLogLevel
podem recuperar, atualizar e redefinir os níveis de log de recursos individuais a serem especificados usando um identificador de recurso. -
A ação de API
ResetAllResourceLogLevels
redefine a substituição em nível de log paranull
para todos os recursos para os quais você especificou uma substituição em nível de log usando a APIPutResourceLogLevel
.
Como usar a CLI para configurar o registro em log de recursos específicos para o AWS IoT
nota
Também é possível executar esse procedimento com a API usando os métodos na API da AWS que correspondam aos comandos da CLI mostrados aqui.
-
Por padrão, todos os recursos têm o nível de log definido como
ERROR
. Para definir os níveis de log padrão ou os níveis de log por tipos de recursos para todos os recursos da sua conta, use o comando update-log-levels-by-resource-types. O seguinte exemplo demonstra como você pode criar um arquivo JSON, Input.json
, e usá-lo como uma entrada para o comando CLI. É possível usar esse comando para desativar seletivamente o registro em log ou substituir o nível de log padrão para tipos específicos de recursos e eventos.{ "DefaultLogLevel": "INFO", "WirelessDeviceLogOptions": [ { "Type": "Sidewalk", "LogLevel": "INFO", "Events": [ { "Event": "Registration", "LogLevel": "DISABLED" } ] }, { "Type": "LoRaWAN", "LogLevel": "INFO", "Events": [ { "Event": "Join", "LogLevel": "DISABLED" }, { "Event": "Rejoin", "LogLevel": "ERROR" } ] } ] "WirelessGatewayLogOptions": [ { "Type": "LoRaWAN", "LogLevel": "INFO", "Events": [ { "Event": "CUPS_Request", "LogLevel": "DISABLED" }, { "Event": "Certificate", "LogLevel": "ERROR" } ] } ] }
onde:
- WirelessDeviceLogOptions
-
A lista de opções de log de um dispositivo sem fio. Cada opção de log inclui o tipo de dispositivo sem fio (Sidewalk ou LoRaWAN) e uma lista de opções de log de eventos do dispositivo sem fio. Cada opção de log de eventos do dispositivo sem fio pode, opcionalmente, incluir o tipo de evento e seu nível de log.
- WirelessGatewayLogOptions
-
A lista de opções de log de um gateway sem fio. Cada opção de log inclui o tipo de gateway sem fio (LoRaWAN) e uma lista de opções de log de eventos do gateway sem fio. Cada opção de log de eventos do gateway sem fio pode, opcionalmente, incluir o tipo de evento e seu nível de log.
- DefaultLogLevel
-
O nível de log a ser usado para todos os seus recursos. Os valores válidos são:
ERROR
,INFO
eDISABLED
. O valor padrão éINFO
. - LogLevel
-
O nível de log que você deseja usar para tipos de recursos e eventos individuais. Esses níveis de log substituem o nível de log padrão, como o nível de log
INFO
para o gateway LoRaWAN, e os níveis de logDISABLED
eERROR
para os dois tipos de eventos.
Execute o seguinte comando para fornecer o arquivo
Input.json
como entrada para o comando. Esse comando não retorna nenhuma saída.aws iotwireless update-log-levels-by-resource-types \ --cli-input-json Input.json
Se quiser remover as opções de log para dispositivos sem fio e gateways sem fio, execute o seguinte comando.
{ "DefaultLogLevel":"DISABLED", "WirelessDeviceLogOptions": [], "WireslessGatewayLogOptions":[] }
-
O comando update-log-levels-by-resource-types não retorna nenhuma saída. Use o comando get-log-levels-by-resource-types
para recuperar informações de registro em log específicas do recurso. O comando retorna o nível de log padrão e as opções de log do dispositivo sem fio e do gateway sem fio. nota
O comando get-log-levels-by-resource-types não pode recuperar diretamente os níveis de log no console do CloudWatch. Você pode usar o comando get-log-levels-by-resource-types para obter as informações mais recentes de nível de log especificadas para seus recursos usando o comando update-log-levels-by-resource-types.
aws iotwireless get-log-levels-by-resource-types
Ao executar o comando a seguir, ele retorna as informações de registro em log mais recentes especificadas com update-log-levels-by-resource-types. Por exemplo, se você remover as opções de log do dispositivo sem fio, a execução de get-log-levels-by-resource-types retornará esse valor como
null
.{ "DefaultLogLevel": "INFO", "WirelessDeviceLogOptions": null, "WirelessGatewayLogOptions": [ { "Type": "LoRaWAN", "LogLevel": "INFO", "Events": [ { "Event": "CUPS_Request", "LogLevel": "DISABLED" }, { "Event": "Certificate", "LogLevel": "ERROR" } ] } ] }
-
Para controlar níveis de log de gateways sem fio individuais ou recursos de dispositivos sem fio, utilize os seguintes comandos da CLI:
Por exemplo, ao usar essas CLIs, digamos que você tenha um grande número de dispositivos ou gateways sem fio em sua conta que estão sendo registrados. Se quiser solucionar erros em apenas alguns dos dispositivos sem fio, você pode desativar o registro em log de todos os dispositivos sem fio definindo o
DefaultLogLevel
comoDISABLED
e usar o put-resource-log-level para definirLogLevel
comoERROR
somente nesses dispositivos da sua conta.aws iotwireless put-resource-log-level \ --resource-identifier --resource-type WirelessDevice --log-level ERROR
Neste exemplo, o comando define o nível de log como
ERROR
apenas para o recurso de dispositivo sem fio especificado e os logs de todos os outros recursos são desativados. Esse comando não retorna nenhuma saída. Para recuperar essas informações e verificar se os níveis de log foram definidos, use o comando get-resource-log-level. -
Na etapa anterior, depois de depurar o problema e solucionar o erro, você pode executar o comando reset-resource-log-level para redefinir o nível de log desse recurso como
null
. Caso tenha usado o comandoput-resource-log-level
para definir a substituição de nível de log para mais de um recurso de gateway ou dispositivo sem fio, como para solucionar erros em vários dispositivos, você poderá redefinir as substituições em nível de log comonull
para todos esses recursos usando o comando reset-all-resource-log-levels. aws iotwireless reset-all-resource-log-levels
Esse comando não retorna nenhuma saída. Para recuperar as informações de registro em log dos recursos, execute o comando get-resource-log-level.
Próximos Passos
Você aprendeu a criar o perfil de registro em log e usar a API do AWS IoT Wireless para configurar o registro em log para seus recursos do AWS IoT Core for LoRaWAN. Em seguida, para aprender mais sobre como monitorar suas entradas de log , acesse Monitorar o AWS IoT Wireless com o CloudWatch Logs.