Getting Data In

Transform to nullQueue depends on search?

Burritobizon
Engager

Hello,

I've been spending the last month experimenting with Splunk. Lately, i've tried to reroute a specific event to the nullQueue, with the intention of preventing it from being indexed:

May 18 12:52:43 lnx-iadevopsnode2 kubelet: E0518 12:52:43.207579    4688 file.go:76] Unable to read manifest path "/etc/kubernetes/manifests": path does not exist, ignoring

Using the following props.conf:

[kubelet]
TRANSFORMS-manifest = setmanifestnull

and transforms.conf:

[setmanifestnull]
REGEX=(Unable to read)
DEST_KEY=queue
FORMAT=nullQueue

The default index is main. When i run a realtime search: index=main, the event still occurs. However, if i change the search to index=main sourcetype=kubeletthe event does not occur.

Why could this be?

0 Karma
1 Solution

FrankVl
Ultra Champion

A sourcetype that was set using a TRANSFORMS statement cannot be used for other index time configurations. Splunk will only apply index-time stanzas matching the original sourcetype, not the new sourcetype from the transforms.

So to achive this, either put the nullqueue transform under the source stanza, or put it under the correct souretype stanza and perhaps make the regex a bit more specific, such that it still only matches kubelet events.

Also: your sourcetype override is not defined correctly. It should be: FORMAT = sourcetype::$1. That is why your search including sourcetype = kubelet doesn't return results I guess.

View solution in original post

FrankVl
Ultra Champion

A sourcetype that was set using a TRANSFORMS statement cannot be used for other index time configurations. Splunk will only apply index-time stanzas matching the original sourcetype, not the new sourcetype from the transforms.

So to achive this, either put the nullqueue transform under the source stanza, or put it under the correct souretype stanza and perhaps make the regex a bit more specific, such that it still only matches kubelet events.

Also: your sourcetype override is not defined correctly. It should be: FORMAT = sourcetype::$1. That is why your search including sourcetype = kubelet doesn't return results I guess.

somesoni2
SplunkTrust
SplunkTrust

The Splunk routing and filtering that you have is only applied to events of sourcetype kubelet. If there are similar events coming from other sourcetypes, those will not be filtered and be shown when you just search with index=main.. Try to run this and see which sourcetypes are showing events which you wanted to filter.

index=main "Unable to read" | stats count by sourcetype

If you want to drop it from all sourcetypes, just set the same (you can still reference your existing transforms.conf stanza) for those sourcetypes.

0 Karma

Burritobizon
Engager

It is showing only one sourcetype: kubelet.

I should mention that the sourcetype kubelet is created by a field extraction.

props.conf:

[source::/var/log/messages]
TRANSFORMS-messagetype = messagetype

transforms.conf:

[messagetype]
DEST_KEY = MetaData:Sourcetype
REGEX = :\d\d .*? (.*?(?=:))
FORMAT = $1
0 Karma
Get Updates on the Splunk Community!

Welcome to the Splunk Community!

(view in My Videos) We're so glad you're here! The Splunk Community is place to connect, learn, give back, and ...

Tech Talk | Elevating Digital Service Excellence: The Synergy of Splunk RUM & APM

Elevating Digital Service Excellence: The Synergy of Real User Monitoring and Application Performance ...

Adoption of RUM and APM at Splunk

    Unleash the power of Splunk Observability   Watch Now In this can't miss Tech Talk! The Splunk Growth ...