首页 > 解决方案 > 我无法使用 syslog-ng 在表中插入一行

问题描述

destination d_pgsql {
 sql(type(pgsql)
 host("ip.of.you.host") username("logwriter")
 password(“logwriterpassword") port("5432")
 database("syslog")
 table("logs_${HOST}_${R_YEAR}${R_MONTH}${R_DAY}")
 columns("datetime varchar(16)", "host varchar(32)", "program varchar(20)", "pid
 varchar(10)", "message varchar(800)")
 values("$R_DATE", "$HOST", "$PROGRAM", "$PID", "$MSG")
 indexes("datetime", "host", "program", "pid", "message"));
 };

log { source(src); destination(d_pgsql); };

尝试重新启动时,syslog-ng 收到错误:

[2018-11-14T15:38:57.863699] Unable to initialize database access (DBI); rc='-1', error='No such file or directory (2)'
[2018-11-14T15:38:57.863877] Error initializing message pipeline; plugin_name='sql', location='/usr/local/etc/syslog-ng.conf:49:5'
/usr/local/etc/rc.d/syslog-ng: WARNING: failed to start syslog_ng

我已经在互联网上阅读了其他帖子,每个人都建议检查是否安装了 libdb。我有它。那会是什么?我已经没有想法了。我正在使用 FreeBSD。

标签: databasepostgresqlsyslog-ng

解决方案


推荐阅读