- Parar o
PutSQL
processador e deixe os arquivos de fluxo na fila. - Depois de enfileirados, clique com o botão direito do mouse no
success
relacionamento
entreUpdateAttribute
ePutSQL
e selecioneList Queue
. - Selecione qualquer arquivo de fluxo e navegue até os
Attributes
tab e veja se os atributosabsolute.path
eflowfilename
existe e se
existir, verifique se tem o valor esperado definido. No seu casoabsolute.path
deve ter o valor/path/in/nifi/node/to/file
eflowfilename
deve ter o valor/data.csv
Pergunta para você:você está configurando esses atributos usando
UpdateAttribute
, o motivo é que o NiFi não gera um atributo chamado flowfilename
, ele gera um com o nome filename
. Mais uma coisa, certifique-se de que o valor de
absolute.path
termina com um /
no final ou o valor de flowfilename
começa com um /
. Caso contrário, eles serão anexados e o resultado será /path/in/nifi/node/to/filedata.csv
. Você pode tentar o append
função que @Mahendra sugeriu, senão você pode simplesmente usar ${absolute.path}/${flowfilename}
. Atualizar
Acabei de perceber que
absolute.path
é um atributo central como filename
, filesize
, mime.type
, etc. Alguns processadores usam todos os atributos principais, enquanto alguns usam muito poucos que são necessários. GenerateTableFetch
escreve absolute.path
mas não define nada para isso. É por isso que tem ./
que é o valor padrão. Portanto, minha sugestão para sua abordagem de trabalho é que você pode definir/substituir manualmente
absolute.path
atributo usando UpdateAttribute
(assim como você sobrescreveu filename
) e defina o valor desejado que é /path/in/nifi/node/to/file