Basically, in modern environments one should have some kind of log shipping service/agents, and process those logs on central server.
There are free, open, proprietary etc. systems, which do the same thing, ship logs you want to central server.
As i see it you have couple of choices on Windows :
1. NFS, export the log directory via NFS from server and mount it on Windows box (windows 7 or later) - this is closest to 'real time' you will get.
2. rsync copy - not so 'real time' as NFS, but close, depending on the network bandwidth / cpu and scheduled times (every minute or 2 etc.)
3. Remote syslog on windows PC -> this will require your application to use syslog for logging with one of the local facilities and syslog configured to send logs to Windows PC.
Depending on again bandwidth, quantity of logging etc. can be a performance hit on the client you wish to pull logs off.
This is all, from my point of view, not production ready and could be / is considered hackery.
A regular solution would be to use software written for that purpose.
What do you consider as real time?
I consider that to be
almost instant, in regards time needed to read from disk, send it over the wire, and write to disk in windows.
Those ops are measured in milliseconds.
Hopefully we can neglect the CPU time required for that operation, but it is software implementation dependent.
For instance, if you use rsync with compression and checksum, it is bound to take more cpu (and other) resources then an agent made especially for that purpose.
Also, running scheduled rsyncs on large log files will cause that entire file to be cached in memory, changing the memory footprint of the box.
Above can be irrelevant if there is enough memory, but can also cause log files to be cached instead of
other things, making those
other things visible to users as slowdowns
Hope that helps
Regards
Peasant.