ListFile 2025.10.2.19

Pacote

org.apache.nifi | nifi-standard-nar

Descrição

Recupera uma listagem de arquivos do diretório de entrada. Para cada arquivo listado, crie um FlowFile que represente o arquivo para que ele possa ser buscado em conjunto com FetchFile. Esse processador foi projetado para ser executado somente no nó primário em um cluster quando a opção “Local do diretório de entrada” estiver definida como “Remoto”. Se o nó primário mudar, o novo nó primário continuará de onde o nó anterior parou sem duplicar todos os dados. Quando “Local do diretório de entrada” é “Local”, o modo “Execução” pode ser qualquer um, e a sincronização não ocorrerá. Ao contrário do GetFile, esse processador não exclui nenhum dado do sistema de arquivos local.

Tags

file, filesystem, get, ingest, list, source

Requisito de entrada

FORBIDDEN

Oferece suporte a propriedades dinâmicas confidenciais

falso

Propriedades

Propriedade

Descrição

Filtro de arquivos

Somente os arquivos cujos nomes correspondem à expressão regular fornecida serão coletados

Ignorar arquivos ocultos

Indica se os arquivos ocultos devem ou não ser ignorados

Incluir atributos de arquivo

Inclui ou não informações como a hora da última modificação e o proprietário do arquivo como atributos do FlowFile. Dependendo do sistema de arquivos que está sendo usado, a coleta dessas informações pode ser cara e, portanto, deve ser desativada. Isso é especialmente verdadeiro para compartilhamentos de arquivos remotos.

Diretório de entrada

O diretório de entrada do qual os arquivos devem ser extraídos

Local do diretório de entrada

Especifica onde está localizado o diretório de entrada. Isso é usado para determinar se o estado deve ser armazenado localmente ou em todo o cluster.

Idade máxima do arquivo

A idade máxima que um arquivo deve ter para ser extraído; qualquer arquivo mais antigo que esse período de tempo (de acordo com a data da última modificação) será ignorado

Tamanho máximo do arquivo

O tamanho máximo que um arquivo pode ter para ser extraído

Idade mínima do arquivo

A idade mínima que um arquivo deve ter para ser extraído; qualquer arquivo mais novo do que esse período de tempo (de acordo com a data da última modificação) será ignorado

Tamanho mínimo do arquivo

O tamanho mínimo que um arquivo deve ter para ser extraído

Filtro de caminho

Quando Recurse Subdirectories (Percorrer subdiretórios) for verdadeiro, somente os subdiretórios cujo caminho corresponda à expressão regular fornecida serão verificados

Percorrer subdiretórios

Indica se os arquivos de subdiretórios do diretório devem ser listados

et-initial-listing-target

Specify how initial listing should be handled. Used by “Tracking Entities’strategy.

et-node-identifier

The configured value will be appended to the cache key so that listing state can be tracked per NiFi node rather than cluster wide when tracking state is scoped to LOCAL. Used by “Tracking Entities’strategy.

et-state-cache

Listed entities are stored in the specified cache storage so that this processor can resume listing across NiFi restart or in case of primary node change. “Tracking Entities’strategy require tracking information of all listed entities within the last “Tracking Time Window”. To support large number of entities, the strategy uses DistributedMapCache instead of managed state. Cache key format is “ListedEntities::{processorId}(::{nodeId})”. If it tracks per node listed entities, then the optional “::{nodeId}” part is added to manage state separately. E.g. cluster wide cache key =”ListedEntities::8dda2321-0164-1000-50fa-3042fe7d6a7b”, per node cache key =”ListedEntities::8dda2321-0164-1000-50fa-3042fe7d6a7b::nifi-node3” The stored cache content is Gzipped JSON string. The cache key will be deleted when target listing configuration is changed. Used by “Tracking Entities’strategy.

et-time-window

Specify how long this processor should track already-listed entities. “Tracking Entities’strategy can pick any entity whose timestamp is inside the specified time window. For example, if set to “30 minutes”, any entity having timestamp in recent 30 minutes will be the listing target when this processor runs. A listed entity is considered “new/updated” and a FlowFile is emitted if one of following condition meets: 1. does not exist in the already-listed entities, 2. has newer timestamp than the cached entity, 3. has different size than the cached entity. If a cached entity “s timestamp becomes older than specified time window, that entity will be removed from the cached already-listed entities. Used by’Tracking Entities’strategy.

listing-strategy

Especifica como determinar entidades novas/atualizadas. Veja as descrições de cada estratégia para obter detalhes.

max-listing-time

O tempo máximo que se espera que a listagem de um único diretório leve. Se a listagem do diretório especificado pela propriedade “Diretório de entrada” ou a listagem de qualquer subdiretório (se “Percorrer” estiver definido como verdadeiro) demorar mais do que esse tempo, será gerado um boletim de aviso para cada listagem de diretório que exceder esse tempo.

max-operation-time

O tempo máximo que se espera que uma única operação de disco leve. Se alguma operação de disco demorar mais do que esse tempo, será gerado um boletim de aviso para cada operação que exceder esse tempo.

max-performance-metrics

Se a propriedade “Rastrear desempenho” for definida como “verdadeira”, essa propriedade indicará o número máximo de arquivos cujos indicadores de desempenho devem ser mantidos. Um valor menor para essa propriedade resultará em menor utilização do heap, enquanto um valor maior poderá fornecer informações mais precisas sobre o desempenho das operações de acesso ao disco

record-writer

Especifica o Record Writer a ser usado para criar a listagem. Se não for especificado, será criado um FlowFile para cada entidade listada. Se o Record Writer for especificado, todas as entidades serão gravadas em um único FlowFile em vez de adicionar Rastreamento de entidades atributos aos FlowFiles.

target-system-timestamp-precision

Especifique a precisão do carimbo de data/hora no sistema de destino. Como esse processador usa o carimbo de data/hora das entidades para decidir quais devem ser listadas, é fundamental usar a precisão correta do carimbo de data/hora.

track-performance

Se o processador deve ou não monitorar o desempenho das operações de acesso ao disco. Se verdadeiro, todos os acessos ao disco serão registrados, incluindo o arquivo acessado, as informações obtidas e o tempo necessário. Isso é então registrado periodicamente em um nível DEBUG. Embora a quantidade de dados seja limitada, essa opção ainda pode consumir uma quantidade significativa de heap (controlada pela propriedade “Número máximo de arquivos a serem acompanhados”), mas pode ser muito útil para fins de solução de problemas se o desempenho estiver ruim ou degradado.

Gerenciamento do estado

Escopos

Descrição

LOCAL

Depois de fazer uma listagem de arquivos, o carimbo de data/hora do arquivo mais recente é armazenado. Isso permite que o processador liste apenas os arquivos que foram adicionados ou modificados após essa data na próxima vez em que o processador for executado. O fato de o estado ser armazenado com um escopo Local ou de Cluster depende do valor da propriedade <Local do diretório de entrada>.

CLUSTER

Depois de fazer uma listagem de arquivos, o carimbo de data/hora do arquivo mais recente é armazenado. Isso permite que o processador liste apenas os arquivos que foram adicionados ou modificados após essa data na próxima vez em que o processador for executado. O fato de o estado ser armazenado com um escopo Local ou de Cluster depende do valor da propriedade <Local do diretório de entrada>.

Relações

Nome

Descrição

success

Todos os FlowFiles que são recebidos são encaminhados para a relação “success”

Grava atributos

Nome

Descrição

filename

O nome do arquivo que foi lido do sistema de arquivos.

path

O caminho é definido como o caminho relativo do diretório do arquivo no sistema de arquivos em comparação com a propriedade Diretório de entrada. Por exemplo, se a propriedade Diretório de entrada for definida como /tmp, os arquivos coletados de /tmp terão o atributo de caminho definido como “/”. Se a propriedade Percorrer subdiretórios estiver definida como verdadeira e um arquivo for retirado de /tmp/abc/1/2/3, o atributo path será definido como “abc/1/2/3/”.

absolute.path

O absolute.path é definido como o caminho absoluto do diretório do arquivo no sistema de arquivos. Por exemplo, se a propriedade Diretório de entrada estiver definida como /tmp, os arquivos coletados de /tmp terão o atributo path definido como “/tmp/”. Se a propriedade Percorrer subdiretórios estiver definida como verdadeira e um arquivo for retirado de /tmp/abc/1/2/3, o atributo path será definido como “/tmp/abc/1/2/3/”.

file.owner

O usuário que possui o arquivo no sistema de arquivos

file.group

O grupo que possui o arquivo no sistema de arquivos

file.size

O número de bytes no arquivo no sistema de arquivos

file.permissions

As permissões do arquivo no sistema de arquivos. Isso é formatado como 3 caracteres para o proprietário, 3 para o grupo e 3 para outros usuários. Por exemplo, rw-rw-r–

file.lastModifiedTime

O carimbo de data/hora de quando o arquivo no sistema de arquivos foi modificado pela última vez como “yyyyy-MM-dd’T’HH:mm:ssZ”

file.lastAccessTime

O carimbo de data/hora de quando o arquivo no sistema de arquivos foi acessado pela última vez como “yyyyy-MM-dd’T’HH:mm:ssZ”

file.creationTime

O carimbo de data/hora de quando o arquivo no sistema de arquivos foi criado como “yyyyy-MM-dd’T’HH:mm:ssZ”

Consulte também