How do you combine the logs of two (or more) hosts running Varnish, and visualize them on a remote workstation with Logstalgia?
Use netcat to send the output of varnishncsa on each of the hosts to socat listening on one of the hosts, which combines the input and listens for a connection from the workstation, and connect with netcat from the workstation to socat and pipe the output to Logstalgia.
Listen on port 31337 for incoming logs, listen on port 1337 for output connections, allowing multiple input and output clients.
socat tcp4-listen:31337,fork,reuseaddr stdout | socat stdin tcp4-listen:1337,fork,reuseaddr
Send Varnish log via netcat to socat on localhost
varnishncsa | nc localhost 31337
Send Varnish log via netcat to socat on host1
varnishncsa | nc host1 31337
Connect with netcat to host1 and pipe output from socat to Logstalgia. (netcat for Windows )
nc.exe host1 1337 | logstalgia.exe --sync
Instead of using netcat, my first tries were with SSH... quick & dirty, but worked - at least for 2 hosts.
plink.exe host1 "varnishncsa >&2 | ssh user@host2 varnishncsa" 2>&1 | logstalgia.exe --sync