Skip to content

[event-filter] Enrichissement avec l'entité

Lucas Seguinot requested to merge feat-event-filter-entity-enrichment into develop

Cette MR ajoute le socle pour les sources d'enrichissement externes, et ajoute la possibilité de définir des règles ajoutant l'entité à l'événement, et modifiant les informations de l'entité.

Deux nouvelles actions sont ajoutées aux règles d'enrichissement :

  • copy, qui permet de copier des données de types arbitraires (e.g. une entité) dans un champ d'un événement.
  • set_entity_info_from_template, qui permet de créer/modifier une information dans l'entité d'un événement.

L'intérêt est de permettre de faire des actions avant de récupérer l'entité (e.g. modifier le component), ou après (e.g. ajouter une info à l'entité).

La règle permettant d'ajouter l'entité à un événement est la suivante :

{
    "type": "enrichment",
    "pattern": {},
    "external_data": {
        "entity": {
            "type": "entity"
        }
    },
    "actions": [
        {
            "type": "copy",
            "from": "ExternalData.entity",
            "to": "Entity"
        }
    ],
    "on_success": "pass",
    "on_failure": "pass",
    "priority": 100
}

Les modifications sont documentées dans la MR https://git.canopsis.net/canopsis/canopsis/merge_requests/546, dans la doc admin, sections set_entity_info_from_template, copy et Données externes > Entités.

Validation

  • Vérifier que l'entité est toujours ajoutée au contexte et à l'événement, même si la règle ci dessus n'est pas présente/pas exécutée.
  • Vérifier que l'entité récupérée (avec ou sans cette règle) est la bonne, en particulier si la ressource/le composant d'un événement est modifié par une règle.
  • Vérifier qu'une fois que l'entité est récupérée, l'action set_entity_info_from_template fonctionne bien.
Edited by Lucas Seguinot

Merge request reports