如何将 syslog-ng 与 mysql 数据库连接起来?

如何将 syslog-ng 与 mysql 数据库连接起来?

大家好,我想使用 syslog-ng 服务器来记录来自防火墙的数据,我从文件 /var/firewall.log 中获取来自防火墙的数据,但现在我希望将日志发送到数据库。为此,我在 ubuntu 系统上安装了 mysql 数据库和 phpmyadmin。

我必须在 syslog-ng.conf 中更改什么以及必须对数据库做什么。

这是我的 syslog-ng.conf:

source s_firewall {
  udp();
  };

destination d_firewall {
  file("/var/log/firewall.log");
  };

filter f_firewall {
  netmask("172.16.10.163/255.255.255.255");
  };

log {
  source(s_firewall);
  filter(f_firewall);
  destination(d_firewall);
  };

这是我的日志文件:

...
Mar 14 15:47:09 172.16.10.163 kernel: arpresolve: can't allocate llinfo for 172.16.1.254
Mar 14 15:47:09 172.16.10.163 kernel: arpresolve: can't allocate llinfo for 172.16.1.254
Mar 14 15:47:10 172.16.10.163 pf: 00:00:34.029607 rule 47/0(match): pass in on le2: (tos 0x10, ttl 16, id 0, offset 0, flags [none], proto UDP (17), length 246)
Mar 14 15:47:10 172.16.10.163 pf: 00:00:34.029607 rule 47/0(match): pass in on le2: (tos 0x10, ttl 16, id 0, offset 0, flags [none], proto UDP (17), length 246)
...

相关内容