NIFI - 使用一个 ReplaceText 处理器如何在每行的开头和结尾添加括号

NIFI - Using one ReplaceText Processor how to add brackets at the beginning and end of each line

我每 5 秒有以下 10000 行日志文件。

log_datetime1 host_name1 log_message1
log_datetime2 host_name2 log_message2
log_datetime3 host_name3 log_message3

我想将它们发送到 kudu 或 parquet table,如下所示 JSON

{"cureent_datetime":"datetime", "log_data":"log_datetime1 host_name1 log_message1"}
{"cureent_datetime":"datetime", "log_data":"log_datetime2 host_name2 log_message2"}
{"cureent_datetime":"datetime", "log_data":"log_datetime3 host_name3 log_message3"}

目前我正在使用 Two ReplaceText Processors。一个添加 {"cureent_datetime":"datetime", "log_data":" 在每行 10000 行日志文件的开头,第二个在每行末尾添加 "}

想知道我是否可以在 one ReplaceText proecssor 中完成这两个步骤。

使用搜索模式 (.+)(?=\n) 和替换模式 {"current_datetime":"datetime", "log_data":""} 将产生所需的输出。搜索模式查找后跟换行符的文本,替换包括模板化 JSON 结构内的捕获组。