ListFTP 2025.5.31.15¶
Bundle¶
org.apache.nifi | nifi-standard-nar
Description¶
Effectue une liste des fichiers résidant sur un serveur FTP. Pour chaque fichier trouvé sur le serveur distant, un nouveau FlowFile est créé avec l’attribut de nom de fichier défini comme le fichier du serveur distant. Vous pouvez ensuite l’utiliser en conjonction avec FetchFTP pour récupérer ces fichiers.
Exigences en matière d’entrées¶
FORBIDDEN
Prend en charge les propriétés dynamiques sensibles¶
false
Propriétés¶
Propriété |
Description |
---|---|
Mode de connexion |
Le mode de connexion FTP |
Connection Timeout |
Délai d’attente avant l’interruption de la création d’une connexion |
Délai d’expiration des données |
Lors du transfert d’un fichier entre le système local et le système distant, cette valeur indique le temps qui peut s’écouler sans qu’aucune donnée ne soit transférée entre les systèmes |
Filtre de fichier Regex |
Fournit une expression régulière Java pour filtrer les noms de fichiers ; si un filtre est fourni, seuls les fichiers dont les noms correspondent à cette expression régulière seront recherchés |
Nom d’hôte |
Le nom d’hôte entièrement qualifié ou l’adresse IP du système distant |
Ignorer les fichiers en pointillés |
Si true, les fichiers dont le nom commence par un point (« . ») seront ignorés |
Taille de la mémoire tampon interne |
Paramètre la taille de la mémoire tampon interne pour les flux de données mis en mémoire tampon |
Mot de passe |
Mot de passe du compte utilisateur |
Regex de filtrage de chemin |
Si la recherche récursive est true, seuls les sous-répertoires dont le chemin correspond à l’expression régulière donnée seront analysés |
Port |
Le port auquel il faut se connecter sur l’hôte distant pour récupérer les données |
Chemin distant |
Le chemin d’accès au système distant à partir duquel les fichiers doivent être extraits ou poussés |
Taille du lot d’interrogation distante |
Cette valeur indique le nombre de chemins de fichiers à trouver dans un répertoire donné du système distant lors de l’établissement d’un listing de fichiers. En général, il n’est pas nécessaire de modifier cette valeur, mais lorsqu’il s’agit d’interroger un système distant contenant un très grand nombre de fichiers, cette valeur peut s’avérer cruciale. Définir une valeur trop élevée peut entraîner de très mauvaises performances, tandis qu’une valeur trop basse peut ralentir le débit. |
Recherche récursive |
Si true, les fichiers seront extraits de sous-répertoires arbitrairement imbriqués ; sinon, les fichiers ne seront pas extraits des sous-répertoires |
Mode de transfert |
Le mode de transfert FTP |
NomUtilisateur |
NomUtilisateur |
et-initial-listing-target |
Indiquez comment le listing initial doit être traité. Utilisé par la stratégie « Entités de suivi ». |
et-state-cache |
Les entités répertoriées sont stockées dans le stockage en cache spécifié afin que ce processeur puisse reprendre le listing lors du redémarrage de NiFi ou en cas de changement de nœud principal. la stratégie « Entités de suivi » requiert les informations de suivi de toutes les entités de la liste au cours de la dernière « fenêtre de suivi ». Pour prendre en charge un grand nombre d’entités, la stratégie utilise DistributedMapCache au lieu de l’état géré. Le format de la clé de cache est “ListedEntities::{processorId}(::{nodeId})”. S’il s’agit d’entités répertoriées par nœud, la partie facultative « ::{nodeId} » est ajoutée pour gérer l’état séparément. Par exemple, clé de cache à l’échelle du clustering = “ListedEntities::8dda2321-0164-1000-50fa-3042fe7d6a7b”, clé de cache par nœud = “ListedEntities::8dda2321-0164-1000-50fa-3042fe7d6a7b::nifi-node3” Le contenu de cache stocké est une chaîne JSON compressée avec Gzip. La clé de cache sera supprimée lorsque la configuration du listing cible sera modifiée. Utilisé par la stratégie « Entités de suivi ». |
et-time-window |
Indiquez pendant combien de temps ce processeur doit suivre les entités déjà inscrites sur la liste. La stratégie « Suivi des entités » permet de sélectionner toute entité dont l’horodatage se situe à l’intérieur de la fenêtre temporelle spécifiée. Par exemple, si le paramètre est fixé à « 30 minutes », toute entité dont l’horodatage se situe dans les 30 dernières minutes sera la cible du listing lors de l’exécution de ce processeur. Une entité de la liste est considérée comme « nouvelle/mise à jour » et un FlowFile est émis si l’une des conditions suivantes est remplie : 1. n’existe pas dans les entités déjà répertoriées, 2. a un horodatage plus récent que celui de l’entité mise en cache, 3. a une taille différente de celle de l’entité mise en cache. Si l’horodatage d’une entité mise en cache devient plus ancien que la fenêtre temporelle spécifiée, cette entité sera retirée de la liste des entités déjà mises en cache. Utilisé par la stratégie « Entités de suivi ». |
suivre le lien symbolique |
Si true, les fichiers symboliques ainsi que les sous-répertoires symboliques imbriqués seront extraits ; sinon, les fichiers symboliques ne seront pas lus et les sous-répertoires à liens symboliques ne seront pas traversés |
ftp-use-utf8 |
Indique au client d’utiliser le codage UTF-8 lors du traitement des fichiers et des noms de fichiers. S’il a la valeur true, le serveur doit également prendre en charge le codage UTF-8. |
listing-strategy |
Précisez comment déterminer les entités nouvelles/mises à jour. Voir les descriptions de chaque stratégie pour plus de détails. |
service proxy-configuration |
Spécifie le Controller Service de configuration proxy pour les requêtes réseau proxy. |
record-writer |
Spécifie le Record Writer à utiliser pour créer le listing. Si vous ne le précisez pas, un FlowFile sera créé pour chaque entité inscrite sur la liste. Si le Record Writer est spécifié, toutes les entités seront écrites sur un seul FlowFile au lieu d’ajouter des attributs à des FlowFiles individuels. |
target-system-timestamp-precision |
Spécifiez la précision de l’horodatage dans le système cible. Étant donné que ce processeur utilise l’horodatage des entités pour décider lesquelles doivent être répertoriées, il est crucial d’utiliser la bonne précision d’horodatage. |
Gestion de l’État¶
Champs d’application |
Description |
---|---|
CLUSTER |
Après avoir effectué un listing de fichiers, l’horodatage du fichier le plus récent est enregistré. Cela permet au processeur de dresser uniquement la liste des fichiers qui ont été ajoutés ou modifiés après cette date lors de la prochaine exécution du processeur. L’état est stocké dans tout le cluster afin que ce processeur puisse être exécuté uniquement sur le nœud principal et que, si un nouveau nœud principal est sélectionné, le nouveau nœud ne duplique pas les données qui ont été répertoriées par le nœud principal précédent. |
Relations¶
Nom |
Description |
---|---|
success |
Tous les FlowFiles reçus sont routés vers le succès |
Écrit les attributs¶
Nom |
Description |
---|---|
ftp.remote.host |
Le nom d’hôte du serveur FTP |
ftp.remote.port |
Le port sur lequel la connexion a été établie sur le serveur FTP |
ftp.liste.utilisateur |
Le nom d’utilisateur de l’utilisateur qui a effectué le listing FTP |
file.owner |
L’identifiant numérique du propriétaire du fichier source |
file.group |
L’identifiant numérique du groupe du fichier source |
file.permissions |
Les autorisations de lecture/écriture/exécution du fichier source |
file.size |
Le nombre d’octets dans le fichier source |
file.lastModifiedTime |
Horodatage de la date de la dernière modification du fichier dans le système de fichiers sous la forme « aaaa-MM-jj’T’HH: mm:ssZ » |
filename |
Le nom du fichier sur le serveur FTP |
path |
Le nom complet du répertoire du serveur FTP à partir duquel le fichier a été extrait |