Chris Neal 2012-08-13, 17:43
Stern, Mark 2012-08-13, 20:03
Mark has got it - for the behavior you are looking, you probably want
a tier of flume agents running where you currently have avro clients,
using an exec source with "tail -F" as the command.
Keep in minding the red warning box in the user guide related to
sources like this. If a flume agent restarts, it may re-send or miss
certain log entries.
On Mon, Aug 13, 2012 at 1:03 PM, Stern, Mark <[EMAIL PROTECTED]> wrote:
> Use an exec source running 'tail -F'.
> From: Chris Neal [[EMAIL PROTECTED]]
> Sent: Monday, August 13, 2012 8:43 PM
> To: [EMAIL PROTECTED]
> Subject: Avro client in NG as replacement for tail source in OG?
> Hi all.
> I have a very typical configuration:
> Application logs to log4J file.
> FlumeNG avro-client watches the file and sends events into FlumeNG Agent Tier 1
> FlumeNG Agent Tier 1: AvroSource to FileChannel to AvroSink
> FlumeNG Agent Tier 2: AvroSource to FileChannel to HDFSSink
> I was noticing that after some time, the Tier 1 Agent would disconnect from the avro-client. What is happening is that the avro-client sends events to the Tier 1 Agent as fast as it can, and when it reaches the end of the file, it exits. The problem is, the application is still logging to the log4J file, but now all future events are lost because the avro-client has exited.
> I thought the "-F" option to avro-client was like the "-F" option to tail, but after looking at the code, it is not. There seems to be no "follow" mode for the avro client that I can see. I then stumbled across this key sentence from here<https://cwiki.apache.org/confluence/display/FLUME/Getting+Started#GettingStarted-flumengavroclientoptions>:
> Think of the avro-client command as cat for Flume
> So, it's a "cat", not a "tail".
> So I'm wondering, what's the right/best/current way to emulate OG's tailSource?
> Much appreciated.
Chris Neal 2012-08-14, 14:19
Chris Neal 2012-08-14, 15:00
Chris Neal 2012-08-14, 15:36
Patrick Wendell 2012-08-14, 20:15
Chris Neal 2012-08-15, 14:12