I understand there is a C# thrift client. This sounds like a good
solution. Would this client talk to a local Flume agent, or to a
remote Flume node?
Also, I need the highest level of reliability. At this level, would
the Flume agent be writing to disk before sending the message to the
remote node? Also, if the Flume agent is "tailing" a file, would it
skip the write to disk, because the message is already persisted in
the file?
Regarding cygwin, no, I would rather avoid installing that.
But, there is a bash shell for windows; shouldn't that work as a
lightweight solution?
So, to recap, I need the highest level of reliability, and I want to
avoid unnecessary writes to disk.
Thanks again.
Thanks, Jonathan. Yes, the example is going the wrong way, but it
looks pretty straightforward to reverse it. Currently, my app writes
log messages as xml text blobs to a SQL Server database.
I am not using pipes at the moment, but thought this might be the
easiest way of communicating
between a .NET app and the Flume Java agent, without going to disk.
I understand there is a C# thrift client. This sounds like a good
solution. Would this client talk to a local Flume agent, or to a
remote Flume node?
Also, I need the highest level of reliability. At this level, would
the Flume agent be writing to disk before sending the message to the
remote node? Also, if the Flume agent is "tailing" a file, would it
skip the write to disk, because the message is already persisted in
the file?
Regarding cygwin, no, I would rather avoid installing that.
But, there is a bash shell for windows; shouldn't that work as a
lightweight solution?
I think I would prefer having a local flume agent with WAL, and use
named pipe to communicate with it from .NET server.
Can you please walk me through a configuration of Flume that would be
fail safe: i.e. could recover from failure of
any node?
For starters, I would have two hosts with local flume agents, writing
to a flume master. Would I need a second master?
How would it work?
Regarding windows bash,
UnixUtils is a windows distribution of common unix commands, including
sh. (http://unxutils.sourceforge.net/)
One just has to proceed with caution when putting them on the path,
because there are similar windows only
command, like find.
So, quick and dirty solution would be to run sh.exe, and change some
of the paths in the startup script.
Better one would be to re-write in Perl.
Thanks again!
Aaron
Thanks, Jonathan.
I think I would prefer having a local flume agent with WAL, and use
named pipe to communicate with it from .NET server.
Can you please walk me through a configuration of Flume that would be
fail safe: i.e. could recover from failure of
any node?
For starters, I would have two hosts with local flume agents, writing
to a flume master. Would I need a second master?
How would it work?
Regarding windows bash,
UnixUtils is a windows distribution of common unix commands, including
sh. (http://unxutils.sourceforge.net/)
One just has to proceed with caution when putting them on the path,
because there are similar windows only
command, like find.
So, quick and dirty solution would be to run sh.exe, and change some
of the paths in the startup script.
Better one would be to re-write in Perl.
For the startup script, Perl or Python might be overkill, but it would
save you from
maintaining two different scripts, which might be worth the effort.
Cheers,
Aaron