View a markdown version of this page

Risolvi un problema AWS IoT SiteWise regola, azione - AWS IoT SiteWise

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à.

Risolvi un problema AWS IoT SiteWise regola, azione

Per risolvere i problemi relativi all'azione della AWS IoT SiteWise regola in AWS IoT Core, puoi eseguire una delle seguenti procedure:

  • Configura Amazon Logs CloudWatch

  • Configurare un'azione di ripubblicazione dell'errore per la regola

Quindi, confrontare i messaggi di errore con gli errori presenti in questo argomento per risolvere il problema.

Configura AWS IoT Core log

Puoi configurare AWS IoT la registrazione di vari livelli di informazioni CloudWatch nei log.

Per configurare e accedere ai CloudWatch log
  1. Per configurare la registrazione per AWS IoT Core, consulta Monitoring with CloudWatch Logs nella AWS IoT Developer Guide.

  2. Passare alla console CloudWatch .

  3. Nel pannello di navigazione, selezionare Log groups (Gruppi di log).

  4. Scegli il AWSIotLogs gruppo.

  5. Scegliere un flusso di log recente. Per impostazione predefinita, CloudWatch visualizza per primo il flusso di log più recente.

  6. Scegliere una voce di log per espandere il messaggio di log. La voce di log potrebbe essere simile allo screenshot seguente.

    CloudWatch Screenshot «AWS IoT Registri».
  7. Confrontare i messaggi di errore con gli errori in questo argomento per risolvere il problema.

Configura un'azione di errore di ripubblicazione

Puoi configurare un'azione di errore sulla regola per gestire i messaggi di errore. In questa procedura, è possibile configurare l'azione regola di ripubblicazione come azione di errore per visualizzare i messaggi di errore nel client di test MQTT.

Nota

L'azione di ripubblicazione dell'errore genera solo un output equivalente ai log a livello di ERROR. Se desideri registri più dettagliati, devi configurare i log. CloudWatch

Per aggiungere un'azione di errore di ripubblicazione a una regola
  1. Passare alla console AWS IoT.

  2. Nel riquadro di navigazione sinistro scegliere Atti e quindi Regole.

  3. Scegliere la regola.

  4. In Azione errore, scegliere Aggiungi azione.

  5. Scegli Ripubblica un messaggio su un argomento. AWS IoT

    AWS IoT Core Screenshot della pagina «Seleziona un'azione» con l'azione Ripubblica evidenziata.
  6. Scegliere Configura azione nella parte inferiore della pagina.

  7. In Argomento, inserisci un argomento univoco (ad esempio,sitewise/windfarm/rule/error). AWS IoT Core ripubblicherà i messaggi di errore relativi a questo argomento.

  8. Scegliete Seleziona per concedere AWS IoT Core l'accesso per eseguire l'azione di errore.

  9. Scegliere Select (Seleziona) accanto al ruolo creato per la regola.

  10. Scegliere Aggiorna ruolo per aggiungere le autorizzazioni aggiuntive al ruolo.

  11. Selezionare Add action (Aggiungi operazione).

    L'azione di errore della regola è simile allo screenshot seguente.

    AWS IoT Core Pagina «Regola» Ripubblica lo screenshot dell'azione di errore.
  12. Scegli la freccia indietro nella parte superiore sinistra della console per tornare alla home page della AWS IoT console.

Dopo aver impostato l'azione di ripubblicazione dell'errore, è possibile visualizzare i messaggi di errore nel client di test MQTT in AWS IoT Core.

Nella procedura seguente, si sottoscrive l'argomento di errore nel client di test MQTT. Nel client di test MQTT, è possibile ricevere i messaggi di errore della regola per risolvere il problema.

Per sottoscrivere l'argomento dell'azione di errore
  1. Passare alla console AWS IoT.

  2. Nel riquadro di navigazione a sinistra, scegliere Test per aprire il client di test MQTT.

  3. Nel campo Subscription topic (Argomento sottoscrizione) immettere l'argomento di errore configurato in precedenza (ad esempio sitewise/windfarm/rule/error) e scegliere Subscribe to topic (Effettua sottoscrizione all'argomento).

    AWS IoT Core Screenshot della pagina «MQTT client» con il pulsante «Iscriviti all'argomento» evidenziato.
  4. Controllare se vengono visualizzati messaggi di errore e quindi espandere l'array failures in qualsiasi messaggio di errore.

    Confronta i messaggi di errore con gli errori presenti in questo argomento per risolvere il problema.

Risolvi i problemi relativi alle regole

Utilizzare le seguenti informazioni per risolvere i problemi relativi alle regole.

Errore: il membro deve trovarsi entro 604800 secondi prima e 300 secondi dopo il timestamp corrente

Il tuo timestamp è più vecchio di 7 giorni o più recente di 5 minuti, rispetto all'attuale epoca Unix. Esegui quanto segue:

  • Controllare che il timestamp sia nell'ora in formato epoch Unix (UTC). Se si fornisce un timestamp con un fuso orario diverso, si riceve questo errore.

  • Verifica che il tuo timestamp sia espresso in secondi. AWS IoT SiteWise si aspetta che i timestamp siano suddivisi in secondi (in epoca Unix) e offset in nanosecondi.

  • Verifica di caricare dati con timestamp non più tardi di 7 giorni nel passato.

Errore: il valore della proprietà non corrisponde al tipo di dati < >

Una voce nell'azione di regola ha un tipo di dati diverso dalla proprietà dell'asset di destinazione. Ad esempio, la proprietà dell'asset di destinazione è di tipo DOUBLE ed è stato selezionato il tipo di dati Integer o è stato passato il valore integerValue. Esegui quanto segue:

  • Se configuri la regola dalla AWS IoT console, verifica di aver scelto il tipo di dati corretto per ogni voce.

  • Se configuri la regola dall'API o AWS Command Line Interface (AWS CLI), verifica che il tuo value oggetto utilizzi il campo di tipo corretto (ad esempio, doubleValue per una DOUBLE proprietà).

Errore: l'utente: < role-arn non > è autorizzato a eseguire: iotsitewise: on resource BatchPutAssetPropertyValue

La regola non è autorizzata ad accedere alla proprietà dell'asset di destinazione oppure la proprietà dell'asset di destinazione non esiste. Esegui quanto segue:

  • Verificare che l'alias della proprietà sia corretto e che si disponga di una proprietà dell'asset con l'alias di proprietà specificato. Per ulteriori informazioni, consulta Gestisci i flussi di dati per AWS IoT SiteWise.

  • Verificare che la regola abbia un ruolo e che il ruolo conceda l'autorizzazione iotsitewise:BatchPutAssetPropertyValue alla proprietà dell'asset di destinazione, ad esempio tramite la gerarchia dell'asset di destinazione. Per ulteriori informazioni, consulta Concedi AWS IoT l'accesso richiesto.

Errore: iot.amazonaws.com non è in grado di eseguire: sts: on resource: role-arn AssumeRole < >

Il tuo utente non è autorizzato ad assumere il ruolo nella tua regola in (IAM). AWS Identity and Access Management

Verifica che il tuo utente disponga dell'iam:PassRoleautorizzazione per il ruolo nella tua regola. Per ulteriori informazioni, consulta Pass role permissions nella AWS IoT Developer Guide.

Informazioni: non è stata inviata alcuna richiesta. PutAssetPropertyValueEntries era vuoto dopo aver eseguito la sostituzione dei modelli.

Nota

Questo messaggio è un log a livello di INFO.

La richiesta deve includere almeno una voce con tutti i parametri richiesti.

Verificare che i parametri della regola, inclusi i modelli di sostituzione, restituiscano valori non vuoti. I modelli di sostituzione non possono accedere ai valori definiti nelle clausole AS dell'istruzione della query della regola. Per ulteriori informazioni, consulta Modelli sostitutivi nella Guida per gli sviluppatori. AWS IoT

Risolvi i problemi relativi a una regola (AWS IoT SiteWise)

Segui i passaggi di questa procedura per risolvere i problemi relativi alla regola se i dati sull'utilizzo della CPU e della memoria non vengono visualizzati come previsto. AWS IoT SiteWise In questa procedura, è possibile configurare l'azione regola di ripubblicazione come azione di errore per visualizzare i messaggi di errore nel client di test MQTT. Puoi anche configurare l'accesso a CloudWatch Logs per la risoluzione dei problemi. Per ulteriori informazioni, consulta Risolvi un problema AWS IoT SiteWise regola, azione.

Per aggiungere un'azione di errore di ripubblicazione a una regola
  1. Passare alla console AWS IoT.

  2. Nel riquadro di navigazione a sinistra, scegli Instradamento dei messaggi, quindi scegli Regole.

  3. Scegli la regola che hai creato in precedenza e scegli Modifica.

  4. In Azione di errore - opzionale , scegli Aggiungi azione di errore.

  5. Scegli Ripubblica un messaggio su un AWS IoT argomento.

  6. In Argomento, inserisci il percorso dell'errore (ad esempio,sitewise/rule/tutorial/error). AWS IoT Core ripubblicherà i messaggi di errore relativi a questo argomento.

  7. Scegli il ruolo che hai creato in precedenza (ad esempio, SiteWiseTutorialDeviceRuleRole).

  8. Scegliere Aggiorna.

Dopo aver impostato l'azione di ripubblicazione dell'errore, è possibile visualizzare i messaggi di errore nel client di test MQTT in AWS IoT Core.

Nella procedura seguente, si sottoscrive l'argomento di errore nel client di test MQTT.

Per sottoscrivere l'argomento dell'azione di errore
  1. Passare alla console AWS IoT.

  2. Nella pagina di navigazione a sinistra, scegli MQTT test client per aprire il client di test MQTT.

  3. Nel campo Filtro Argomento, inserisci sitewise/rule/tutorial/error e scegli Iscriviti.

Quando vengono visualizzati messaggi di errore, visualizzare l'array failures in qualsiasi messaggio di errore per diagnosticare i problemi. Per ulteriori informazioni sui possibili problemi e su come risolverli, consultare Risolvi un problema AWS IoT SiteWise regola, azione.

Se non vengono visualizzati errori, verificare che la regola sia abilitata e che sia stato sottoscritto lo stesso argomento configurato nell'azione errore di ripubblicazione. Se dopo questa operazione ancora non vengono visualizzati gli errori, verificare che lo script del dispositivo sia in esecuzione e aggiornare correttamente la shadow del dispositivo.

Nota

Puoi anche iscriverti all'argomento Shadow Update del tuo dispositivo per visualizzare il payload analizzato dalla tua AWS IoT SiteWise azione. A tale scopo, eseguire la sottoscrizione al seguente argomento.

$aws/things/+/shadow/update/accepted

Risolvi i problemi relativi a una regola (DynamoDB)

Segui i passaggi di questa procedura per risolvere i problemi relativi alla regola se i dati dell'asset demo non vengono visualizzati nella tabella DynamoDB come previsto. In questa procedura, è possibile configurare l'azione regola di ripubblicazione come azione di errore per visualizzare i messaggi di errore nel client di test MQTT. Puoi anche configurare l'accesso a Logs per la risoluzione dei problemi. CloudWatch Per ulteriori informazioni, consulta la sezione Monitoraggio con i registri CloudWatch nella Guida per gli sviluppatori di AWS IoT .

Per aggiungere un'azione di errore di ripubblicazione a una regola
  1. Passare alla console AWS IoT.

  2. Nel riquadro di navigazione sinistro scegliere Atti e quindi Regole.

  3. Scegliere la regola creata in precedenza.

    AWS IoT Screenshot principale della pagina «Regole».
  4. In Azione errore, scegliere Aggiungi azione.

  5. Scegli Ripubblica un messaggio su un AWS IoT argomento.

    AWS IoT Screenshot principale della pagina «Seleziona un'azione» con l'azione Ripubblica evidenziata.
  6. Scegliere Configura azione nella parte inferiore della pagina.

  7. In Topic (Argomento), inserisci windspeed/error. AWS IoT Core ripubblicherà i messaggi di errore relativi a questo argomento.

    AWS IoT Screenshot principale della pagina «Configura l'azione di ripubblicazione» con l' "Argomento» evidenziato.
  8. Scegli Seleziona per concedere l'accesso a AWS IoT Core per eseguire l'azione di errore utilizzando il ruolo che hai creato in precedenza.

  9. Scegli Seleziona accanto al tuo ruolo.

    AWS IoT Screenshot principale della pagina «Configura l'azione di ripubblicazione» con il pulsante di selezione del ruolo evidenziato.
  10. Scegliere Aggiorna ruolo per aggiungere le autorizzazioni aggiuntive al ruolo.

    AWS IoT Screenshot principale della pagina «Configura l'azione di ripubblicazione» con il pulsante di aggiornamento del ruolo evidenziato.
  11. Scegliere Aggiungi azione per completare l'aggiunta dell'azione di errore.

  12. Scegli la freccia indietro nella parte superiore sinistra della console per tornare alla home page della console AWS IoT Core.

Dopo aver impostato l'azione di errore di ripubblicazione, è possibile visualizzare i messaggi di errore nel client di test MQTT in Core. AWS IoT

Nella procedura seguente, si sottoscrive l'argomento di errore nel client di test MQTT.

Per sottoscrivere l'argomento dell'azione di errore
  1. Nella pagina di navigazione a sinistra della console AWS IoT Core, scegli Test.

  2. Nel campo Argomento della sottoscrizione immettere windspeed/error e scegliere Iscriviti all'argomento.

    AWS IoT Screenshot della pagina principale «MQTT client» con il pulsante «Iscriviti all'argomento» evidenziato.
  3. Controlla la visualizzazione dei messaggi di errore ed esplora l'array failures in un messaggio di errore per diagnosticare i seguenti problemi comuni:

    • Errori di battitura nell'istruzione query regola

    • Autorizzazioni ruolo insufficienti

    Se non vengono visualizzati errori, verificare che la regola sia abilitata e che sia stato sottoscritto lo stesso argomento configurato nell'azione errore di ripubblicazione. Se ancora non vengono visualizzati errori, verificare che le risorse del parco eolico dimostrativo esistano ancora e che siano state abilitate le notifiche sulle proprietà della velocità del vento. Se le tue risorse demo sono scadute o sono scomparse AWS IoT SiteWise, puoi creare una nuova demo e aggiornare la dichiarazione di interrogazione delle regole in modo che rifletta il modello di asset e gli ID delle proprietà aggiornati.