带有JSON的Logstash中的HTTP输出

带有JSON的Logstash中的HTTP输出,logstash,Logstash,在Logstash中,当处理特定时间的日志时,我希望Logstash向Web服务器发送HTTP POST,发送JSON。但是,它给了我错误,不会启动logstsh。我假设它不喜欢作为消息一部分的JSON数据。FOOIP是一个变量,其IP地址位于日志中。任何帮助都会很好 日志存储配置文件 output{ if [type]=="FOO"{ http { format=>"json" http_method=>"post"

在Logstash中,当处理特定时间的日志时,我希望Logstash向Web服务器发送HTTP POST,发送JSON。但是,它给了我错误,不会启动logstsh。我假设它不喜欢作为消息一部分的JSON数据。FOOIP是一个变量,其IP地址位于日志中。任何帮助都会很好

日志存储配置文件

output{
    if [type]=="FOO"{
       http {
       format=>"json"
       http_method=>"post"
       url=>"http://192.168.1.10/bar"
       message=>"{'target':{'IPAddress':'"%{FOOIP}"},'commandName':'Test'}"
    }
}

格式设置为
json
时的
http
输出将
json
中的整个事件发布到web服务(因此它将忽略您设置的消息片段)。因此,如果您希望它与您正在设置的确切消息一起工作,请尝试更改为format=message。

这里有问题吗?我看到你有一个配置文件-它工作吗?如果不是,错误消息是什么?另外,强烈建议使用一个用于调试日志存储的示例日志文件行。有什么问题吗?谢谢您的解答。我忘记了“我在尝试启动logstash时出错,它不喜欢‘message’的语法”。谢谢,这让logstash运行起来。然而,在它启动15秒后,由于HTTP插件出错而崩溃。“NameError:未初始化的常量HTTP”。我假设我必须使用“web”命令运行logstash?>bin/logstash agent-f log.conf web“我需要升级到logstash的最新版本(1.4.2),并且能够运行它。