ListDropbox 2025.5.31.15¶
捆绑包¶
org.apache.nifi | nifi-dropbox-processors-nar
描述¶
从 Dropbox 检索文件列表(忽略快捷方式)。列出的每个文件都有可能生成一个 FlowFile,元数据作为 FlowFile 属性写入。如果设置了“Record Writer”属性,则整个结果将作为记录写入到单个 FlowFile 中。该处理器仅在集群中的主节点上运行。如果主节点发生变化,新的主节点将从前一个节点中断的地方继续,而不是复制所有数据。
输入要求¶
FORBIDDEN
支持敏感的动态属性¶
false
属性¶
属性 |
描述 |
---|---|
dropbox-credential-service |
用于获取 Dropbox 凭据(应用程序键、应用程序密钥、访问令牌、刷新令牌)的控制器服务。有关更多信息,请参阅控制器服务的“其他详细信息”。 |
et-initial-listing-target |
指定应如何处理初始列表。由“跟踪实体”策略使用。 |
et-state-cache |
列出的实体存储在指定的缓存存储器中,这样该处理器在 NiFi 重启后或主节点发生更改时可以恢复列出。“跟踪实体”策略要求在最后一个“跟踪时间窗口”内提供所有列出的实体的跟踪信息。为了支持大量实体,该策略使用 DistributedMapCache 而非托管状态。缓存键格式为“ListedEntities::{processorId}(::{nodeId})”。如果它跟踪每个节点列出的实体,则会添加可选的“::{nodeId}”部分以单独管理状态。例如,集群范围缓存键 =“ListedEntities::8dda2321-0164-1000-50fa-3042fe7d6a7b”,每节点缓存键 =“ListedEntities::8dda2321-0164-1000-50fa-3042fe7d6a7b::nifi-node3”存储的缓存内容是 Gzipped JSON 字符串。目标列表配置更改时,缓存键将被删除。由“跟踪实体”策略使用。 |
et-time-window |
指定该处理器应跟踪已列出的实体多长时间。“跟踪实体”策略可以选择时间戳在指定时间窗口内的任何实体。例如,如果设置为“30 分钟”,则在该处理器运行时,任何具有最近 30 分钟时间戳的实体都将成为列表目标。如果满足以下条件之一,则列出实体被视为“新的/已更新的”,并发出 FlowFile:1. 不存在于已列出的实体中;2. 具有比缓存实体更新的时间戳;3. 与缓存实体的大小不同。如果缓存实体的时间戳早于指定的时间窗口,则该实体将从缓存的已列出实体中移除。由“跟踪实体”策略使用。 |
文件夹 |
要从中提取文件列表的文件夹的 Dropbox 标识符或路径。“Folder”应匹配以下正则表达式模式:/.*|id:.*。文件夹标识符示例:id:odTlUvbpIEAAAAAAAAAGGQ。文件夹路径示例:/Team1/Task1。 |
listing-strategy |
指定如何确定新的/更新的实体。有关详细信息,请参阅每种策略的描述。 |
min-age |
文件必须达到最短存在时间才纳入考虑;任何早于该时间的文件都将被忽略。 |
proxy-configuration-service |
指定代理配置控制器服务来代理网络请求。 |
record-writer |
指定用于创建列表的记录写入器。如果未指定,则将为列出的每个实体创建一个 FlowFile。如果指定了记录写入器,则所有实体都将写入单个 FlowFile,而不是向单个 FlowFiles 添加属性。 |
recursive-search |
指示是否列出 Dropbox 文件夹的子文件夹中的文件。 |
状态管理¶
范围 |
描述 |
---|---|
CLUSTER |
处理器存储必要的数据,以便能够跟踪已经列出的文件。具体需要存储哪些数据取决于“列表策略”。 |
关系¶
名称 |
描述 |
---|---|
success |
所有收到的 FlowFiles 都将路由至“success” |
写入属性¶
名称 |
描述 |
---|---|
dropbox.id |
文件的 Dropbox 标识符 |
path |
文件所在的文件夹路径 |
filename |
文件的名称 |
dropbox.size |
文件大小 |
dropbox.timestamp |
文件的服务器修改时间 |
dropbox.revision |
文件的修订版 |