1
ich einen Watcher-Konfiguration haben, wie folgt:Kann nicht Transformation korrekt mit Elasticsearch Watcher {{}} ctx.payload.hits.hits
{
"trigger": {
"schedule": {
"interval": "5s"
}
},
"input" : {
"search" : {
"request" : {
"indices" : [ "my_index" ],
"types" : [ "my_type" ],
"body" : {
"query" : {
"match_all" : {}
}
}
}
}
},
"transform" : {
"script" : "return [ body: groovy.json.JsonOutput.toJson(ctx.payload.hits.hits)]"
},
"actions" : {
"hbase_webhook" : {
"webhook" : {
"method" : "POST",
"host" : "<some_ip>",
"port" : <some_port>,
"path": "/v0.1/_events",
"body" : "data: {{ctx.payload.body}}"
}
}
}
}
Die im Körper gebuchten Daten ist keine gültige JSON: So etwas wie:
{ 'data: ': { '{"_index":"my_index","_type":"my_type","_source":{"key":"val"}},"_id":"<some_id>","_score":1.0}': '' } }
ich weiß nicht, wie diese Ausgabe als JSON.parse in Node.js analysieren wird es nicht korrekt sowieso analysieren.
Ich sage nicht, dass es nicht funktioniert. Wenn ich es so wie mit {{ctx.payload.body}} zurückgebe (ohne data: part, wird immer noch nicht geparst. –
_Wenn ich es mit {{ctx.payload.body}} zurückgebe (ohne Daten: part Es parsen immer noch nicht._ Was ist der Parsing-Fehler, den du bekommst? –
@AndreiStefan Sorry, mein Fehler. Tatsächlich erhalte ich einen seltsam geformten JSON, zB '{'{" _index ":" "," _ type " : "", "_ source": {"": "", ...}, "_ id": "", "_ score": 1.0} ':' '} 'wo die Daten der Schlüssel und ist Der Wert ist '''. Wenn kein Dokument gefunden wird, ist es' {'0': ''} '. Irgendwelche Gedanken? Ich glaube, ich komme mir aber nahe :) –