- Detener el
PutSQL
procesador y deje que los archivos de flujo se pongan en cola. - Una vez que estén en cola, haga clic derecho en
success
relación
entreUpdateAttribute
yPutSQL
y seleccioneList Queue
. - Seleccione cualquier archivo de flujo y navegue hasta
Attributes
pestaña y ver si los atributosabsolute.path
yflowfilename
existe y si
existen, verifique si tienen el valor esperado establecido. En tu casoabsolute.path
debe tener el valor/path/in/nifi/node/to/file
yflowfilename
debe tener el valor/data.csv
Pregunta para usted:¿Está configurando estos atributos usted mismo usando UpdateAttribute
, la razón es que NiFi no genera un atributo llamado flowfilename
, genera uno con el nombre filename
.
Una cosa más, asegúrese de que el valor de absolute.path
termina con un /
al final o el valor de flowfilename
comienza con /
. De lo contrario, se agregarán y el resultado será /path/in/nifi/node/to/filedata.csv
. Puedes probar el append
función que sugirió @Mahendra, de lo contrario, simplemente puede usar ${absolute.path}/${flowfilename}
.
Actualizar
Me acabo de dar cuenta de que absolute.path
es un atributo central como filename
, filesize
, mime.type
, etc. Algunos procesadores usan todos los atributos principales, mientras que otros usan muy pocos de los que se necesitan. GenerateTableFetch
escribe absolute.path
pero no establece nada para ello. Por eso tiene ./
que es el valor predeterminado.
Entonces, mi sugerencia para su enfoque de trabajo es que puede configurar/sobrescribir manualmente absolute.path
atributo usando UpdateAttribute
(al igual que ha sobrescrito filename
) y establezca el valor deseado que es /path/in/nifi/node/to/file