Inclusion de journaux personnalisés à partir du service OCI Logging à l'aide d'un connecteur de service

Si vous disposez de journaux personnalisés dans le service OCI Logging que vous souhaitez inclure dans Oracle Log Analytics à des fins d'analyse et d'informations clés de journal, suivez les étapes répertoriées ici.

Remarque

Pour les applications stratégiques qui nécessitent une ingestion de journaux à faible latence et des alertes de temps d'inclusion, Oracle recommande d'utiliser Oracle Management Agent, qui est installé par défaut sur toutes les instances OCI.

Si vous souhaitez collecter des journaux historiques, utilisez l'agent OMA (Oracle Management Agent) car le connecteur de service ne prend pas en charge la collecte des journaux historiques.

De plus, après avoir installé l'agent de gestion, suivez les étapes 1 à 5 répertoriées ci-dessous pour commencer à collecter les journaux dans Oracle Log Analytics.

Pour plus d'informations sur l'inclusion de journaux à partir d'autres services OCI avec le connecteur de service, reportez-vous à Inclusion de journaux à partir d'autre services OCI avec le connecteur de service.

Etapes de collecte des journaux personnalisés du service OCI Logging à l'aide du connecteur de service :

  1. Donnez le droit d'accéder aux journaux et de les collecter à partir du service OCI Logging. Reportez-vous à Autoriser la collecte de journaux à partir du service OCI Logging.

  2. Identifiez ou créez le compartiment et le groupe de journaux Log Analytics dans lesquels les journaux doivent être collectés.

  3. Dans votre enregistrement de journal dans le service OCI Logging, notez le type d'événement correspondant au type de clé, par exemple, com.oraclecloud.logging.custom.kube_system_namespace. La valeur de la clé sera utilisée ultérieurement pour créer la source de journal. Voici un exemple d'enregistrement de journal du service OCI Logging :

    {
      "datetime": 1652152576897,
      "logContent": {
        "data": {
          "message": "2022-05-10T03:16:16.161346406+00:00 stderr F time=\"2022-05-10T03:16:16Z\" level=error msg=\"tkw network request proxied\" error=EOF",
          "tailed_path": "/var/log/pods/kube-system_proxymux-client-aaaa/proxymux-client/0.log"
        },
        "id": "id112233",
        "oracle": {
          "compartmentid": "ocid1.compartment.oc1..a....",
          "ingestedtime": "2022-05-10T03:17:25.628Z",
          "instanceid": "ocid1.instance.oc1.phx.a....",
          "loggroupid": "ocid1.loggroup.oc1.phx.a....",
          "logid": "ocid1.log.oc1.phx.a....",
          "tenantid": "ocid1.tenancy.oc1..a...."
        },
        "source": "oke-source",
        "specversion": "1.0",
        "subject": "/var/log/pods/kube-system_proxymux-client-aaaa/proxymux-client/0.log",
        "time": "2022-05-10T03:16:16.897Z",
        "type": "com.oraclecloud.logging.custom.kube_system_namespace"
      }
    }

    Dans l'exemple de type d'événement ci-dessus, com.oraclecloud.logging.custom. est constant pour les journaux personnalisés. La partie restante de la valeur, par exemple, kube_system_namespace, varie en fonction du type de journal.

  4. Créez un analyseur JSON pour analyser vos journaux personnalisés.

    Remarque

    Assurez-vous que l'analyseur est de type JSON pour l'inclusion des journaux à partir du connecteur de service. Les autres formats d'analyseur ne sont pas pris en charge.

    Pour l'exemple de contenu de journal présenté ci-dessus, Log Analytics reçoit uniquement la valeur de l'attribut logContent, comme indiqué ci-dessous :

    {
        "data": {
          "message": "2022-05-10T03:16:16.161346406+00:00 stderr F time=\"2022-05-10T03:16:16Z\" level=error msg=\"tkw network request proxied\" error=EOF",
          "tailed_path": "/var/log/pods/kube-system_proxymux-client-aaaa/proxymux-client/0.log"
        },
        "id": "id112233",
        "oracle": {
          "compartmentid": "ocid1.compartment.oc1..a....",
          "ingestedtime": "2022-05-10T03:17:25.628Z",
          "instanceid": "ocid1.instance.oc1.phx.a....",
          "loggroupid": "ocid1.loggroup.oc1.phx.a....",
          "logid": "ocid1.log.oc1.phx.a....",
          "tenantid": "ocid1.tenancy.oc1..a...."
        },
        "source": "oke-source",
        "specversion": "1.0",
        "subject": "/var/log/pods/kube-system_proxymux-client-aaaa/proxymux-client/0.log",
        "time": "2022-05-10T03:16:16.897Z",
        "type": "com.oraclecloud.logging.custom.kube_system_namespace"
      }

    Par conséquent, l'analyseur JSON doit être créé à l'aide de la version dépouillée appropriée de l'exemple de contenu de journal. Reportez-vous à Création d'un analyseur.

  5. Créez une source de journal avec le nom qui est identique à la valeur du type de clé. Si la valeur que vous avez notée précédemment est com.oraclecloud.logging.custom.kube_system_namespace, le nom de la source doit également être identique. Lors de la création de la source de journal, indiquez l'analyseur que vous avez créé à l'étape précédente. Reportez-vous à Création d'une source.

    Si vous ne créez pas de source définie par l'utilisateur dont le nom correspond à la valeur du type de clé dans vos journaux, les journaux sont traités à l'aide des journaux de schéma unifié OCI sources définies par Oracle. This source uses the Oracle-defined parser OCI Unified Schema Log Format to parse the fields Time, Type, OCI Resource Name, Collection Time, Compartment ID, Logging Log Group OCID, Logging Log OCID, Tenant, Logging Record ID, CloudEvents Spec Version, and Message.

  6. Créez un connecteur de service ou utilisez un connecteur de service existant qui établit une connexion entre OCI Logging et Oracle Log Analytics pour acheminer vos journaux personnalisés. Indiquez Logging Analytics comme cible et ajoutez la nouvelle connexion source correspondant à vos journaux personnalisés de journalisation. Notez le compartiment du groupe de journaux Logging, le groupe de journaux Logging et les détails des journaux personnalisés Logging.

    Pour plus d'informations sur les étapes de création du connecteur de service, reportez-vous à étape 2 dans Configuration du connecteur de service pour l'inclusion de journaux.

    Dans la section Configurer une tâche, vous pouvez configurer une tâche de filtre de journal et indiquer la propriété à utiliser pour le filtrage. Reportez-vous à Documentation Oracle Cloud Infrastructure - Gestion des connecteurs de service.

    Dans le cas de plusieurs journaux personnalisés, vous pouvez utiliser le même connecteur de service et ajouter d'autres tâches de filtre de journal.

Une fois la connexion établie avec OCI Logging, les journaux personnalisés commencent à circuler dans Oracle Log Analytics. Pour rechercher des journaux personnalisés dans l'explorateur de journaux, vous pouvez interroger le nom de la source de journal. Par exemple,

'Log Source' = com.oraclecloud.logging.custom.kube_system_namespace | stats count as logrecords by 'Log Source'

Pour arrêter la collecte de vos journaux personnalisés à partir d'OCI Logging, reportez-vous à Arrêt de la collecte de journaux à partir du connecteur de service.