Configura AWS IoT logging - AWS IoT Core

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Configura AWS IoT logging

È necessario abilitare la registrazione utilizzando il AWS IoT consoleCLI, o API prima di poter monitorare e registrare AWS IoT attività.

È possibile abilitare la registrazione per tutti AWS IoT o solo gruppi di oggetti specifici. È possibile configurare AWS IoT registrazione utilizzando il AWS IoT consoleCLI, oppureAPI; tuttavia, è necessario utilizzare CLI o API per configurare la registrazione per gruppi di oggetti specifici.

Quando si considera come configurare il AWS IoT registrazione, la configurazione di registrazione predefinita determina come AWS IoT l'attività verrà registrata se non diversamente specificato. A partire da, è possibile ottenere registri dettagliati con un livello di registro predefinito di INFO o DEBUG. Dopo aver esaminato i registri iniziali, è possibile modificare il livello di registro predefinito su un livello meno dettagliato, ad esempio WARN o ERROR e impostare un livello di registro più dettagliato specifico delle risorse per le risorse che potrebbero richiedere maggiore attenzione. I livelli di log possono essere modificati ogni volta che vuoi.

Questo argomento tratta l'accesso lato cloud AWS IoT. Per informazioni sulla registrazione e il monitoraggio lato dispositivo, consulta Caricare i log lato dispositivo su. CloudWatch

Per informazioni sulla registrazione e il monitoraggio AWS IoT Greengrass, vedi Registrazione e monitoraggio AWS IoT Greengrass. A partire dal 30 giugno 2023, il AWS IoT Greengrass Il software principale è migrato a AWS IoT Greengrass Version 2.

Configurare il ruolo e il criterio di registrazione

Prima di poter abilitare l'accesso AWS IoT, è necessario creare un IAM ruolo e una politica che forniscano AWS autorizzazione al monitoraggio AWS IoT attività per tuo conto. Puoi anche generare un IAM ruolo con le politiche necessarie nella sezione Log del AWS IoT console.

Nota

Prima di abilitare AWS IoT registrazione, assicurati di aver compreso le autorizzazioni di accesso ai CloudWatch registri. Gli utenti con accesso ai CloudWatch registri possono visualizzare le informazioni di debug dai tuoi dispositivi. Per ulteriori informazioni, consulta Authentication and Access Control for Amazon CloudWatch Logs.

Se prevedi modelli di traffico elevati in AWS IoT Core a causa dei test di carico, prendi in considerazione la possibilità di disattivare la registrazione IoT per evitare il throttling. Se viene rilevato un traffico elevato, il nostro servizio potrebbe disabilitare l'accesso al tuo account.

Di seguito viene illustrato come creare un ruolo e una politica di registrazione per AWS IoT Core risorse.

Creazione di un ruolo di logging

Per creare un ruolo di registrazione, apri l'hub Roles della IAM console e scegli Crea ruolo.

  1. In Seleziona entità attendibile, scegli AWS Servizio. Quindi scegli IoT in Use case (Caso d'uso). Se non vedi IoT, inserisci e cerca IoT tra i casi d'uso per altri AWS servizi: menu a tendina. Seleziona Avanti.

  2. Nella pagina Add permissions (Aggiungi autorizzazioni), vengono visualizzate le policy che sono automaticamente collegate al ruolo di servizio. Scegli Next (Successivo).

  3. Nella pagina Name, review, and create (Nomina, verifica e crea), immetti Role name (Nome ruolo) e Role description (Descrizione ruolo) per il ruolo, quindi scegli Create role (Crea ruolo).

  4. Nell'elenco dei ruoli, trova il ruolo che hai creato, aprilo e copia il ruolo (ARNlogging-role-arn) da usare quando tuConfigura la registrazione predefinita in AWS IoT (console).

Policy del ruolo di logging

I seguenti documenti politici forniscono la politica di ruolo e la politica di fiducia che consentono AWS IoT a cui inviare le voci di CloudWatch registro per vostro conto. Se anche tu lo hai permesso AWS IoT Core per LoRa WAN inviare le voci di registro, vedrai un documento informativo creato appositamente per te che registra entrambe le attività.

Nota

Questi documenti sono stati creati al momento della creazione del ruolo di logging. I documenti hanno variabili, $ {partition}, $ {regione}e ${accountId}, che devi sostituire con i tuoi valori.

Policy del ruolo:

{ "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:*" ] } ] }

Trust Policy solo per la registrazione AWS IoT Core attività:

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

Configura la registrazione predefinita in AWS IoT (console)

Questa sezione descrive come utilizzare AWS IoT console per configurare la registrazione per tutti AWS IoT. Per configurare la registrazione solo per gruppi di oggetti specifici, è necessario utilizzare CLI oAPI. Per informazioni sulla configurazione della registrazione per gruppi di elementi specifici, consulta Configura l'accesso specifico alla risorsa AWS IoT (CLI).

Per utilizzare nuovamente il plugin AWS IoT console per configurare la registrazione predefinita per tutti AWS IoT
  1. Accedi a AWS IoT console. Per ulteriori informazioni, consulta Apri il AWS IoT console.

  2. Nel riquadro di navigazione a sinistra scegliere Impostazioni. Nella sezione Logs (Log) della pagina Settings (Impostazioni), scegli Manage logs (Gestisci log).

    La pagina Registri mostra il ruolo di registrazione e il livello di dettaglio utilizzati da tutti AWS IoT.

    La pagina Registri che mostra il ruolo del registro e il livello di dettaglio.
  3. Nella pagina Logs (Log), scegli Select role (Seleziona ruolo) per specificare un ruolo creato in Creazione di un ruolo di logging, o Create Role (Crea ruolo) per creare un nuovo ruolo da utilizzare per la registrazione.

    La pagina Registri che mostra il ruolo e il livello del registro.
  4. Scegli il livello di registro che descrive il livello di dettaglio delle voci di registro che desideri vengano visualizzate nei CloudWatch registri.

  5. Scegli Update (Aggiorna) per salvare le modifiche.

Dopo aver abilitato la registrazione, visita Visualizzazione AWS IoT accede alla console CloudWatch per ulteriori informazioni sulla visualizzazione delle voci di registro.

Configura la registrazione predefinita AWS IoT (CLI)

Questa sezione descrive come configurare la registrazione globale per AWS IoT utilizzando il. CLI

Nota

È necessario l'Amazon Resource Name (ARN) del ruolo che desideri utilizzare. Se è necessario creare un ruolo da utilizzare per la registrazione, consulta Creazione di un ruolo di logging prima di continuare.

Il principale utilizzato per chiamare il API must have Passaggio delle autorizzazioni ai ruoli per il tuo ruolo di registrazione.

È possibile eseguire questa procedura anche con il API utilizzando i metodi disponibili in AWS APIche corrispondono ai CLI comandi mostrati qui.

Da utilizzare CLI per configurare la registrazione predefinita per AWS IoT
  1. Usa il comando set-v2-logging-options per impostare le opzioni di logging per l'account.

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

    dove:

    --role-arn

    Il ruolo ARN che concede AWS IoT il permesso di scrivere nei tuoi registri in CloudWatch Logs.

    --default-log-level

    Il livello di log da usare. I valori validi sono ERROR, WARN, INFO, DEBUG o DISABLED

    --no-disable-all-logs

    Un parametro opzionale che abilita tutto AWS IoT registrazione. Utilizzare questo parametro per abilitare la registrazione quando è attualmente disattivata.

    --disable-all-logs

    Un parametro opzionale che disabilita tutto AWS IoT registrazione. Utilizzare questo parametro per disabilitare la registrazione quando è attualmente abilitata.

  2. Utilizzare il comando get-v2-logging-options per ottenere le opzioni di registrazione correnti.

    aws iot get-v2-logging-options

Dopo aver abilitato la registrazione, visita Visualizzazione AWS IoT accede alla console CloudWatch per ulteriori informazioni sulla visualizzazione delle voci di registro.

Nota

AWS IoT continua a supportare i comandi precedenti (set-logging-optionseget-logging-options) a impostare e ottenere la registrazione globale sul tuo account. Tieni presente che quando vengono utilizzati questi comandi, i log risultanti contengono testo semplice anziché JSON payload e la latenza di registrazione è generalmente più elevata. Non verranno apportati ulteriori miglioramenti all'implementazione dei comandi precedenti. Consigliamo di utilizzare versioni "v2" per configurare le opzioni di logging e, quando possibile, di modificare le applicazioni legacy che utilizzano le versioni precedenti.

Configura l'accesso specifico alla risorsa AWS IoT (CLI)

Questa sezione descrive come configurare la registrazione specifica della risorsa per AWS IoT utilizzando il. CLI La registrazione specifica delle risorse consente di specificare un livello di registrazione per un gruppo di oggetti specifico.

I gruppi di oggetti possono contenere altri gruppi di oggetti per creare una relazione gerarchica. In questa procedura viene descritto come configurare la registrazione di un singolo gruppo di oggetti. È possibile applicare questa procedura al gruppo di elementi padre in una gerarchia per configurare la registrazione per tutti i gruppi di elementi nella gerarchia. È inoltre possibile applicare questa procedura a un gruppo di elementi figlio per ignorare la configurazione di registrazione del relativo elemento padre.

Oltre ai gruppi di oggetti, puoi anche registrare destinazioni come l'ID client di un dispositivo, l'IP di origine e l'ID principale.

Nota

È necessario l'Amazon Resource Name (ARN) del ruolo che desideri utilizzare. Se è necessario creare un ruolo da utilizzare per la registrazione, consulta Creazione di un ruolo di logging prima di continuare.

Il principale utilizzato per chiamare il API must have Passaggio delle autorizzazioni ai ruoli per il tuo ruolo di registrazione.

È possibile eseguire questa procedura anche con il API utilizzando i metodi disponibili in AWS APIche corrispondono ai CLI comandi mostrati qui.

Da utilizzare per CLI configurare la registrazione specifica della risorsa per AWS IoT
  1. Usa il comando set-v2-logging-options per impostare le opzioni di logging per l'account.

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

    dove:

    --role-arn

    ARNIl ruolo che concede AWS IoT il permesso di scrivere nei tuoi registri in CloudWatch Logs.

    --default-log-level

    Il livello di log da usare. I valori validi sono ERROR, WARN, INFO, DEBUG o DISABLED

    --no-disable-all-logs

    Un parametro opzionale che abilita tutto AWS IoT registrazione. Utilizzare questo parametro per abilitare la registrazione quando è attualmente disattivata.

    --disable-all-logs

    Un parametro opzionale che disabilita tutto AWS IoT registrazione. Utilizzare questo parametro per disabilitare la registrazione quando è attualmente abilitata.

  2. Utilizzare il comando set-v2-logging-level per configurare la registrazione specifica delle risorse per un gruppo di oggetti.

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

    Il tipo e il nome della risorsa per cui stai configurando il logging. Il valore target_type deve essere uno dei seguenti: THING_GROUP | CLIENT_ID | SOURCE_IP | PRINCIPAL_ID. Il valore del parametro log-target può essere un testo, come mostrato nell'esempio di comando precedente, o una JSON stringa, come nell'esempio seguente.

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

    Livello di logging usato durante la generazione di log per la risorsa specificata. I valori validi sono: DEBUG, INFO, ERROR, WARN e DISABLED

    aws iot set-v2-logging-level \ --log-target targetType=CLIENT_ID,targetName=ClientId1 \ --log-level DEBUG
  3. Utilizzare il comando list-v2-logging-levels per elencare i livelli di registrazione attualmente configurati.

    aws iot list-v2-logging-levels
  4. Utilizza il comando delete-v2-logging-level per eliminare un livello di registrazione specifico delle risorse, come negli esempi seguenti.

    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

    Il valore target_type deve essere uno dei seguenti: THING_GROUP | CLIENT_ID | SOURCE_IP | PRINCIPAL_ID.

    --targetName

    Nome del gruppo di oggetti per il quale rimuovere il livello di registrazione.

Dopo aver abilitato la registrazione, visita Visualizzazione AWS IoT accede alla console CloudWatch per ulteriori informazioni sulla visualizzazione delle voci di registro.

Livelli di log

Questi livelli di log determinano gli eventi registrati e si applicano ai livelli di log predefiniti e specifici delle risorse.

ERROR

Qualsiasi errore che provoca la mancata riuscita di un'operazione.

I log includono solo informazioni. ERROR

WARN

Qualsiasi evento che può potenzialmente causare incoerenze nel sistema, ma potrebbe non provocare la mancata riuscita dell'operazione.

I registri includono informazioniERROR. WARN

INFO

Informazioni generali sul flusso di oggetti.

I registri includono INFO e ERROR WARN informazioni.

DEBUG

Informazioni che possono essere utili quando si esegue il debug di un problema.

I registri includonoDEBUG, INFOERROR, e WARN informazioni.

DISABLED

Tutte le attività di logging sino disabilitate.