Définition des règles de routage

Pour définir une règle de routage, vous devez spécifier une ou plusieurs cibles comme destination des journaux de la plate-forme. Vous pouvez également définir un ou plusieurs filtres d'inclusion qui définissent les conditions d'acheminement des journaux de la plate-forme vers ces destinations.

Pour chaque route définie dans le compte, vous pouvez configurer jusqu'à 10 règles. Les règles précisent quels journaux de plate-forme sont acheminés dans une région et où les acheminer. Pour plus d'informations, voir Comprendre le fonctionnement des itinéraires dans votre compte.

Une règle se compose d'une action, d'une ou plusieurs cibles et de 0 ou plusieurs filtres d'inclusion.

Cibles

Les cibles définissent la liste des identifiants de cibles vers lesquels les journaux de la plate-forme sont acheminés.

  • Vous pouvez spécifier jusqu'à trois ID cibles par règle.

  • Vous pouvez définir des ID cibles pour des ressources disponibles dans la même région que celle où vous configurez l'itinéraire, dans une autre région et dans un autre compte.

Par exemple, vous pouvez définir une liste de cibles comme suit :

"targets": [{"id":"11111111-1111-1111-1111-111111111111"},{"id":"22222222-2222-2222-2222-222222222222"}]

Les cibles doivent être des instances IBM Cloud Logs.

Action

L'action définit si IBM Cloud Logs Routing inclut ou exclut les journaux de plate-forme sur l'itinéraire. Deux actions sont prises en charge : send et drop. Si elle n'est pas spécifiée, l'action par défaut est d'envoyer les journaux de la plate-forme.

send
Les journaux de la plate-forme sont envoyés, en fonction de la règle de routage, sur l'itinéraire défini.
drop
Les journaux de plate-forme sont exclus, sur la base de la règle de routage, lorsque les journaux de plate-forme sont envoyés sur l'itinéraire défini.

Filtres d'inclusion

Les filtres d'inclusion définissent les conditions utilisées pour déterminer quels journaux de plate-forme sont acheminés vers les cibles spécifiées dans la règle.

Pour acheminer tous les journaux de plate-forme, excluez la définition de inclusion_filters lorsque vous configurez un itinéraire.

Les filtres d'inclusion sont composés d'un operand, d'un operator et d'un value:

operand

Operand est le nom de la propriété de la cible qui est utilisée pour filtrer les données. Les opérandes suivants sont pris en charge : location. La valeur est extraite du CRN cible.

operator

Deux opérateurs sont pris en charge : in et is.

in

La valeur de la propriété de l'opérande est comparée à une liste de valeurs.

Vous pouvez définir jusqu'à 20 valeurs.

is

La valeur de la propriété de l'opérande est comparée à une valeur unique.

Lors de l'utilisation de is, une seule valeur peut être spécifiée.

value

Une chaîne, ou un tableau de chaînes, à comparer à la propriété operand pour déterminer si le journal est acheminé ou non. Lorsque le site is operator est utilisé, le site value doit comprendre une seule chaîne de caractères. Lorsque in operator est utilisé, value peut inclure plusieurs chaînes dans un tableau.

Les valeurs valables dépendent du site operand.

location
Tout endroit où IBM Cloud Logs Routing est disponible.

Notez ces limitations lors de la configuration des filtres d'inclusion.

  • Vous pouvez configurer jusqu'à 7 filtres d'inclusion pour chaque règle.

  • Vous pouvez configurer jusqu'à 20 valeurs pour inclusion_filter.values.

  • Chaque valeur configurée pour inclusion_filter.values peut comporter un maximum de 100 caractères.

Accès IAM

Les utilisateurs doivent avoir les rôles IAM appropriés pour travailler avec les règles de routage. Pour plus d'informations sur les rôles IAM, voir Gestion de l'accès IAM

Définition des règles de routage à l'aide de l'interface utilisateur

Vous pouvez configurer les règles de routage des filtres d'action et d'inclusion dans l'interface utilisateur. Pour plus d'informations, voir Gestion des itinéraires.

Définition des règles de routage à l'aide de la CLI

Les règles pour les itinéraires et les filtres d'inclusion sont définies au format JSON. Les règles sont définies de la manière suivante :

  • En utilisant l'option --rules, les informations sont transmises sous forme de JSON directement à la commande.
  • En utilisant l'option --files, les informations sont transmises sous la forme d'un fichier JSON.

Exemple utilisant l'option --rules

L'exemple suivant spécifie des règles directement sur l'option --rules. Dans cet exemple, tous les journaux de plate-forme provenant de us-east sont acheminés vers 0b4e6aa9-257c-4a3a-ae42-9a36a5b3adc7. Tous les journaux de plate-forme provenant de eu-de et eu-es sont acheminés vers 6f9137b3-2bb9-4724-851b-153e23c82d80.

'[{"action": "send", "targets":[{"id":"0b4e6aa9-257c-4a3a-ae42-9a36a5b3adc7"}], "inclusion_filters":[{"operand": "location","operator": "is","values": ["us-east"]}]},{"targets":[{"id":"22222222-2222-2222-2222-222222222222"},{"id":"33333333-3333-3333-3333-3333333333333"}], "inclusion_filters":[{"operand": "location","operator": "in","values": ["eu-de","eu-es"]}]}]'

'[{"action" : "send", "targets" [:{"id":"0b4e6aa9-257c-4a3a-ae42-9a36a5b3adc7"}], "inclusion_filters":[{"operand": "location","operator": "is","values": ["us-east"] }]},{"targets": [{"id":"6f9137b3-2bb9-4724-851b-153e23c82d80"}], "inclusion_filters":[{"operand": "location","operator": "in","values": ["eu-de","eu-es"] }]}]'

La sortie de la commande se présente comme suit :

Id           92f4cdb3-212c-4811-bf16-03b5449e0fb8
Name         route1
Rules
             action              send
             inclusion_filters
                                 operand    location
                                 operator   is
                                 values     [us-east]

             targets
                                 id            0b4e6aa9-257c-4a3a-ae42-9a36a5b3adc7
                                 name          cl-target2
                                 target_type   cloud-logs


             action              send
             inclusion_filters
                                 operand    location
                                 operator   in
                                 values     [eu-de, eu-es]

             targets
                                 id            6f9137b3-2bb9-4724-851b-153e23c82d80
                                 name          cl-platform-logs-sydney-113
                                 target_type   cloud-logs


Created At   2026-04-28T22:26:38.022Z
Updated At   2026-04-28T22:26:38.022Z
Managed By   account

Exemple utilisant l'option --file

L'exemple suivant spécifie des règles en transmettant un fichier JSON nommé rules_def.json avec l'option --file:

--file rules_def.json

Le fichier rules_def.json contient

[
  {
    "action":"send",
    "targets": [
      {
        "id":"0b4e6aa9-257c-4a3a-ae42-9a36a5b3adc7""
      },
      {
        "id":"6f9137b3-2bb9-4724-851b-153e23c82d80"
      }
    ],
    "inclusion_filters": [
        {
          "operand": "location",
          "operator": "in",
          "values": [
            "us-south",
            "eu-de"
          ]
        }
    ]
  }
]

Définir des règles de routage en utilisant l'API

Les cibles et les filtres d'inclusion sont définis dans les appels API à l'aide de rules. Les rules sont définis dans une structure JSON.

Par exemple, l'exemple suivant crée une route nommée my-route et envoie les journaux de plate-forme de la région us-east aux cibles 0b4e6aa9-257c-4a3a-ae42-9a36a5b3adc7 et 6f9137b3-2bb9-4724-851b-153e23c82d80.

curl -X POST https://api.private.<REGION>.logs-router.cloud.ibm.com/v3/routes -H "Authorization: Bearer <IAM_TOKEN>" -H 'content-type: application/json' -d '{
    "name": "my-route",
    "rules": [
      {
        "action":"send",
        "targets": [{"id":"0b4e6aa9-257c-4a3a-ae42-9a36a5b3adc7"}, {"id":"6f9137b3-2bb9-4724-851b-153e23c82d80"}],
        "inclusion_filters": [
          {
            "operand": "location",
            "operator": "is",
            "values": ["us-east"]
          }
        ]
      }
    ]
  }'

Pour plus d'informations, voir la référence de l'API.