如何将日志从 syslog-ng 转发到 journald?

如何将日志从 syslog-ng 转发到 journald?

除了监听 UDP 端口外,journald 可以完成我需要的所有工作。我想使用 syslog-ng 作为从 UDP 端口到 journald 的转发器。有一个名为“udp514-journal”的简单程序可以处理这个问题。但是,syslog-ng 似乎更可靠,功能更强大(具有 TLS 加密和过滤器)。有很多关于如何将日志从 journald 转发到 syslog-ng 的示例,但我试图实现相反的目标。这可能吗?

答案1

我发现的唯一选择是使用/dev/log

但不是作为unix套接字而是作为unix数据报

@version: 4.4

options {
  stats(freq(1));
  flush_lines (0);
  time_reopen (10);
  log_fifo_size (10000);
  chain_hostnames (off);
  dns_cache (no);
  use_dns (no);
  use_fqdn (no);
  create_dirs (no);
  keep_hostname (yes);
  perm(0640);
  group("log");
};

source network_input_udp_514 {
  udp(ip(0.0.0.0) port(514));
};

destination journalctl {
  unix-dgram("/dev/log");
};

log {
  source(network_input_udp_514);
  destination(journalctl);
};

对我来说似乎工作得很好 - 所有消息都在

journalctl -u [email protected]

相关内容