syslog-ng for remote logging
Afternoon all, trying to get this working, but no experience with it. Basically I have a few webservers I wish to send all the http logs to one server, then do some reporting on that one box.
These box's are all Fedora 5. syslog-ng is running on both the server and the client. Note the following ps;
Server:
20593 ? Ss 0:00 /sbin/syslog-ng -p /var/run/syslogd.pid
Client:
root 1607 0.0 0.0 6216 904 ? Ss 2008 0:47 syslogd -m 0
root 3937 0.0 0.0 7368 600 ? Ss 14:48 0:00 /sbin/syslog-ng -p /var/run/syslogd.pid
I am not sure why the client seem to have 2 threds, but that takes care of the above. The config files look like this;
server:
options {
sync (0);
time_reopen (10);
log_fifo_size (1000);
long_hostnames (off);
use_dns (no);
use_fqdn (no);
create_dirs (no);
keep_hostname (yes);
};
source s_sys {
file ("/proc/kmsg" log_prefix("kernel: "));
unix-stream ("/dev/log");
internal();
#udp(ip(0.0.0.0) port(514));
};
## This will log local http messages to defined file
destination send_http_logs { file("/var/log/web.log"); };
filter send_http_logs {
program("httpd.*");
};
log {
source(s_sys);
filter(send_http_logs);
destination(send_http_logs);
};
client:
options {
sync (0);
time_reopen (10);
log_fifo_size (1000);
long_hostnames(on);
use_dns(yes);
dns_cache(yes);
use_fqdn(no);
create_dirs (yes);
keep_hostname (yes);
perm(0640);
dir_perm(0750);
};
source s_sys {
file ("/proc/kmsg" log_prefix("kernel: "));
unix-stream ("/dev/log");
internal();
};
destination send_http_logs { tcp("192.168.2.54" port(514)); };
filter send_http_logs {
program("httpd.*");
};
log {
source(s_sys);
filter(send_http_logs);
destination(send_http_logs);
};
Once things are running the client is still reporting to the local file and the server file web.log is empty (file permissions are fine). I see no way of debugging, or troubleshooting to see what or more why the logs are still writing local.
Thanks