Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Syslog ng格式json不工作_Json_Templates_Syslog Ng - Fatal编程技术网

Syslog ng格式json不工作

Syslog ng格式json不工作,json,templates,syslog-ng,Json,Templates,Syslog Ng,我正在拼命尝试将一条消息作为JSON发送到PHP脚本 destination d_php { program("/usr/bin/php -f /data/htdocs/log.php" template("$(format-json)\n") ) ; }; php脚本很好。使用简单宏可以很好地工作,但“格式化json”函数始终会返回以下内容: 模板中出错:$(json格式) 我尝试了我在文档中能找到的一切,但我得到的所有回应都是“模板中的错误”。官方文件甚至使用了两种不同的拼写,这不是很有

我正在拼命尝试将一条消息作为JSON发送到PHP脚本

destination d_php {
program("/usr/bin/php -f /data/htdocs/log.php" template("$(format-json)\n")  ) ;
};
php脚本很好。使用简单宏可以很好地工作,但“格式化json”函数始终会返回以下内容:

模板中出错:$(json格式)

我尝试了我在文档中能找到的一切,但我得到的所有回应都是“模板中的错误”。官方文件甚至使用了两种不同的拼写,这不是很有希望


有什么想法吗?

格式json和格式json语法都应该有效,连字符和下划线在syslog ng中是等效的。 至于实际问题,您是否尝试过设置format json的scope参数,比如“$(format_json——scope selected_macros)”?默认情况下,它是空的,这意味着没有要格式化的内容

嗯,

问候,


罗伯特·费克特找到了原因。显然,syslog ng在Ubuntu(12)上被分成了不同的包。我必须安装
syslog ng mod json


很遗憾,syslog ng没有给出函数丢失或未知的一点提示,而不是一些一般性错误。

如果您是从源代码处编译的,您应该首先安装json-c库(yum install json-c-devel)