Olá, seja bem-vindo a mais uma aula do curso Desenvolvimento com Apache Nifi.
Nesta aula vamos falar sobre o processor PutFile.
Este Processor pode gravar o conteúdo de um FlowFile no sistema de arquivos local.
Permite especificar o diretório onde será carregado o arquivo, caso não exista, será gerado automaticamente.
Caso o arquivo já exista é possÃvel substitui-lo ou ignorar.
Ao ser pesquisado, pode aparecer nas seguintes tags:
- put
- local
- copy
- archive
- files
- filesystem
Abaixo temos uma lista com as suas propriedades:
- Directory : Representa O diretório no qual os arquivos devem ser gravados. Você pode usar linguagem de expressão como /aa/bb/${path}, é uma propriedade obrigatória, mas não existe um valor default nessa propriedade.
- Conflict Resolution Strategy : Indica o que deve acontecer quando um arquivo com o mesmo nome já existe no diretório de saÃda , é uma propriedade obrigatória e o valor default dessa propriedade é: fail
- Create Missing Directories : Se true, os diretórios de destino ausentes serão criados. Se false, os arquivos de fluxo são penalizados e enviados para falha. , é uma propriedade obrigatória e o valor default dessa propriedade é: true
- Maximum File Count : Especifica o número máximo de arquivos que podem existir no diretório de saÃda , por ser uma propriedade opcional não existe um valor default nessa propriedade.
- Last Modified Time : Define lastModifiedTime no arquivo de saÃda com o valor deste atributo. O formato deve ser aaaa-MM-dd'T'HH:mm:ssZ. Você também pode usar linguagem de expressão como ${file.lastModifiedTime} , por ser uma propriedade opcional não existe um valor default nessa propriedade.
- Permissions : Define as permissões no arquivo de saÃda para o valor deste atributo. O formato deve ser UNIX rwxrwxrwx com um - no lugar de permissões negadas (por exemplo, rw-r--r--) ou um número octal (por exemplo, 644). Você também pode usar linguagem de expressão como ${file.permissions}, por ser uma propriedade opcional não existe um valor default nessa propriedade.
- Owner: Define o proprietário no arquivo de saÃda para o valor deste atributo. Você também pode usar linguagem de expressão como ${file.owner}, por ser uma propriedade opcional não existe um valor default nessa propriedade.
- Group: Define o grupo no arquivo de saÃda para o valor deste atributo. Você também pode usar linguagem de expressão como ${file.group}, por ser uma propriedade opcional não existe um valor default nessa propriedade.
Este processor não possui propriedades dinâmicas que permitem que o usuário especifique o nome e o valor de uma propriedade. Porem possui propriedades de leitura, são elas:
- filename: O nome do arquivo a ser usado ao gravar o FlowFile no disco.
Este componente não armazena estado. Os relacionamentos permitidos para direcionar ou terminar um flowfile são:
- success: Os arquivos que foram gravados com sucesso no diretório de saÃda são transferidos para este relacionamento
- failure: Arquivos que não puderam ser gravados no diretório de saÃda por algum motivo são transferidos para este relacionamento
Para este processor funcionar é precisa a permissão de write filesystem: Fornece ao operador a capacidade de gravar em qualquer arquivo ao qual o NiFi tenha acesso.