FME Flow:2025.1

Disposition du fichier de configuration

Les moteurs FMEfichier de configuration est composé de plusieurs sections, chacune exécutant un ensemble spécifique de tâches. Le fichier de configuration peut contenir deux composants : une section globale et zéro ou plusieurs sous-sections.

La disposition générale ressemble à ceci :

SECTION_GLOBALE

<Directives mondiales>

SOUS_SECTION <nom>

<Sous-sectionDirectives>

Section mondiale

La section Global définit toutes les directives globales qui s'appliquent à une seule session FME Engine. Une session est définie comme la période de temps pendant laquelle un moteur FME est démarré, effectue un certain nombre de traductions et est arrêté.

La section Globale a la forme générale suivante :

SECTION_GLOBALE \

[FME_WORKING_DIR <chemin du répertoire des résultats> \]

[FME_MAPPING_DIR <chemin du répertoire racine du référentiel> \]

[FME_RESULT_LIFETIME <résultats-durée-de-vie-secondes> \]

[FME_PURGE_INTERVAL <résultats-suppression-intervalle-secondes> \]

[AUTO_DIR_PREFIX <préfixe_répertoire> \]

[AUTO_FILE_PREFIX <préfixe_fichier> \]

[DÉLAI DE RÉCEPTION 0 \

[FME_SHARED_RESOURCE_DIR <répertoire_partagé>

[FME_SERVER_LOG_FILE <chemin du fichier journal du serveur>\]

[MACRO_DEF FME_DATA_REPOSITORY <chemin-répertoire-du-dépôt-de-données>\]

[FME_ENGINE_MEMORY_REDLINE <pourcentage> \]

[RÉPONSE_SUCCÈS <message> \]

[FAILURE_RESPONSE <message> \]

Les directives globales sont décrites dans le tableau suivant. Il est important de se rappeler que les directives de sous-section remplacent les directives globales.

Directive GLOBAL_SECTION

Description

FME_WORKING_DIR <chemin du répertoire des résultats>

Spécifie le chemin du répertoire dans lequel leFME Flow écrit tous les résultats de traduction sauf si leFME_WORKING_DIR est spécifié dans la sous-section relative à un travail particulier.

Défaut: Répertoire de travail actuel

NoteQuanden changeant le répertoire, vous devez également modifier la directive correspondante dans les fichiers de propriétés de tous les services d'application Web que vous utilisez. For example, if you use the Data Download service, you must update the RESULT_DIR directive in the properties file for that service. The web application properties files are located at <FMEFlowDir>\Utilities\tomcat\webapps\<WebApp>\WEB-INF\conf.
AvertissementVeillez à ce que leFME_WORKING_DIR la valeur est définie sur le répertoire approprié. Cet emplacement est l'endroit où le moteur FME écrit ses résultats de traduction. Ceci est important : vous pouvez configurer le moteur FME pour supprimer périodiquement et de manière récursive tous les fichiers de ce répertoire qui sont plus anciens qu'un certain âge (spécifié parFME_RESULT_LIFETIME). Quand leFME_WORKING_DIR est défini sur le mauvais répertoire, leFME Flow supprime les fichiers dans ce répertoire au lieu d'écrire les résultats de la traduction ici.

FME_MAPPING_DIR <chemin du répertoire racine du référentiel>

Spécifie leFME Flowdépôt deracine chemin du répertoire, oùworkspaceLes commandes exécutées par le moteur FME pendant les traductions sont contenues.

Défaut: Répertoire de travail actuel

FME_RESULT_LIFETIME <résultats-durée-de-vie-secondes>

Spécifie la durée, en secondes, pendant laquelle les résultats de traduction sont conservés. Le moteur FME vérifie périodiquement et supprime de manière récursive tous les fichiers plus anciens que ce montant duFME_WORKING_DIR comme mesure d'ordre administratif. La fréquence de cette vérification de suppression automatique est définie par la valeur deINTERVALLE_PURGE_FME, décrit ci-après. Chaque fois qu'une suppression automatique de fichier est effectuée, elle se produit après une traduction.

Défaut: Si la valeur est zéro ou si la directive est absente, les résultats ne sont jamais supprimés – la durée de vie est infinie.

FME_PURGE_INTERVAL <résultats-suppression-intervalle-secondes>

Spécifie, en secondes, la période de vérification de suppression automatique. Le moteur FME vérifie les fichiers plus anciens queFME_RESULT_LIFETIME et supprime tout ce qu'il trouve. Ce contrôle est effectué auINTERVALLE_PURGE_FME période. Notez que le moteur FME décide d'effectuer ou non la vérification uniquement après chaque traduction. Il ne définit pas de minuterie pour déclencher la vérification. Cela signifie que la vérification peut se produire à l'intervalle défini, mais peut également se produire à des intervalles plus longs en fonction de la fréquence à laquelle les traductions sont effectuées.

Défaut: Si cette directive est absente, la valeur par défaut est 0 – vérifie après chaque traduction s'il existe des résultats de traduction à purger.

AUTO_DIR_PREFIX <préfixe_répertoire> et AUTO_FILE_PREFIX <préfixe_fichier>

Le fichier de configuration du moteur FME utilise les deux pseudo-variables : S

!FME_AUTO_DIR_NAME!

!FME_AUTO_FILE_NAME!

pour représenter des noms uniques pour les répertoires et les fichiers de résultats de traduction respectivement. Par défaut, les noms ont cette forme :

FME_<cnnnnnnnnnnnnnn>

Par exemple:

FME_a03508997017636

Vous pouvez modifier la valeur par défautFME_ préfixe à une valeur spécifique au site. Les préfixes spécifiques au site sont définis à l'aide deAUTO_DIR_PREFIX directive pour définir le préfixe des noms de répertoires et le AUTO_FILE_PREFIX directive pour définir le préfixe des noms de fichiers. Les directives ont la syntaxe suivante :

AUTO_DIR_PREFIX <préfixe>

AUTO_FILE_PREFIX <préfixe>

L'application la plus utile de ces directives est de définir le préfixe du nom de fichier avec leAUTO_FILE_PREFIXdirectif. Cela permet aux noms des fichiers de résultats de traduction de mieux refléter l’organisation d’origine.

Lorsque l'une de ces directives est présente, la directive spécifiée<préfixe> la valeur est utilisée à la place deFME_. En cas d'absence, le préfixe par défaut est leFME_ valeur par défaut.

Par exemple, siAUTO_FILE_PREFIXNouille_ a été spécifié, les noms de fichiers de résultat de traduction prendraient cette forme :

Nouilles_<cnnnnnnnnnnnnnn>

Notez qu'un caractère de soulignement final dans la valeur du préfixe n'est pas supposé. Si vous souhaitez que votre préfixe contienne l’un de ces caractères, vous devez l’inclure explicitement dans la valeur du préfixe.

Vous pouvez spécifier l'une ou les deux de ces directives dans la section globale et/ou dans n'importe quelle sous-section du fichier de configuration. Lorsqu'il est spécifié dans la section globale, le préfixe est utilisé par toutes les sous-sections qui n'en spécifient pas elles-mêmes. Les sous-sections qui spécifient un préfixe utilisent celui-ci à la place et n'utilisent aucun préfixe global qui a été spécifié.

Défaut:Lorsque la directive est absente, un préfixe deFME_ est utilisé.

RECEIVE_TIMEOUT <timeout_period_ms>

Ce délai d'attente est mesuré en millisecondes. Lorsque le moteur FME ne reçoit aucune demande de traduction au cours de cette période, le moteur FME s'arrête. LeFME Flow le système démarre ensuite une nouvelle instance de FME Engine.

Dans la plupart des conditions de fonctionnement, cette valeur est définie sur sa valeur par défaut recommandée de zéro. Ce paramètre signifie que le moteur FME attend indéfiniment les demandes et ne s'arrête jamais en raison d'un manque de demandes entrantes.

Cependant, vous pouvez utiliser cette directive pour spécifier une période de délai d'expiration finie dans les environnements où un moniteur réseau arrête les connexions qui restent inactives au-delà d'une période prédéfinie. Lorsque cela est fait sur la connexion sur laquelle un moteur FME écoute pour recevoir des demandes, le moteur FME ne peut plus répondre et entre dans un état bloqué.

La définition de cette directive sur une valeur différente de zéro permet au moteur FME de s'arrêter après le temps spécifié. Le moteur FME sort efficacement de l'état bloqué, permettant ainsi auFME Flow système pour démarrer une nouvelle instance de FME Engine qui peut répondre, une fois de plus, aux requêtes.

FME_SHARED_RESOURCE_DIR <répertoires_partagés>

Spécifie les chemins d'accès aux fichiers d'un ou plusieurs répertoires racine. Ces répertoires sont utilisés par le moteur FME pour obtenir différents types deRessources, tels que les définitions de format personnalisé, de transformateur et de système de coordonnées. Utilisez des points-virgules pour séparer plusieurs chemins de fichiers de répertoire partagé.

Défaut:<FMEFlowDir>\Serveur\ressources\partagées

FME_SERVER_LOG_FILE <chemin du fichier journal du moteur>

Spécifie le chemin d'accès au fichier journal du moteur FME. Ce fichier journal contient un vidage du fichier de configuration du moteur et d'autres informations relatives au fonctionnement global du moteur FME. Notez que ce fichier n'enregistre pas le traitement des demandes de traduction individuelles, qui est enregistré séparément dans des fichiers journaux de traduction individuels.

Pour chaque moteur FME et, par conséquent, pour chaque fmeEngineConfig.txt, vous devez spécifier un nom de fichier fmeEngine.log différent.

Vous pouvez utiliser la pseudo-variable !FME_INSTANCE_NAME! pour créer un fichier journal nommé pour le nom de l'instance comme ceci :<FMEFlowDir>\Logs\fmeEngine_!FME_INSTANCE_NAME!.log

Cette directive inclut un paramètre supplémentaire qui suit le chemin du fichier. La valeur du paramètre peut êtreVRAI ouFAUX, indiquant si le fichier journal doit ou non être ajouté à l'heure de chaque démarrage du moteur FME. VRAI signifie que le fichier est ajouté à etFAUX signifie qu'il est écrasé.

Défaut:<FMEFlowDir>\Logs\fmeEngine.log FAUX

MACRO_DEF FME_DATA_REPOSITORY <chemin-répertoire-du-référentiel-de-données>

Spécifie le répertoire utilisé parFME FlowInterface utilisateur Web pour le téléchargement temporaire de données. Dans un environnement distribué, ce répertoire doit être accessible au serveur Web et aux moteurs FME. Il est recommandé de spécifier un chemin UNC.

FME_ENGINE_MEMORY_
REDLINE <facteur>

Le gestionnaire de ressources automatique détermine la mémoire totale optimale que le processus FME Engine doit utiliser. Il alloue également dynamiquement cette mémoire totale de manière optimale aux algorithmes de FME qui la demandent.

La directive FME_ENGINE_MEMORY_REDLINE est une indication donnée au moteur FME sur le degré d'agressivité avec lequel il doit consommer la mémoire. Il prend une valeur comprise entre 0 et 1 (0,5 est la valeur par défaut). Pour une utilisation plus agressive de la mémoire, une valeur supérieure à 0,5 doit être utilisée. Pour une utilisation plus sûre de la mémoire, une valeur inférieure à 0,5 doit être utilisée. Le risque d'être trop agressif est que le processus manque de mémoire ou que la machine tombe en panne. Le risque d’être trop conservateur est que le processus prendra plus de temps à se terminer.

Défaut:0,5

Messages de réponse

RÉPONSE_SUCCÈS

RÉPONSE D'ÉCHEC

LeRÉPONSE_SUCCÈS etRÉPONSE D'ÉCHEC les directives sont spécifiées au niveau mondial. Ils définissent la chaîne de message renvoyée par le moteur FME pour les traductions réussies et échouées respectivement. Ces directives fournissent le mécanisme par lequel le moteur FME communique les résultats au client.

Le contenu de ces messages de réponse n’a de sens que pour le client. Le moteur FME transmet simplement le message tel que défini au client, qui le traite ensuite de la manière qu'il choisit. Le message peut inclure les pseudo-variables prédéfinies et plusieurs autres directives.

Directives à usage particulier

En plus des directives de section globales communes répertoriées dans le tableau précédent, les directives à usage spécial suivantes sont également disponibles si nécessaire. Il est important de se rappeler que les directives de sous-section remplacent les directives globales.

Usage spécial
Directives

SDE30_PERM_CONNECT <hôte> <instance> <base de données> <ID utilisateur> <mot de passe>

 

Définit une connexion permanente à un serveur ESRI SDE. Cette connexion est établie juste avant que la première traduction ne soit effectuée sur le moteur FME. La connexion est ensuite maintenue par le moteur, de sorte que les traductions ultérieures n'ont pas besoin d'établir une nouvelle connexion SDE.

Soyez prudent lorsque vous utilisez cette directive car les connexions SDE sont une ressource précieuse et vous devez les utiliser avec parcimonie. En général, il est recommandé d’utiliser d’abord le moteur FME sans aucune connexion permanente. Vous pouvez envisager une connexion permanente ultérieurement, si vous trouvez que la connexion et la déconnexion au SDE sont trop coûteuses.

<hôte>

Le nom de l'ordinateur hôte sur lequel le serveur SDE s'exécute.

Défaut: Spécifique au site

<instance>

L'instance SDE à laquelle le moteur FME doit se connecter.

Défaut:port:5151

<base de données>

La base de données sur l'instance à connecter. Lorsque le SDE est sur des bases de données telles qu'Oracle, la valeur spécifiée n'est pas utilisée. Bien que vous puissiez spécifier n'importe quelle valeur, la convention est de spécifier la valeur NOTUSED pour la base de données.

Défaut: Spécifique au site

<ID utilisateur>

Le compte utilisateur utilisé pour se connecter au SDE.

Défaut: Spécifique au site

<mot de passe>

Le mot de passe utilisateur du compte utilisateur.

Défaut: Spécifique au site

Sous-sections

Les sous-sections sont facultatives et, lorsqu'elles sont présentes, leurs directives remplacent les directives globales. Lorsqu'une sous-section est présente, elle est nommée avec un mot-clé par lequel les applications clientes peuvent la référencer. Vous pouvez définir plusieurs sous-sections à des fins diverses.

Dans unFME Flow environnement, chaque service (tel que le téléchargement de données, le streaming de données, etc.) possède sa propre sous-section.

Si une demande d’emploi — y compris celle d’unFME Flow service — spécifie une sous-section, le moteur FME exécute ce travail en utilisant les directives de la sous-section spécifiée. Le tableau suivant montre lesFME Flow Services Web et sous-sections correspondantes utilisés par le moteur FME lors de l'exécution d'une demande de travail à partir de ce service.

NoteLes directives de sous-section ont priorité sur les directives globales.

FME FlowService

Sous-section Moteur FME

Service de téléchargement de données

SERVICE DE TÉLÉCHARGEMENT DE FICHIERS

Service de streaming de données

SERVICE DE TÉLÉCHARGEMENT DE STREAMING

FME FlowConsole

SERVEUR_CONSOLE_CLIENT

Transformateur FMEFlowJobSubmitter
(sous-section par défaut)

SOUMISSIONNAIRE_DE_TRAVAIL_SERVEUR

Service de soumission d'emplois

SERVICE DE SOUMISSION D'EMPLOI

Service REST

REST_SERVICE

FME FlowPlanificateur

PROGRAMMATEUR_SERVEUR

Chaque sous-section peut spécifier les opérations que le moteur FME doit effectuer avant et après le traitement d'une demande de traduction. La sous-section peut également définir quels messages de réponse de réussite et d'échec de traduction sont renvoyés au client et peut définir FMEworkspace valeurs macro également.

En plus de leurs propres directives, les sous-sections peuvent utiliser un certain nombre de directives disponibles pour la section Global pour remplacer les valeurs globales de cette sous-section particulière.

En spécifiant une sous-section par son nom dans la demande de traduction, les clients peuvent faire en sorte que les opérations définies par la sous-section soient effectuées par le moteur FME pour la traduction demandée.

Chaque sous-section a la forme générale suivante :

SOUS_SECTION <mot-clé> \

[<Directives globales> \]

[FME_TRANSFORMATION_LOG_DIR <chemin du répertoire du fichier journal> \]

[MACRO_DEF <macroName> <macroValue> \]*

[RÉPONSE_SUCCÈS <message> \]

[FAILURE_RESPONSE <message> \]

Les directives de sous-section, qui remplacent les directives globales, sont décrites dans le tableau suivant.

Directives SUB_SECTION

Description

SOUS_SECTION <mot-clé>

Identifie la sous-section en cours de définition. Il n'y a pas de limite au nombre de sous-sections que vous pouvez définir. Identifiez chaque sous-section avec un nom unique<mot-clé> – ça ne peut pas commencer parFME_.

<Directives globales>

Les directives globales suivantes sont également disponibles pour les sous-sections où vous pouvez les redéfinir pour avoir des valeurs différentes :

FME_WORKING_DIR

FME_MAPPING_DIR

AUTO_DIR_PREFIX

AUTO_FILE_PREFIX

RÉPONSE_SUCCÈS

RÉPONSE D'ÉCHEC

Les directives redéfinies remplacent la valeur globale de la sous-section particulière pour laquelle elles sont définies.

FME_TRANSFORMATION_LOG_DIR <chemin du répertoire du fichier journal>

Spécifie le chemin d'accès au répertoire par défaut contenant les fichiers journaux par traduction générés par le moteur FME pour cette sous-section.

Défaut:<FMEFlowDir>\Logs\<subsectionSpecificDir>

MACRO_DEF <nom de la macro> <valeur de la macro>>

Définit une valeur macro qui est fournie au FMEworkspace lorsque la traduction est effectuée. Le premier paramètre<macroName> spécifie le nom de la macro.

Tous les jetons jusqu'à la directive suivante ou la fin de laSOUS-SECTION forme de définition la valeur de<macroValue>.

Vous pouvez imbriquer des références de macro.

Une fois définies, les macros sont disponibles pour être utilisées dans les chaînes de réponse de réussite et d'échec, en utilisant la syntaxe de pseudo-variable (!macroName!).

Certaines sous-sections du moteur FME définissent une macro spécifique appeléeFME_SERVER_DEST_DIR dont la valeur est définie comme un chemin vers un répertoire unique généré par le système. L’intention est que ce répertoire soit utilisé comme emplacement de sortie pour les fichiers de résultats de traduction. Workspaceles auteurs peuvent référencer cette valeur en tant que paramètre publié et l'utiliser comme emplacement bien défini pour les ensembles de données de destination.

Messages de réponse

RÉPONSE_SUCCÈS

RÉPONSE D'ÉCHEC

LeRÉPONSE_SUCCÈS etRÉPONSE D'ÉCHEC les directives définissent la chaîne de message renvoyée par le moteur FME pour les traductions réussies et échouées respectivement. Ces directives fournissent le mécanisme par lequel le moteur FME communique les résultats au client.

Le contenu de ces messages de réponse n’a de sens que pour le client. Le moteur FME transmet simplement le message tel que défini au client, qui le traite ensuite de la manière qu'il choisit. Le message peut inclure les pseudo-variables prédéfinies et plusieurs autres directives.