Apache nifi NiFi-ExtractGrok使用多个正则表达式并排序为不同的输出

Apache nifi NiFi-ExtractGrok使用多个正则表达式并排序为不同的输出,apache-nifi,Apache Nifi,我有一个Kakfa主题,其中包括从不同来源发送的不同类型的消息 我想使用ExtractGrok处理器根据正则表达式/grok模式提取消息 如何使用多个正则表达式配置或运行处理器 i、 e.Kafka主题包含来自不同应用程序的信息、警告和错误日志条目 我想分离不同的日志级别消息,并将其放入HDFS中。而不是使用Extrakgrok处理器 在NiFi中使用分区记录处理器,将分区作为此处理器 根据中的每个记录计算一个或多个记录路径 传入的流文件 然后将每个记录与其他“相似记录”分组 配置/启用控制器服

我有一个Kakfa主题,其中包括从不同来源发送的不同类型的消息

我想使用ExtractGrok处理器根据正则表达式/grok模式提取消息

如何使用多个正则表达式配置或运行处理器

i、 e.Kafka主题包含来自不同应用程序的信息、警告和错误日志条目


我想分离不同的日志级别消息,并将其放入HDFS中。

而不是使用Extrakgrok处理器

在NiFi中使用分区记录处理器,将分区作为此处理器

  • 根据中的每个记录计算一个或多个记录路径 传入的流文件
  • 然后将每个记录与其他“相似记录”分组
  • 配置/启用控制器服务

    作为GrokReader的RecordReader

    录制编写器为您所需的格式

  • 然后使用PutHDFS处理器根据loglevel属性存储流文件

    流量:

    1.ConsumeKafka processor
    2.Partition Record
    3.PutHDFS processor
    
    请参阅链接介绍如何配置PartitionRecord处理器的所有步骤


    请参阅链接介绍如何使用PutHDFS处理器在HDFS目录中动态存储分区。

    我只能输入1个grok表达式。如何输入多个grok表达式?由于可以保留1个grok表达式以匹配日志级别,因此在PartitionRecord中,将新属性作为匹配项添加到级别记录路径中。。然后PartitionRecord processor会将所有相似的记录保存到受尊重的流文件中。如果该记录与第一个分区记录不匹配,我应该将它链接到第二个分区记录,以允许流文件通过处理器中指定的每个from表达式?PartitionRecord根据提供的记录路径对流文件进行动态分区。如果消息中没有记录路径,则不会添加任何属性。您可以使用RouteOnAttribute processor筛选出(或)UpdateAttribute processor来添加具有某些默认值的属性。如何从输出中提取特定字段?