【问题标题】:Extract custom field in Splunk from specific events从特定事件中提取 Splunk 中的自定义字段
【发布时间】:2021-07-27 09:38:34
【问题描述】:

我想提取错误类型并将其存储在每个事件的字段 error_type 中。

我在不同事件的日志中主要出现了三种错误。

我希望error_type 只填充特定事件的错误。

我尝试从 Splunk 日志中提取字段,但无法为错误类型添加带有 OR 字段的正则表达式或正则表达式。

另外,我希望如果除 A、B 或 C 之外的错误出现在任何其他事件中,则不应填充事件中的 error_type 字段。这可能吗??

【问题讨论】:

  • 帮助我们帮助您。请提供您希望从中提取字段的事件示例(确保清楚字段的位置)。还请说明您已经尝试过什么以及结果如何。为什么不能使用正则表达式?
  • @RichG [KafkaConsumerDestination{consumerDestinationName='stg.queuing.OMS.People', partitions=0, dlqName='null'}.container-0-C-1] osihLoggingHandler - 所有尝试向 MessageHandlers 传递消息失败。;嵌套异常是 org.springframework.messaging.MessageHandlingException: 在 'MethodInvokingMessageProcessor' [org.springframework.integration.handler.MethodInvokingMessageProcessor@7e44a4a] 中处理消息时发生错误;嵌套异常是 java.lang.NullPointerException, failedMessage=GenericMessage [payload=FailedDeserializationInfo{topic='value',
  • 以上是事件之一,我希望捕获 java.lang.NullPointerException。但是,我有多个事件在一次搜索中出现,并且针对不同的错误使用不同的日志。如何添加到单个变量

标签: amazon-web-services splunk splunk-query alerts


【解决方案1】:

您不知道为什么不能使用正则表达式,所以我将使用一个。示例事件中有不止一个异常,rex 命令可以处理得很好。然后我们将使用mvindex 选择最后发现的异常。

... | rex max_match=0 "nested exception is (?<exceptions>[^\[]+)"
| eval variable = mvindex(exceptions, -1)
| ...

与大多数 Splunk 查询一样,每个事件都是单独处理的,因此无需担心搜索中出现多个事件。此查询将为找到的每个错误事件返回一个变量。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-31
    • 1970-01-01
    • 2020-11-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多