public class RegexExtractorInterceptor extends Object implements Interceptor
regex: The regex to use
serializers: Specifies the group the serializer will be applied to, and the
name of the header that will be added. If no serializer is specified for a
group the default RegexExtractorInterceptorPassThroughSerializer
will
be used
Sample config:
agent.sources.r1.channels = c1
agent.sources.r1.type = SEQ
agent.sources.r1.interceptors = i1
agent.sources.r1.interceptors.i1.type = REGEX_EXTRACTOR
agent.sources.r1.interceptors.i1.regex = (WARNING)|(ERROR)|(FATAL)
agent.sources.r1.interceptors.i1.serializers = s1 s2 agent.sources.r1.interceptors.i1.serializers.s1.type = com.blah.SomeSerializer agent.sources.r1.interceptors.i1.serializers.s1.name = warning agent.sources.r1.interceptors.i1.serializers.s2.type = org.apache.flume.interceptor.RegexExtractorInterceptorTimestampSerializer agent.sources.r1.interceptors.i1.serializers.s2.name = error agent.sources.r1.interceptors.i1.serializers.s2.dateFormat = yyyy-MM-dd
Example 1: EventBody: 1:2:3.4foobar5 Configuration: agent.sources.r1.interceptors.i1.regex = (\\d):(\\d):(\\d) agent.sources.r1.interceptors.i1.serializers = s1 s2 s3 agent.sources.r1.interceptors.i1.serializers.s1.name = one agent.sources.r1.interceptors.i1.serializers.s2.name = two agent.sources.r1.interceptors.i1.serializers.s3.name = three results in an event with the the following body: 1:2:3.4foobar5 headers: one=>1, two=>2, three=3 Example 2: EventBody: 1:2:3.4foobar5 Configuration: agent.sources.r1.interceptors.i1.regex = (\\d):(\\d):(\\d)agent.sources.r1.interceptors.i1.serializers = s1 s2 agent.sources.r1.interceptors.i1.serializers.s1.name = one agent.sources.r1.interceptors.i1.serializers.s2.name = two
results in an event with the the following body: 1:2:3.4foobar5 headers: one=>1, two=>2
Modifier and Type | Class and Description |
---|---|
static class |
RegexExtractorInterceptor.Builder |
Modifier and Type | Method and Description |
---|---|
void |
close()
Perform any closing / shutdown needed by the Interceptor.
|
void |
initialize()
Any initialization / startup needed by the Interceptor.
|
Event |
intercept(Event event)
Interception of a single
Event . |
List<Event> |
intercept(List<Event> events)
Interception of a batch of events.
|
public void initialize()
Interceptor
initialize
in interface Interceptor
public void close()
Interceptor
close
in interface Interceptor
public Event intercept(Event event)
Interceptor
Event
.intercept
in interface Interceptor
event
- Event to be interceptednull
if the Event
is to be dropped (i.e. filtered out).public List<Event> intercept(List<Event> events)
Interceptor
intercept
in interface Interceptor
events
- Input list of eventsnull
. If all events are dropped,
then an empty List is returned.Copyright © 2009-2016 Apache Software Foundation. All Rights Reserved.