ListFTP 2025.5.31.15¶
Bundle¶
org.apache.nifi | nifi-standard-nar
Beschreibung¶
Listet die Dateien auf, die sich auf einem FTP-Server befinden. Für jede Datei, die auf dem Remote-Server gefunden wird, wird ein neues FlowFile erstellt, dessen Dateiname-Attribut auf den Namen der Datei auf dem Remote-Server gesetzt wird. Dies kann dann in Verbindung mit FetchFTP verwendet werden, um diese Dateien abzurufen.
Eingabeanforderung¶
FORBIDDEN
Unterstützt sensible dynamische Eigenschaften¶
false
Eigenschaften¶
Eigenschaft |
Beschreibung |
---|---|
Connection Mode |
Der FTP-Verbindungsmodus |
Connection Timeout |
Zeitspanne, die beim Herstellen einer Verbindung gewartet werden muss, bevor ein Timeout auftritt |
Data Timeout |
Bei der Übertragung einer Datei zwischen dem lokalen und dem Remote-System gibt dieser Wert an, wie lange keine Daten übertragen werden dürfen, bevor der Vorgang möglicherweise abgebrochen wird. |
File Filter Regex |
Bietet einen regulären Java-Ausdruck zum Filtern von Dateinamen. Wenn ein Filter angegeben wird, werden nur Dateien abgerufen, deren Namen mit diesem regulären Ausdruck übereinstimmen |
Hostname |
Der vollständig qualifizierte Hostname oder die IP-Adresse des Remote-Systems |
Ignore Dotted Files |
Bei „true“, werden Dateien, deren Namen mit einem Punkt („.“) beginnen, ignoriert |
Internal Buffer Size |
Legen Sie die interne Puffergröße für gepufferte Datenströme fest. |
Password |
Kennwort für das Benutzerkonto |
Path Filter Regex |
Wenn Search Recursively „true“ ist, werden nur die Unterverzeichnisse durchsucht, deren Pfad mit dem angegebenen regulären Ausdruck übereinstimmt |
Port |
Der Port, zu dem eine Verbindung auf dem Remote-Host hergestellt werden soll, um die Daten von dort zu abzurufen |
Remote-Pfad |
Der Pfad auf dem Remote-System, von dem aus Dateien abgeufen oder gepusht werden sollen |
Remote Poll Batch Size |
Der Wert gibt an, wie viele Dateipfade in einem bestimmten Verzeichnis auf dem entfernten System gesucht werden sollen, wenn eine Dateiliste erstellt wird. Dieser Wert sollte im Allgemeinen nicht geändert werden müssen, aber bei der Abfrage eines Remote-Systems mit einer enormen Anzahl von Dateien kann dieser Wert entscheidend sein. Wenn dieser Wert zu hoch eingestellt ist, kann dies zu einer sehr schlechten Leistung führen, und wenn er zu niedrig eingestellt ist, kann der Durchfluss langsamer als normal sein. |
Search Recursively |
Bei „true“ werden Dateien aus beliebig verschachtelten Unterverzeichnissen abgerufen; andernfalls werden Unterverzeichnisse nicht durchsucht. |
Transfer Mode |
Der FTP-Übertragungsmodus |
Username |
Username |
et-initial-listing-target |
Legen Sie fest, wie das erste Freigabeangebot behandelt werden soll. Wird von der Strategie „Tracking Entities“ verwendet. |
et-state-cache |
Freigegebene Entitäten werden im angegebenen Cache-Speicher gespeichert, sodass dieser Prozessor die Freigabe bei einem Neustart von NiFi oder bei einem Wechsel des primären Knotens wieder aufnehmen kann. „Tracking Entities“-Strategie erfordert Tracking-Informationen von allen aufgelisteten Entitäten innerhalb des letzten „Tracking Time Window“. Um eine große Anzahl von Entitäten zu unterstützen, verwendet die Strategie DistributedMapCache anstelle eines verwalteten Zustands. Das Format des Cache-Schlüssels ist „ListedEntities: :{processorId}(::{nodeId})“. Wenn es pro Knoten aufgelistete Entitäten verfolgt, dann wird der optionale Teil „::{nodeId}“ hinzugefügt, um den Status separat zu verwalten. Beispiel: Clusterweiter Cache-Schlüssel = „ListedEntities::8dda2321-0164-1000-50fa-3042fe7d6a7b“, Cache-Schlüssel pro Knoten = „ListedEntities::8dda2321-0164-1000-50fa-3042fe7d6a7b::nifi-node3“ Der gespeicherte Cache-Inhalt ist eine Gzipped JSON-Zeichenkette. Der Cache-Schlüssel wird gelöscht, wenn die Konfiguration der Zielliste geändert wird. Wird von der Strategie „Tracking Entities“ verwendet. |
et-time-window |
Geben Sie an, wie lange dieser Prozessor bereits gelistete Entitäten verfolgen soll. Die Strategie „Tracking Entities“ kann jede Entität auswählen, deren Zeitstempel innerhalb des angegebenen Zeitfensters liegt. Wenn Sie z. B. „30 Minuten“ einstellen, wird jede Entität, deren Zeitstempel in den letzten 30 Minuten liegt, das Ziel des Freigabeangebots sein, wenn dieser Prozessor läuft. Ein gelistete Entität gilt als „neu/aktualisiert“ und ein FlowFile wird ausgegeben, wenn eine der folgenden Bedingungen erfüllt ist: 1. Sie ist nicht in den bereits gelisteten Entitäten vorhanden, 2. Sie hat einen neueren Zeitstempel als die zwischengespeicherte Entität, 3. Sie hat eine andere Größe als die zwischengespeicherte Entität. Wenn der Zeitstempel einer zwischengespeicherten Entität älter ist als das angegebene Zeitfenster, wird diese Entität aus den zwischengespeicherten, bereits gelisteten Entitäten entfernt. Wird von der Strategie „Tracking Entities“ verwendet. |
follow-symlink |
Bei „true“ werden auch symbolische Dateien und verschachtelte symbolische Unterverzeichnisse gelesen; andernfalls werden keine symbolischen Dateien gelesen und keine symbolischen Link-Unterverzeichnisse durchlaufen |
ftp-use-utf8 |
Weist den Client an, bei der Verarbeitung von Dateien und Dateinamen die UTF-8-Codierung zu verwenden. Wenn diese Einstellung auf „true“ gesetzt ist, muss der Server auch die UTF-8-Codierung unterstützen. |
listing-strategy |
Legen Sie fest, wie neue/aktualisierte Entitäten ermittelt werden sollen. Weitere Informationen finden Sie in den Beschreibungen der einzelnen Strategien. |
proxy-configuration-service |
Gibt den Proxy-Konfigurations-Controller Service an für die Weiterleitung von Netzwerkanforderungen festl. |
record-writer |
Gibt den Record Writer an, der zum Erstellen der Liste verwendet werden soll. Wenn nicht angegeben, wird für jede aufgelistete Entität ein FlowFile erstellt. Wenn der Record Writer angegeben ist, werden alle Entitäten in ein einziges FlowFile geschrieben, anstatt Attribute zu einzelnen FlowFiles hinzuzufügen. |
target-system-timestamp-precision |
Geben Sie die Zeitstempelgenauigkeit auf dem Zielsystem an. Da dieser Prozessor den Zeitstempel von Entitäten verwendet, um zu entscheiden, welche aufgelistet werden sollen, ist es wichtig, die richtige Zeitstempelgenauigkeit zu verwenden. |
Statusmanagement¶
Bereiche |
Beschreibung |
---|---|
CLUSTER |
Nach dem Auflisten der Dateien wird der Zeitstempel der neuesten Datei gespeichert. Dadurch kann der Prozessor bei der nächsten Ausführung nur Dateien auflisten, die nach diesem Datum hinzugefügt oder geändert wurden. Der Status wird im gesamten Cluster gespeichert, sodass dieser Prozessor nur auf dem primären Knoten ausgeführt werden kann. Wenn ein neuer primärer Knoten ausgewählt wird, dupliziert der neue Knoten nicht die Daten, die vom vorherigen primären Knoten aufgeführt wurden. |
Beziehungen¶
Name |
Beschreibung |
---|---|
success |
Alle FlowFiles, die empfangen werden, werden an die Beziehung „success“ weitergeleitet. |
Schreibt Attribute¶
Name |
Beschreibung |
---|---|
ftp.remote.host |
Der Hostname des FTP-Servers |
ftp.remote.port |
Der Port, mit dem eine Verbindung auf dem FTP-Server hergestellt wurde |
ftp.listing.user |
Der Benutzername des Benutzers, der die FTP-Auflistung durchgeführt hat |
file.owner |
Die numerische Eigentümer-ID der Quelldatei |
file.group |
Die numerische Gruppen-ID der Quelldatei |
file.permissions |
Die Lese-, Schreib- und Ausführungsberechtigungen der Quelldatei |
file.size |
Die Anzahl der Bytes in der Quelldatei |
file.lastModifiedTime |
Der Zeitstempel, wann die Datei im Dateisystem zuletzt geändert wurde als „yyyy-MM-dd’T’HH: mm:ssZ“ |
filename |
Der Name der Datei auf dem FTP-Server |
Pfad |
Der vollständig qualifizierte Name des Verzeichnisses auf dem FTP-Server, aus dem die Datei abgerufen wurde. |