I'm in the processes of switching out elasticsearch in a reactjs app with influxdb and am trying to use the influxdb node-js library (https://node-influx.github.io/class/src/index.js~InfluxDB.html) but am having some issues running a query.
My previous code looked like this which works(this action gets dispatch once the store is initialized):
export function loadHosts() {
return function(dispatch) {
console.log("elastic");
return eSclient.search({
index: "sdpjmx",
type: "kafkajmx",
body: {
"size": 0,
"sort" : { "kafka_topic" : {"order" : "desc"}},
"aggs" : {
"hosts" : {
"terms" : {
"field" : "host",
"size": 500
}
}
},
"query": {
"bool": {
"filter": [
{
"range": {
"@timestamp": {
"gte": "now-60s"
}
}
}
]
}
}
}
}).then(hosts => {
hosts = {host_selected: "Select Host", hosts}
dispatch(loadHostsSuccess(hosts));
}).catch(error => {
throw(error);
});
};
}
and then I added in another promise just to get the influxdata and to just test to see if the call would actually happen...here is how I modified it:
export function loadHosts() {
return function(dispatch) {
console.log("elastic");
return eSclient.search({
index: "sdpjmx",
type: "kafkajmx",
body: {
"size": 0,
"sort" : { "kafka_topic" : {"order" : "desc"}},
"aggs" : {
"hosts" : {
"terms" : {
"field" : "host",
"size": 500
}
}
},
"query": {
"bool": {
"filter": [
{
"range": {
"@timestamp": {
"gte": "now-60s"
}
}
}
]
}
}
}
}).then(hosts => {
return influx.query(
'select distinct(host) from jmx where time > now() - 180m'
).then(infltest => {
hosts = {host_selected: "Select Host", hosts}
dispatch(loadHostsSuccess(hosts));
}).catch(err => {
throw(err);
});
}).catch(error => {
throw(error);
});
};
}
When I do this, react-redux fails to send a state so the components are failing, so it looks like I'm not using the influxdb library right but I'm not able to figure out what I'm doing wrong.
I import the library and create the connection like this:
import * as Influx from 'influx';
const influx = new Influx.InfluxDB({
host: "http://10.111.11.88:9050",
database: "sdp_metrics"
})
via user2061886
No comments:
Post a Comment