Télécharger les journaux d'événements à l'aide de l'API LogEvents
Si vous souhaitez envoyer vos journaux d'événements à l'adresse Oracle Log Analytics via l'API LogEvents, suivez les étapes présentées ci-dessous.
-
Vous pouvez télécharger des événements vers le serveur à l'aide du format de charge utile prédéfini dans
JSON
. En outre, l'API prend en charge les formats d'archiveGZIP
etZIP
-
La taille maximale autorisée de chaque fichier JSON est de 2 Mo. Cependant, une demande de téléchargement peut contenir plusieurs fichiers JSON jusqu'à un maximum de 100 sous la forme d'un fichier ZIP.
-
Le groupe de journaux est un paramètre de demande obligatoire qui sera appliqué à la portée de la demande. L'ensemble de journaux est un paramètre facultatif qui peut être nécessaire pour de grands ensembles de données de journal, par exemple, des To de données sur une base quotidienne.
Pour connaître les étapes de téléchargement de fichiers journaux bruts à l'aide de l'API REST, reportez-vous à Téléchargement de journaux à la demande.
Prérequis :
Avant de commencer à télécharger vos journaux d'événements, veillez à collecter les informations suivantes :
- Nom de source du journal d'une nouvelle source du journal ou d'une source du journal définie par Oracle correspondant au format de journal. Reportez-vous à Sources définies par Oracle et à Création d'une source.
Pour effectuer un téléchargement à l'aide de l'API REST, la source doit être de type Messages d'événement système (Syslog), Fichier ou Journaux de diagnostic Oracle (ODL).
- OCID du groupe de journaux qui fournit un contrôle d'accès pour les journaux. Reportez-vous à Création de groupes de journaux pour stocker vos journaux.
- OCID de l'entité si vous voulez mettre en correspondance les journaux que vous téléchargez vers une entité (facultatif). Reportez-vous à Création d'une entité pour représenter votre ressource émettrice de journal.
Autoriser les utilisateurs à charger des journaux d'événements
Vous pouvez permettre aux utilisateurs d'effectuer une opération de téléchargement en donnant de manière sélective uniquement les droits d'accès requis pour effectuer la tâche de téléchargement, en accordant des droits d'accès de type de ressource individuel ou en accordant des droits d'accès de niveau agrégé plus larges. Vous pouvez donc sélectionner l'un des trois ensembles d'instructions de stratégie fournis ci-dessous, en fonction de votre cas d'utilisation.
L'instruction de stratégie IAM suivante permet de fournir les droits d'accès spécifiques au groupe d'utilisateurs pour le téléchargement :
allow group <group_name> to {LOG_ANALYTICS_LOG_GROUP_UPLOAD_LOGS} in compartment <log_group_compartment>
L'instruction de stratégie IAM suivante permet de fournir des droits d'accès au niveau des types de ressource individuels pour le téléchargement :
allow group <group_name> to use loganalytics-log-group in compartment <log_group_compartment>
En revanche, l'instruction de stratégie IAM suivante permet de fournir des droits d'accès au niveau agrégé des ressources Oracle Log Analytics pour le téléchargement :
allow group <group_name> to use loganalytics-resources-family in tenancy/compartment
Dans toutes les instructions de stratégie ci-dessus, group_name
fait référence au groupe d'utilisateurs auquel les droits d'accès requis doivent être accordés.
API de téléchargement des journaux d'événements
Pour plus d'informations sur l'utilisation de l'API REST et la signature des demandes, reportez-vous à API REST et à Informations d'identification de sécurité.
Pour obtenir la documentation de l'API uploadLogEventsFile
, reportez-vous à API Log Analytics - uploadLogEventsFile.
Pour effectuer un téléchargement à l'aide de l'API REST, exécutez la commande suivante sur l'hôte :
oci log-analytics upload upload-log-events-file --file <Json_Event_File_Path> --log-group-id <Log_Group_OCID> --namespace-name <Tenancy_Namespace_Name> --payload-type <Payload_Type>
Dans la commande curl ci-dessus,
-
Json_Event_File_Path : chemin du fichier d'événements JSON. Pour plus de détails sur le format du fichier d'événements JSON, et un exemple, reportez-vous à Format de fichier d'événement à télécharger à l'aide de l'API LogEvents.
-
Tenancy_Namespace_Name : espace de noms Oracle Log Analytics utilisé pour la demande.
-
Log_Group_OCID : OCID du groupe de journaux dans lequel les journaux téléchargés sont stockés dans Oracle Log Analytics.
-
Payload_Type : la valeur par défaut est
JSON
. Les valeurs autorisées sontJSON
,GZIP
etZIP
. -
Log_Set : ensemble de journaux qui est associé aux journaux téléchargés. Ce paramètre est facultatif.
Format de fichier d'événement à télécharger à l'aide de l'API LogEvents
Voici le format standard de la charge utile JSON :
{
"metadata":{ ----------------------------------------> Global (file level) metadata section to send additional metadata in field value pair format. The fields should be valid Log Analytics Fields
"Field1":"Value1",
"Field2":"Value2",
"FieldN":"ValueN"
},
"logEvents":
[ ---------------------------------------------------> Group the events (logRecords) that belong to the same logSourceName, entityId, logPath and metadata
{
"metadata":{ --------------------------------> Group level metadata section
"FieldA”:”ValueA”,
"FieldB”:”ValueB”,
"FieldN":"ValueN"
},
"entityId”:”<EntityOCID>“, -------------------> Log Analytics Entity OCID
"logSourceName”:”<LogSourceName>”, -----------> Log Analytics LogSource Name (Mandatory)
"logPath”:”<LogPath>”, -----------------------> logPath or logFileName to associate the log records with.
"logRecords": -------------------------------> Array of logRecords/logEntries (Mandatory)
[
"logRecord1", ---------------------------> String representation of logRecord. In case the logRecord is of JSON type, it has to be encoded.
"logRecord2",
"logRecordN"
]
},
{ … … … }
]
}
La section des métadonnées permet d'enrichir les journaux avec les informations qui ne font pas partie des enregistrements de journal réels.
Voici un exemple de charge utile JSON :
{
"metadata":{
"Error ID":"0",
"Environment":"dev",
"Client Host Region":"IST"
},
"logEvents":
[
{
"metadata":{
"Error ID":"1",
"Environment":"prod",
"Client Host Region":"PST"
},
"entityId":"ocid1.loganalyticsentity.oc1.iad.amaaaaa...........",
"logSourceName":"Linux Syslog Logs",
"logPath":"/var/log/messages",
"logRecords":
[
“Oct 20 2023 04:02:37 hostA syslogd 1.4.1: restart.",
“Oct 20 2023 04:02:38 hostB syslogd 1.4.1: shutdown."
]
}
]
}