public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* Announce: cancd 0.2.0 netconsole capture server
@ 2012-02-06 19:02 Jörn Engel
  2012-02-06 21:31 ` Jeff Moyer
  0 siblings, 1 reply; 3+ messages in thread
From: Jörn Engel @ 2012-02-06 19:02 UTC (permalink / raw)
  To: linux-kernel; +Cc: Joel Becker

Quoting Documentation/networking/netconsole.txt:
	The remote host can run either 'netcat -u -l -p <port>',
	'nc -l -u <port>' or syslogd.

Now, both of these options have their issues.  Netcat works fine, but
only reasonably scales to 1.  Having to use a seperate port for every
test machine, as well as a seperate netcat process that writes to a
proper file becomes a bit of a nightmare by the time you approach
three digits of machines.

Syslogd would be great, if netconsole actually spoke syslog protocol.
As it is netconsole speaks a protocol I would describe as "7bit ascii,
no nonsense".  Syslog protocal is described in rfc5424, a 38-page
document.  I think it is fair to say the two are incompatibel.  In
case someone actually wants to see the full trainwreck, a quick search
should come up with enough bug reports to scare your children into
bed.

Given that sad state of things, here is yet another alternative:
http://git.kernel.org/?p=linux/kernel/git/joern/cancd.git

It is far from perfect.  Bases on cancd 0.1.0, written by Joel Becker,
it is completely incompatible to the older version.  I decided to just
bang on the code long enough until it happened to do what I wanted.
No thought went into preserving previous functionality that I didn't
want to use.  No thought went into making functionality I did actually
want optional.  So unless your taste and requirements closely match
mine, you will have to invest some work.

The good new is that you have the source and can do it, just like I
did it.  If you send me patches that keep things working for me, I
will be happy to merge them.  If someone else wants to become
maintainer, great!  Less work for me.

Also beware that I changed the code, but not the documentation.  Oh,
Joel also disagrees with a number of the changes I made.  A better
programmer with more time could have kept 0.1.0 and 0.2.0 compatible.
I didn't, sorry.

Jörn

PS: Since there is no documentation, here is a quick overview.

Invocations: cancd -p <port> -l <log_dir>

Cancd will take any messages thrown at that port, prepend a timestamp
to each line and write them out to a logfile matching the "machine".
Initially, the logfile will be the IP address of the source host.  If
that IP has a matching reverse DNS entry, the logfile will be "foo"
for "foo.example.org".  If you have two seperate machines
foo.a.example.org and foo.b.example.org, they will use the same
logfile.

Best used in combination with logrotate, for obvious reasons.

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Announce: cancd 0.2.0 netconsole capture server
  2012-02-06 21:31 ` Jeff Moyer
@ 2012-02-06 20:13   ` Jörn Engel
  0 siblings, 0 replies; 3+ messages in thread
From: Jörn Engel @ 2012-02-06 20:13 UTC (permalink / raw)
  To: Jeff Moyer; +Cc: linux-kernel, Joel Becker

On Mon, 6 February 2012 16:31:14 -0500, Jeff Moyer wrote:
> 
> Hmm, the old netdump-server package that we used to ship in RHEL should
> work too, I think, if you are interested in that approach.  That was
> designed specifically to receive netconsole messages and netdumps from
> multiple servers.  Google up netdump-server-0.7.16 and you should find
> an srpm.  If there's interest in keeping that alive, I can put it up in
> some public repo.

Interesting.  Not sure whether I care about keeping it alive, but
having a peek at the source cannot hurt.

I wonder how many more parallel efforts are out there.

Jörn

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Announce: cancd 0.2.0 netconsole capture server
  2012-02-06 19:02 Announce: cancd 0.2.0 netconsole capture server Jörn Engel
@ 2012-02-06 21:31 ` Jeff Moyer
  2012-02-06 20:13   ` Jörn Engel
  0 siblings, 1 reply; 3+ messages in thread
From: Jeff Moyer @ 2012-02-06 21:31 UTC (permalink / raw)
  To: Jörn Engel; +Cc: linux-kernel, Joel Becker

Jörn Engel <joern@logfs.org> writes:

> Quoting Documentation/networking/netconsole.txt:
> 	The remote host can run either 'netcat -u -l -p <port>',
> 	'nc -l -u <port>' or syslogd.
>
> Now, both of these options have their issues.  Netcat works fine, but
> only reasonably scales to 1.  Having to use a seperate port for every
> test machine, as well as a seperate netcat process that writes to a
> proper file becomes a bit of a nightmare by the time you approach
> three digits of machines.
>
> Syslogd would be great, if netconsole actually spoke syslog protocol.
> As it is netconsole speaks a protocol I would describe as "7bit ascii,
> no nonsense".  Syslog protocal is described in rfc5424, a 38-page
> document.  I think it is fair to say the two are incompatibel.  In
> case someone actually wants to see the full trainwreck, a quick search
> should come up with enough bug reports to scare your children into
> bed.
>
> Given that sad state of things, here is yet another alternative:
> http://git.kernel.org/?p=linux/kernel/git/joern/cancd.git

Hmm, the old netdump-server package that we used to ship in RHEL should
work too, I think, if you are interested in that approach.  That was
designed specifically to receive netconsole messages and netdumps from
multiple servers.  Google up netdump-server-0.7.16 and you should find
an srpm.  If there's interest in keeping that alive, I can put it up in
some public repo.

Cheers,
Jeff

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2012-02-06 21:54 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-02-06 19:02 Announce: cancd 0.2.0 netconsole capture server Jörn Engel
2012-02-06 21:31 ` Jeff Moyer
2012-02-06 20:13   ` Jörn Engel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox