LINUX.ORG.RU
ФорумAdmin

syslog-ng

 


0

2

Добрый день!

Столкнулся с такой проблемой. Есть поток syslog с сервера А на сервер Б (приемник).

На Сервер А приходят сислоги с оборудования. Сервер А формирует свой поток сислога в котором содержаться сислоги с оборудования, и отправляет свой сислог на сервер Б.

Суть проблемы Сервер Б принимает поток от сервера А, но формирует не один файл сислога с сервера А, а разбирает этот сислог с сервера А на кучу сислогов с оборудования

Как сделать так, что бы сислог с сервера А складировался в 1 файл?

Сервер Б - 10.10.10.10

source s_net_sip - откуда прилетают сислог с сервера А

options {
    flush_lines (0);
    time_reopen (10);
    log_fifo_size (1000);
    chain_hostnames (off);
    use_dns (no);
    use_fqdn (no);
    create_dirs (no);
    keep_hostname (yes);
};

source s_sys {
    system();
    internal();
    # udp(ip(0.0.0.0) port(514));
};

source s_net {
     tcp(ip(0.0.0.0) port(514));
     udp(ip(0.0.0.0) port(514));
	 tcp(ip(10.10.10.10) port(555));
	 
};

source s_net_sip {
     tcp(ip(10.10.10.10) port(556));
     udp(ip(10.10.10.10) port(556));
};




destination d_cons { file("/dev/console"); };
destination d_mesg { file("/var/log/messages"); };
destination d_auth { file("/var/log/secure"); };
destination d_mail { file("/var/log/maillog" flush_lines(10)); };
destination d_spol { file("/var/log/spooler"); };
destination d_boot { file("/var/log/boot.log"); };
destination d_cron { file("/var/log/cron"); };
destination d_kern { file("/var/log/kern"); };
destination d_mlal { usertty("*"); };

filter f_kernel     { facility(kern); };
filter f_default    { level(info..emerg) and
                        not (facility(mail)
                        or facility(authpriv)
                        or facility(cron)); };
filter f_auth       { facility(authpriv); };
filter f_mail       { facility(mail); };
filter f_emergency  { level(emerg); };
filter f_news       { facility(uucp) or
                        (facility(news)
                        and level(crit..emerg)); };
filter f_boot   { facility(local7); };
filter f_cron   { facility(cron); };

#log { source(s_sys); filter(f_kernel); destination(d_cons); };
log { source(s_sys); filter(f_kernel); destination(d_kern); };
log { source(s_sys); filter(f_default); destination(d_mesg); };
log { source(s_sys); filter(f_auth); destination(d_auth); };
log { source(s_sys); filter(f_mail); destination(d_mail); };
log { source(s_sys); filter(f_emergency); destination(d_mlal); };
log { source(s_sys); filter(f_news); destination(d_spol); };
log { source(s_sys); filter(f_boot); destination(d_boot); };
log { source(s_sys); filter(f_cron); destination(d_cron); };

destination d_split_by_host {
        file("/var/log/syslog-ng/$HOST-message"
                owner("logm_script")
                group("logm_script")
                perm(0644)
                dir_perm(0750)
                create_dirs(yes)
        );
};

destination d_split_by_sourceip {
        file("/var/log/syslog-ng/$SOURCEIP-message"
		        owner("log")
                group("log")
                perm(0644)
                dir_perm(0750)
                create_dirs(yes)
        );
};




log { source(s_net); destination(d_split_by_host); flags(flow-control); };

log { source(s_net_sip); destination(d_split_by_sourceip); flags(flow-control); };


# Source additional configuration files (.conf extension only)
@include "/etc/syslog-ng/conf.d/*.conf"


# vim:ft=syslog-ng:ai:si:ts=4:sw=4:et:


Последнее исправление: leave (всего исправлений: 1)

так вот же у тебя

destination d_split_by_host {

не делай так, и не будет этого. $HOST - это значение из самого сообщения syslog, ясное дело, что они разные для разных железок.

anonymous
()