Configuration de l\'action Journaliser sur le serveur dans un(e) Tâche API

Utilisez l\'action Journaliser sur le serveur pour transférer les journaux d\'exécution et personnalisés vers un serveur SIEM externe afin d\'assurer une surveillance centralisée et la conformité. Vous pouvez ajouter les en-têtes nécessaires, les niveaux de journalisation et les balises de source de données au journal personnalisé.

Dans cet exemple, configurez une action Journaliser sur le serveur pour transférer les journaux d\'exécution et les variables vers un point de terminaison HTTP Pipedream lorsque vous récupérez les détails d\'un enregistrement ServiceNow Incident.

Prérequis

Assurez-vous que les conditions suivantes sont satisfaites :
  • autorisations de création et d\'exécution des Tâches API.
  • Autorisations pour configurer le serveur SIEM.
  • Connexions OAuth actives vers l\'instance ServiceNow. Pour plus d\'informations sur la configuration d\'une connexion ServiceNow OAuth, consultez Créer OAuth connexion.
  • Un compte Pipedream avec une source nommée Logging. Dans le portail Pipedream, allez à Sources > HTTP/Webhook > Nouvelles requêtes pour créer une source. Lorsque vous créez une source, le portail crée un point de terminaison HTTP personnalisé. Utilisez ce point de terminaison comme serveur SIEM pour collecter les journaux.

Procédure

  1. Connectez-vous à votre Control Room.
  2. Effectuez les actions suivantes pour ajouter le point de terminaison HTTP Pipedream en tant que serveur SIEM pour la journalisation.
    1. Accédez à Administration > Paramètres > Configuration de l\'intégration SIEM.
    2. Sélectionnez Activé dans Configuration de l\'intégration SIEM externe.
    3. Saisissez le point de terminaison HTTP Pipedream dans Point de terminaison du serveur SIEM.
      Le point de terminaison HTTP Pipedream est au format suivant https://<unique_source_id>.m.pipedream.net. Le portail Pipedream génère automatiquement l\'identifiant_source_unique lorsque vous créez une source.
    4. Sélectionnez POST comme méthode de requête HTTP dans Méthode HTTP.
    5. Saisissez Message comme attribut d\'événement pour le fichier JSON dans Attribut d\'événement.
    6. Cliquez sur Enregistrer les modifications pour enregistrer la configuration.
  3. Effectuez les étapes suivantes pour créer un(e) Tâche API.
    1. Accédez à Automatisation > Créer > Tâche API pour créer une Tâche API dans la page Automatisation.
    2. Saisissez servicenow-logging dans le champ de nom de la fenêtre modale Créer une tâche API, puis cliquez sur Créer et modifier.
      L\'Tâche API avec le nom journalisation apparaît sur la page de l\'éditeur.
  4. Effectuez les étapes suivantes pour ajouter et configurer l\'action ServiceNow Authentification.
    1. Allez à ServiceNow > Authentification pour ajouter l\'action.
    2. Sélectionnez Connexion OAuth de la Control Room dans Type d\'authentification.
    3. Cliquez sur Sélectionner pour sélectionner la connexion ServiceNow OAuth configurée.
    4. Facultatif : Saisissez un nom personnalisé dans Nom de session.
      Par défaut, Par défaut est défini comme nom de session.
  5. Effectuez les étapes suivantes pour ajouter et configurer l\'action ServiceNow Get Record.
    1. Allez à ServiceNow > Obtenir un enregistrement pour ajouter l\'action.
    2. Saisissez incident dans Nom de la table.
    3. Saisissez le sys_id de l\'enregistrement d\'incident dans Enregistrement sys_id.
    4. Sélectionnez Plusieurs variables et ajoutez les variables suivantes dans Attribuer la sortie à une variable dictionnaire.
      • état_de_l\'incident: Variable de chaîne avec la clé state pour capturer l\'état de l\'enregistrement.
      • brève description de l\'incident : Variable de chaîne avec la clé short_description pour capturer la brève description de l\'enregistrement.
      • incident_sys_id: Variable de chaîne avec la clé sys_id pour capturer le sys_id de l\'incident.
  6. Effectuez les étapes suivantes pour ajouter et configurer l\'action Log to Server.
    1. Allez à Actions > Journalisation, puis ajoutez l\'action Journaliser sur le serveur à l\'automatisation.
    2. Saisissez servicenow incident logs dans le champ Texte à journaliser pour définir l\'en-tête du contenu du journal.
    3. Sélectionnez l\'onglet Custom selection dans le paramètre Variables à enregistrer (Facultatif).
    4. Activez les variables créées à l\'étape précédente.
      Activer les cases à cocher transmet les variables de chaîne et leurs valeurs au point de terminaison.
    5. Saisissez incident_record dans le champ Balise de source de données (facultatif) pour définir l\'identifiant unique du contenu du journal sur le serveur.
      Le balisage permet un filtrage facile des journaux. Vous pouvez également utiliser une variable de chaîne pour baliser le contenu du journal.
    6. Sélectionnez Info (6) pour définir le niveau de journalisation.
  7. Sélectionnez Enregistrer pour enregistrer l\'automatisation.
Lorsque vous exécutez l\'automatisation à l\'aide de l\'option Exécuter la tâche API > Exécuter maintenant depuis le menu à trois points verticaux sur la page référentiel, l\'automatisation récupère les détails de l\'enregistrement d\'incident ServiceNow et transmet l\'ensemble des journaux d\'exécution et personnalisés au point de terminaison HTTP Pipedream.

Étapes suivantes

Connectez-vous au portail Pipedream et allez à Sources > Journalisation > Événements pour afficher les journaux. La dernière entrée du journal contient les journaux personnalisés générés par l\'action Log to Server. Le système transfère les journaux personnalisés au point de terminaison HTTP dans le format suivant :
{
  "method": "POST",
  "path": "/",
  "query": {},
  "client_ip": "35.155.28.36",
  "url": "https://04038b46964107d148cfdd251d89c826.m.pipedream.net/",
  "headers": {
    "host": "04038b46964107d148cfdd251d89c826.m.pipedream.net",
    "content-length": "459",
    "accept-encoding": "gzip;q=1.0,deflate;q=0.6,identity;q=0.3",
    "accept": "*/*",
    "user-agent": "Ruby",
    "content-type": "application/x-ndjson"
  },
  "bodyRaw": "{\"logMessage\":{\"logContent\":\"servicenow incident logs\",\"variableValues\":{\"incident_state\":\"1\",\"incident_sys_id\":\"57af7aec73d423002728660c4cf6a71c\",\"incident_short_description\":\"API call issue\"}},\"executionId\":\"b2e45a6d-186b-4b96-a2a2-3509808909f9_88f3a7ff9e646cc7\",\"logLevel\":\"INFO\",\"sysLogSource\":\"incident_record\",\"botName\":\"servicenow-logging\",\"botId\":\"45\",\"logCreatedTime\":\"2025-10-24T18:13:41.267798Z\",\"_tenantId\":\"dc170ff6-42d0-4f3d-8e9f-1904278d77f8\"}\n",
  "body": {
    "logMessage": {
      "logContent": "servicenow incident logs",
      "variableValues": {
        "incident_state": "1",
        "incident_sys_id": "57af7aec73d423002728660c4cf6a71c",
        "incident_short_description": "API call issue"
      }
    },
    "executionId": "b2e45a6d-186b-4b96-a2a2-3509808909f9_88f3a7ff9e646cc7",
    "logLevel": "INFO",
    "sysLogSource": "incident_record",
    "botName": "servicenow-logging",
    "botId": "45",
    "logCreatedTime": "2025-10-24T18:13:41.267798Z",
    "_tenantId": "dc170ff6-42d0-4f3d-8e9f-1904278d77f8"
  }
}