Nifi 为 EvaluateJson 或 AttributesToJson 输出空值
Nifi output null values for EvaluateJson or AttributesToJson
因此,当我使用 EvaluateJSON 解析文件时,JSON 看起来像这样:
{ "TEST_DATE": "", "T_DATE": "" }
当我对属性进行 EvaluateJSON ($.TEST_DATE) to "test-date" 时...我得到:
test-date: ""
然后当我执行 AttributesToJSON(流文件内容目标)时,我得到:
{ "test-date": "", "t-date": "" }
然而...我希望它是:
{ "test-date": null, "t-date": null }
我已经尝试了所有可能的选择。除了 "ReplaceText" 风格的危险正则表达式之外,没有其他方法可以将 NULL 放入 JSON。
任何 updateAttribute 都无法将 "null" 放入其中。我试过 "replaceEmpty(null)", replaceEmpty("null") (用字符串 "null" 代替)。我试过“replaceEmpty(literal("null")) 不起作用。
Nifi好像不认识null
德克斯特,
您可以在 ReplaceText 处理器中用空值替换双引号 ("")。
之后你低于价值。
{ "test-date": "", "t-date": "" }
使用 ReplaceText 处理器搜索空双引号并将其替换为 null。
search value:""
Replacement value:null
供您参考检查此 https://regexr.com/3kctp。
它会像您要求的那样结束;
{ "test-date": null, "t-date": null }
如果您遇到任何问题,请告诉我。
因此,当我使用 EvaluateJSON 解析文件时,JSON 看起来像这样:
{ "TEST_DATE": "", "T_DATE": "" }
当我对属性进行 EvaluateJSON ($.TEST_DATE) to "test-date" 时...我得到:
test-date: ""
然后当我执行 AttributesToJSON(流文件内容目标)时,我得到:
{ "test-date": "", "t-date": "" }
然而...我希望它是:
{ "test-date": null, "t-date": null }
我已经尝试了所有可能的选择。除了 "ReplaceText" 风格的危险正则表达式之外,没有其他方法可以将 NULL 放入 JSON。
任何 updateAttribute 都无法将 "null" 放入其中。我试过 "replaceEmpty(null)", replaceEmpty("null") (用字符串 "null" 代替)。我试过“replaceEmpty(literal("null")) 不起作用。
Nifi好像不认识null
德克斯特,
您可以在 ReplaceText 处理器中用空值替换双引号 ("")。
之后你低于价值。
{ "test-date": "", "t-date": "" }
使用 ReplaceText 处理器搜索空双引号并将其替换为 null。
search value:""
Replacement value:null
供您参考检查此 https://regexr.com/3kctp。
它会像您要求的那样结束;
{ "test-date": null, "t-date": null }
如果您遇到任何问题,请告诉我。