For AI agents: the complete documentation index is available at https://docs.ovhcloud.com/fr/llms.txt, the full documentation bundle is available at https://docs.ovhcloud.com/fr/llms-full.txt, and this page is available as Markdown at https://docs.ovhcloud.com/fr/guides/public-cloud/data-platform/dpe-workflows-advanced-mode.md.

Configurer un workflow en mode Advanced

Voir en Markdown

Les workflows peuvent également être configurés directement à l'aide d'une configuration JSON. Pour accéder à la configuration JSON d'un nouveau workflow

Objectif

Les workflows peuvent également être configurés directement à l'aide d'une configuration JSON. Pour accéder à la configuration JSON d'un nouveau workflow, cliquez sur l'onglet Expert de la fenêtre "New Workflow" ou "Edit Workflow".

Workflow advanced Mode

Découvrir la configuration JSON

Les utilisateurs peuvent saisir directement dans l'éditeur JSON pour configurer un Workflow. La configuration JSON inclut plus d'options que celles disponibles via l'interface graphique.

Référence des paramètres du workflow

Par ordre alphabétique, les paramètres sont les suivants :

ParamètreTypeDescription
display_nameStringPermet de définir un nom pour le workflow
descriptionStringPermet de définir une description du workflow
workflowTableListe des Stages avec leurs actions associées
logLevelStringLa valeur du niveau de log définit le niveau de log minimum pour ce workflow. Elle peut prendre l'une des valeurs suivantes debug, info, notice, warning, error ou critical
auto_flushallBooleanCondition pour ajouter ou non la routine Flush All à la fin du workflow. Il s'agit d'une routine de maintenance qui rafraîchit tous les caches du flux de données (QB, API et APP)
dateMinStringLimite absolue inférieure du périmètre de dates
dateMaxStringLimite absolue supérieure du périmètre de dates
daysJSON ObjectValeurs minimale et maximale pour les dates relatives de la valeur du périmètre

Exemple de configuration JSON

Ci-dessous, la configuration JSON d'un workflow typique. Il comporte 2 Stages avec respectivement 2 actions dans "Stage 1" et 2 actions dans "Stage 2".

{
  "params": {
     "log_level": "info"
  },
  "auto_flushall": true,
  "display_name": "flushall",
  "description": "routine maintenance workflow",
  "stages": [
    {
      "stageName": "Stage 1",
      "actions": [
        {"action_conf": "5c9bba68555fb219eb000020"},
        {"action_conf": "5c9bba68555fb2190000ll99"}

      ]
    },
    {
      "stageName": "Stage 2",
      "actions": [
        {"action_conf": "5c9bba68555hghjgjhgjhgjh"}
      ]
    }
  ]
}

Paramètres du périmètre de dates

Pour définir le périmètre de dates, vous pouvez utiliser une limite de date absolue (par ex., fixée dans le temps) ou une limite de date relative (par ex., calculée à partir de la date actuelle).

Pour définir un périmètre de dates absolu, utilisez les paramètres dateMin et dateMax et saisissez les dates sous forme de chaîne au format YYYY-MM-DD. Par exemple, cela vous permettrait de relancer le calcul d'un workflow entre des dates spécifiques dans le passé.

{
  ...
  "dateMin": "2019-04-25",
  "dateMax": "2019-04-25"
}

Pour définir un périmètre de dates relatif, utilisez le paramètre days et saisissez, en jours, la distance par rapport à la date actuelle pour les limites inférieure et supérieure. Par exemple, cela serait utilisé dans un workflow quotidien qui ne devrait affecter que les données d'"avant-hier" et d'"aujourd'hui". Le nombre correspond au nombre de jours à soustraire de la date du jour.

{
  ...
  "days": {
    "min": "2",
    "max": "0"
  }
}

Paramètres des Stages

Les paramètres des Stages peuvent également être modifiés directement depuis l'interface utilisateur.

ParamètreTypeDescription
stageNameStringPermet de nommer chaque Stage
disable (Stages)BooleanPermet d'activer/désactiver des Stages spécifiques au sein d'un workflow
action_confStringCorrespond à l'ID unique de l'action que vous pouvez trouver en accédant aux informations de chaque action.
disable (Actions)BooleanPermet d'activer/désactiver des actions spécifiques au sein d'un Stage
{
  "display_name": "flushall",

  "workflow": [
    {
      "disable": false,
      "stageName": "update_metas_lite",
      "actions": [
        {
          "action_conf": "update_metas_lite",
          "disable": false
        }
      ]

  ]
}

Configurations de substitution

Configurations d'action

La substitution des configurations d'action vous permet de réutiliser la même action dans plusieurs workflows avec des paramètres d'exécution différents, sans affecter les configurations des actions elles-mêmes. Par exemple, supposons que vous ayez défini le périmètre d'une action, avec un ensemble de valeurs spécifique : "perimeterValues":["1","2"]

Vous pouvez réutiliser cette même action avec des valeurs de périmètre différentes dans le même workflow comme suit :

{
  "logLevel": "info",
  "auto_flushall": true,
  "display_name": "flushall",
  "workflow": [
    {
      "stageName": "Stage 1",
      "actions": [
        {"action_conf": "5c9bba68555fb219eb000020", "perimeterValues": ["1","2"]},
        {"action_conf": "5c9bba68555fb219eb000020", "perimeterValues": ["8"]}
      ]
    }
  ]
}
Info

Cet exemple précis n'a pas de sens en soi, mais il montre comment vous pouvez facilement définir des configurations différentes pour les mêmes actions au sein d'un seul workflow.

Priorités de configuration

Les configurations peuvent être substituées à 3 niveaux différents : workflow, Stages ou actions. Le niveau de configuration le plus granulaire s'applique à tous les sous-objets. Par exemple, les configurations définies au niveau du Stage seront remplacées par toute configuration définie au niveau de l'action. Utilisons l'exemple suivant pour illustrer l'ordre de priorité :

{
  "logLevel": "info",
  "perimeterValues": ["0"],
  "auto_flushall": true,
  "display_name": "flushall",
  "workflow": [
    {
      "stageName": "Stage 1",
      "perimeterValues": ["1"],
      "actions": [
        {"action_conf": "abc", "perimeterValues": ["2"]},
        {"action_conf": "efg"}

      ]
    },
    {
      "stageName": "Stage 2",
      "actions": [
        {"action_conf": "hij"}
      ]
    }
  ]
}

D'après la configuration JSON ci-dessus, les valeurs de périmètre pour les différentes actions exécutées dans le workflow seront les suivantes :

ID actionperimeterValueExplication
abc2L'action abc a des perimeterValues définies au niveau de l'action, ce qui remplace toute autre perimeterValues.
efg1L'action efg n'a pas de perimeterValues définies au niveau de l'action, ce qui signifie qu'elle utilise les perimeterValues définies pour le Stage auquel elle appartient, ici Stage 1.
hij0Ni l'action hij ni Stage 2 n'ont de perimeterValues définies, donc c'est celle du workflow qui sera appliquée.

Délai d'expiration du workflow

Si une action au sein d'un workflow prend plus de temps que prévu, il est possible de définir une option de timeout afin que le workflow soit interrompu. La durée du timeout est définie comme la valeur du paramètre workflow_timeout dans un format lisible tel que "worfklow_timeout":"1h 10m"

Les valeurs sont cumulatives d'une unité de temps à l'autre. Les unités de temps prises en charge incluent :

Unité de tempsDescription
wsemaines
djours
hheures
mminutes
ssecondes

Ci-dessous, un exemple de configuration JSON utilisant l'option de timeout du workflow :

{
  "logLevel": "info",
  "auto_flushall": true,
  "worfklow_timeout":"59m 50s",
  "display_name": "flushall",
  "workflow": [
    {
      "stageName": "Stage 1",
      "actions": [
        {"action_conf": "5c9bba68555fb219eb000020"},
        {"action_conf": "5c9bba68555fb2190000ll99"}

      ]
    }
  ]
}

Aller plus loin

Si vous avez besoin d'une formation ou d'une assistance technique pour la mise en oeuvre de nos solutions, contactez votre commercial ou cliquez sur ce lien pour obtenir un devis et demander une analyse personnalisée de votre projet à nos experts de l’équipe Professional Services.

Posez vos questions, faites-nous part de vos commentaires et interagissez directement avec l’équipe qui développe la Data Platform sur le canal Discord dédié.

Si vous avez besoin d'une assistance concernant vos services OVHcloud, créez une demande depuis notre centre d'aide.

Rejoignez notre communauté d'utilisateurs.

Cette page vous a-t-elle aidé ?