Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Vous devez activer la journalisation à l'aide de la AWS IoT console ou API avant de pouvoir surveiller et consigner AWS IoT l'activité. CLI
Vous pouvez activer la journalisation pour tous les groupes d' AWS IoT objets ou uniquement pour certains d'entre eux. Vous pouvez configurer la AWS IoT journalisation à l'aide de la AWS IoT consoleCLI, ou API ; toutefois, vous devez utiliser le CLI ou API pour configurer la journalisation pour des groupes d'objets spécifiques.
Lorsque vous réfléchissez à la configuration de votre AWS IoT journalisation, la configuration de journalisation par défaut détermine la manière dont AWS IoT l'activité sera enregistrée, sauf indication contraire. À partir de là, vous pouvez obtenir des journaux détaillés avec un niveau de journal par défaut de INFO
ou DEBUG
. Après avoir examiné les journaux initiaux, vous pouvez modifier le niveau de journal par défaut à un niveau moins détaillé tel que WARN
ou ERROR
, et définir un niveau de journal plus détaillé spécifique à la ressource sur les ressources qui pourraient nécessiter plus d'attention. Les niveaux de journal peuvent être modifiés quand vous le souhaitez.
Cette rubrique traite de la connexion côté cloud. AWS IoT Pour plus d'informations sur la journalisation et la surveillance côté appareil, voir Télécharger les journaux côté appareil vers. CloudWatch
Pour plus d'informations sur la journalisation et AWS IoT Greengrass la surveillance, consultez la section Connexion et surveillance AWS IoT Greengrass. Au 30 juin 2023, le logiciel AWS IoT Greengrass Core a migré vers AWS IoT Greengrass Version 2.
Configurer le rôle et la stratégie de journalisation
Avant de pouvoir activer la connexion AWS IoT, vous devez créer un IAM rôle et une politique AWS autorisant le suivi de AWS IoT l'activité en votre nom. Vous pouvez également générer un IAM rôle avec les politiques nécessaires dans la section Logs de la AWS IoT
console
Note
Avant d'activer la AWS IoT journalisation, assurez-vous de bien comprendre les autorisations d'accès aux CloudWatch journaux. Les utilisateurs ayant accès aux CloudWatch journaux peuvent consulter les informations de débogage de vos appareils. Pour plus d'informations, consultez Authentification et contrôle d'accès pour Amazon CloudWatch Logs.
Si vous vous attendez à des modèles de trafic élevés en AWS IoT Core raison des tests de charge, pensez à désactiver la journalisation de l'IoT pour éviter les ralentissements. Si un trafic élevé est détecté, notre service peut désactiver la connexion à votre compte.
Vous trouverez ci-dessous comment créer un rôle et une politique de journalisation pour les AWS IoT Core ressources.
Création d'un rôle de journalisation
Pour créer un rôle de journalisation, ouvrez le hub Rôles de la IAM console
-
Sous Sélectionner une entité approuvée, choisissez AWS Service . Choisissez ensuite IoT sous Cas d'utilisation. Si vous ne voyez pas IoT, saisissez et recherchez IoT dans le menu déroulant Cas d'utilisation pour d'autres AWS services :. Sélectionnez Suivant.
-
Sur la page Ajouter des autorisations, vous verrez les politiques automatiquement associées au rôle de service. Choisissez Suivant.
-
Sur la page Name, review, and Create (Créer un rôle et vérifier), saisissez un Role name (Nom du rôle) etRole description (Description de Role) pour le role, puis Create role(Créer un rôle).
-
Dans la liste des rôles, recherchez le rôle que vous avez créé, ouvrez-le et copiez le rôle ARN (
logging-role-arn
) à utiliser lorsque vous le souhaitezConfigurez la journalisation par défaut dans AWS IoT (console).
Stratégie de rôle de journalisation
Les documents de politique suivants fournissent la politique de rôle et la politique de confiance qui AWS IoT permettent de soumettre des entrées de journal CloudWatch en votre nom. Si vous avez également autorisé AWS IoT Core l'envoi LoRa WAN d'entrées de journal, vous verrez un document de politique créé pour vous qui enregistre les deux activités.
Note
Ces documents ont été créés pour vous lorsque vous avez créé le rôle de journalisation. Les documents contiennent des variables ${partition}
,
,${region}
, et que vous devez remplacer par vos valeurs.${accountId}
Politique de rôle :
{
"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:*"
]
}
]
}
Politique de confiance permettant de ne consigner que AWS IoT Core l'activité :
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "",
"Effect": "Allow",
"Principal": {
"Service": "iot.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
Configurez la journalisation par défaut dans AWS IoT
(console)
Cette section décrit comment utiliser la AWS IoT console pour configurer la journalisation pour tous AWS IoT. Pour configurer la journalisation uniquement pour des groupes d'objets spécifiques, vous devez utiliser le CLI ouAPI. Pour de plus amples informations sur la configuration de la journalisation pour des groupes de choses spécifiques, veuillez consulter Configurer la connexion spécifique à une ressource () AWS IoT CLI.
Pour utiliser la AWS IoT console afin de configurer la journalisation par défaut pour tous AWS IoT
-
Connectez-vous à la AWS IoT console. Pour de plus amples informations, veuillez consulter Ouvrez la AWS IoT console.
-
Dans le panneau de navigation de gauche, choisissez Paramètres. Dans la section Journaux de la page Paramètres, choisissez Gérer les journaux.
La page Journaux affiche le rôle de journalisation et le niveau de verbosité utilisés par tous les AWS IoT.
-
sur la page Journaux choisissez Sélectionner le rôle pour spécifier un rôle que vous avez créé dans Création d'un rôle de journalisation, ou Créer un rôle pour créer un rôle à utiliser pour la journalisation.
-
Choisissez le niveau de journal qui décrit le niveau de détail des entrées de journal que vous souhaitez voir apparaître dans les CloudWatch journaux.
-
Choisissez Mettre à jour pour enregistrer vos modifications.
Une fois que vous avez activé la journalisation, visitez Afficher AWS IoT les journaux dans la CloudWatch console pour en savoir plus sur l'affichage des entrées du journal.
Configurer la connexion par défaut AWS IoT (CLI)
Cette section décrit comment configurer la journalisation globale pour à AWS IoT l'aide duCLI.
Note
Vous avez besoin du nom de ressource Amazon (ARN) du rôle que vous souhaitez utiliser. Si vous devez créer un rôle à utiliser pour la journalisation, veuillez consulter Création d'un rôle de journalisation avant de continuer.
Le principal utilisé pour appeler le API must have Transmission des autorisations de rôle pour votre rôle de journalisation.
Vous pouvez également effectuer cette procédure avec le en API utilisant les méthodes du AWS API qui correspondent aux CLI commandes présentées ici.
Pour utiliser le CLI pour configurer la journalisation par défaut pour AWS IoT
-
Utilisez la commande set-v2-logging-options
pour définir les options de journalisation de votre compte. aws iot set-v2-logging-options \ --role-arn
logging-role-arn
\ --default-log-levellog-level
où :
- --role-arn
-
Le rôle ARN qui accorde AWS IoT l'autorisation d'écrire dans vos CloudWatch journaux dans Logs.
- --default-log-level
-
Le niveau de journalisation à utiliser. Les valeurs valables sont
ERROR
,WARN
,INFO
,DEBUG
ouDISABLED
- --no-disable-all-logs
-
Paramètre facultatif qui active tous les AWS IoT enregistrements. Utilisez ce paramètre pour activer la journalisation lorsqu'elle est désactivée.
- --disable-all-logs
-
Paramètre facultatif qui désactive toute AWS IoT journalisation. Utilisez ce paramètre pour désactiver la journalisation lorsqu'elle est activée.
-
Utilisez la commande get-v2-logging-options
pour obtenir vos options de journalisation actuelles. aws iot get-v2-logging-options
Une fois que vous avez activé la journalisation, visitez Afficher AWS IoT les journaux dans la CloudWatch console pour en savoir plus sur l'affichage des entrées du journal.
Note
AWS IoT continue de prendre en charge les anciennes commandes (set-logging-optionsetget-logging-options) permettant de configurer et d'obtenir une connexion globale sur votre compte. Sachez que lorsque ces commandes sont utilisées, les journaux qui en résultent contiennent du texte brut plutôt que des JSON charges utiles et que la latence de journalisation est généralement plus élevée. Aucune amélioration supplémentaire ne sera apportée à l'implémentation de ces anciennes commandes. Nous vous recommandons d'utiliser les versions « v2 » pour configurer vos options de journalisation et, si possible, de modifier toutes les applications existantes qui utilisent les anciennes versions.
Configurer la connexion spécifique à une ressource () AWS IoT
CLI
Cette section décrit comment configurer la journalisation spécifique à une ressource à l'aide AWS IoT du. CLI La journalisation spécifique à la ressource vous permet de spécifier un niveau de journalisation pour un groupe d'objetsspécifique.
Les groupes d'objets peuvent contenir d'autres groupes d'objets pour créer une relation hiérarchique. Cette procédure décrit comment configurer la journalisation d'un seul groupe d'objets. Vous pouvez appliquer cette procédure au groupe d'objets parent dans une hiérarchie pour configurer la journalisation de tous les groupes d'objets de la hiérarchie. Vous pouvez également appliquer cette procédure à un groupe d'objets enfant pour remplacer la configuration de journalisation de son parent.
Un objet peut être membre d'un groupe d'objets. Cette appartenance permet à l'objet d'hériter des configurations, des politiques et des paramètres appliqués au groupe d'objets. Les groupes d'objets sont utilisés pour gérer et appliquer des paramètres à plusieurs éléments collectivement, plutôt que de traiter chaque élément individuellement. Lorsque votre ID client correspond au nom de l'objet, la session client est AWS IoT Core automatiquement associée à la ressource d'objet correspondante. Cela permet à la session client d'hériter des configurations et des paramètres appliqués aux groupes d'objets auxquels appartient l'objet, y compris les niveaux de journalisation. Si votre identifiant client ne correspond pas au nom de l'objet, vous pouvez activer la pièce jointe exclusive pour établir l'association. Pour de plus amples informations, veuillez consulter Associer un AWS IoT objet à une connexion client MQTT.
Outre les groupes d'objets, vous pouvez également enregistrer des cibles telles que l'ID client, l'IP source et l'ID principal d'un appareil.
Note
Vous avez besoin du nom de ressource Amazon (ARN) du rôle que vous souhaitez utiliser. Si vous devez créer un rôle à utiliser pour la journalisation, veuillez consulter Création d'un rôle de journalisation avant de continuer.
Le principal utilisé pour appeler le API must have Transmission des autorisations de rôle pour votre rôle de journalisation.
Vous pouvez également effectuer cette procédure avec le en API utilisant les méthodes du AWS API qui correspondent aux CLI commandes présentées ici.
Pour utiliser le CLI pour configurer la journalisation spécifique aux ressources pour AWS IoT
-
Utilisez la commande set-v2-logging-options
pour définir les options de journalisation de votre compte. aws iot set-v2-logging-options \ --role-arn
logging-role-arn
\ --default-log-levellog-level
où :
- --role-arn
-
Le rôle ARN qui accorde AWS IoT l'autorisation d'écrire dans vos CloudWatch journaux dans Logs.
- --default-log-level
-
Le niveau de journalisation à utiliser. Les valeurs valables sont
ERROR
,WARN
,INFO
,DEBUG
ouDISABLED
- --no-disable-all-logs
-
Paramètre facultatif qui active tous les AWS IoT enregistrements. Utilisez ce paramètre pour activer la journalisation lorsqu'elle est désactivée.
- --disable-all-logs
-
Paramètre facultatif qui désactive toute AWS IoT journalisation. Utilisez ce paramètre pour désactiver la journalisation lorsqu'elle est activée.
-
Utilisez la commande set-v2-logging-level
pour configurer la journalisation spécifique à une ressource pour un groupe de choses. aws iot set-v2-logging-level \ --log-target targetType=THING_GROUP,targetName=
thing_group_name
\ --log-levellog_level
- --log-target
-
Type et nom de la ressource pour laquelle vous configurez la journalisation. La
target_type
valeur doit être l'une des suivantes :THING_GROUP
|CLIENT_ID
|SOURCE_IP
|PRINCIPAL_ID
. La valeur du paramètre log-target peut être du texte, comme indiqué dans l'exemple de commande précédent, ou une JSON chaîne, comme dans l'exemple suivant.aws iot set-v2-logging-level \ --log-target '{"targetType": "THING_GROUP","targetName": "
thing_group_name
"}' \ --log-levellog_level
- --log-level
-
Le niveau de journalisation utilisé lors de la génération de journaux pour la ressource spécifiée. Les valeurs valides sont : DEBUG, INFO, ERROR, WARN et DISABLED.
aws iot set-v2-logging-level \ --log-target targetType=CLIENT_ID,targetName=
ClientId1
\ --log-levelDEBUG
-
Utilisez la commande list-v2-logging-levels
pour répertorier les niveaux de journalisation actuellement configurés. aws iot list-v2-logging-levels
-
Utilisez la commande delete-v2-logging-level
pour supprimer un niveau de journalisation spécifique à la ressource, tel que les exemples suivants. 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
-
La
target_type
valeur doit être l'une des suivantes :THING_GROUP
|CLIENT_ID
|SOURCE_IP
|PRINCIPAL_ID
. - --targetName
-
Nom du groupe d'objets pour lequel le niveau de journalisation doit être supprimé.
Une fois que vous avez activé la journalisation, visitez Afficher AWS IoT les journaux dans la CloudWatch console pour en savoir plus sur l'affichage des entrées du journal.
Niveaux de journalisation.
Ces niveaux de journal déterminent les événements qui sont consignés et s'appliquent aux niveaux de journal par défaut et spécifiques aux ressources.
- ERROR
-
Toute erreur qui entraîne l'échec d'une opération.
Les journaux contiennent uniquement ERROR des informations.
- WARN
-
Tout ce qui peut éventuellement entraîner des incohérences dans le système, mais qui n'entraîne pas nécessairement l'échec de l'opération.
Les journaux contiennent des informations ERROR et WARN.
- INFO
-
Informations générales sur le flux des objets.
Les journaux incluent INFOERROR, et des WARN informations.
- DEBUG
-
Informations qui peuvent être utiles lors du débogage d'un problème.
Les journaux incluent DEBUGINFO,ERROR, et des WARN informations.
- DISABLED
-
Toute la journalisation est désactivée.