Hi everybody,
I've problems with RollingFile sink.
First, I'm seeking about the sink's properties. I've found two properties in
RollingFileSink.java : rollInterval and directory. Are there anymore ?
Then, I've this error when I'm running the node :
...
SINKS: {sink=ComponentConfiguration[sink]
CONFIG: {directory=/tmp/log, type=file_roll}
RUNNER: ComponentConfiguration[runner]
CONFIG: {}
, log-sink1=ComponentConfiguration[log-sink1]
CONFIG: {type=logger, channel=ch1}
RUNNER: ComponentConfiguration[runner]
CONFIG: {}
}
...
2012-05-21 08:29:15,246 (conf-file-poller-0) [INFO -
org.apache.flume.sink.DefaultSinkFactory.create(DefaultSinkFactory.java:69)]
Creating instance of sink sink typefile_roll
2012-05-21 08:29:15,253 (conf-file-poller-0) [ERROR -
org.apache.flume.conf.file.AbstractFileConfigurationProvider$FileWatcherRunnable.run(AbstractFileConfigurationProvider.java:205)]
Failed to load configuration data. Exception follows.
java.lang.IllegalArgumentException: Directory may not be null
at
com.google.common.base.Preconditions.checkArgument(Preconditions.java:88)
at
org.apache.flume.sink.RollingFileSink.configure(RollingFileSink.java:74)
at org.apache.flume.conf.Configurables.configure(Configurables.java:41)
...
Flume.conf
# Define a memory channel called ch1 on agent1
agent1.channels.ch1.type = memory
# Define an Avro source called avro-source1 on agent1 and tell it
# to bind to 0.0.0.0:41414. Connect it to channel ch1.
agent1.sources.avro-source1.channels = ch1
agent1.sources.avro-source1.type = avro
agent1.sources.avro-source1.bind = 0.0.0.0
agent1.sources.avro-source1.port = 41414
# Define a logger sink that simply logs all events it receives
# and connect it to the other end of the same channel.
agent1.sinks.log-sink1.channel = ch1
agent1.sinks.log-sink1.type = logger
agent1.sinks.sink.channel = ch1
agent1.sinks.sink.type = file_roll
agent1.sinks.sink.directory=/tmp/log
# Finally, now that we've defined all of our components, tell
# agent1 which ones we want to activate.
agent1.channels = ch1
agent1.sources = avro-source1
agent1.sinks = sink
What is wrong ? I don't understand the problem.
Guillaume