Hi,
I am trying to set-up Machine Learning in Kibana using the X-pack plugin.
I uploaded some test data in the following format:
"anomaly": {
"properties": {
"device": {
"properties": {
"sess_cookie": {
"type": "keyword"
}
}
},
"property": {
"properties": {
"country_code": {
"type": "keyword"
},
"locale": {
"type": "keyword"
},
"site_id": {
"type": "keyword"
}
}
},
"request": {
"properties": {
"start_timestamp": {
"type": "date",
"format": "YYYY-MM-dd HH:mm:ss.SSS z"
}
}
}
}
}
Example:
request.start_timestamp:July 1st 2017, 20:11:27 property.site_id:86 property.country_code:GB property.locale:en_GB device.sess_cookie:96f19e37-7ecf-4f3e-a633-ca96e8559be2 _id:20ac1849-b1d2-4caf-98c8-4d43c79dec84 _type:anomaly _index:anomaly3_detection _score:1`
When I go to Machine Learning, try to create a simple single metric model and press the 'use full index* data', I get the following:
The 'Run' button is also disabled.
Oddly enough, I am able to create an advanced job based on the same data, but apart from the model being very inaccurate, I get the following error at the top of my chart:
The log says the following:
Caused by: java.lang.IllegalStateException: value source config is invalid; must have either a field context or a script or marked as unwrapped
at org.elasticsearch.search.aggregations.support.ValuesSourceConfig.toValuesSource(ValuesSourceConfig.java:227) ~[elasticsearch-5.5.0.jar:5.5.0]
at org.elasticsearch.search.aggregations.support.ValuesSourceAggregatorFactory.createInternal(ValuesSourceAggregatorFactory.java:51) ~[elasticsearch-5.5.0.jar:5.5.0]
at org.elasticsearch.search.aggregations.AggregatorFactory.create(AggregatorFactory.java:221) ~[elasticsearch-5.5.0.jar:5.5.0]
at org.elasticsearch.search.aggregations.AggregatorFactories.createTopLevelAggregators(AggregatorFactories.java:224) ~[elasticsearch-5.5.0.jar:5.5.0]
at org.elasticsearch.search.aggregations.AggregationPhase.preProcess(AggregationPhase.java:55) ~[elasticsearch-5.5.0.jar:5.5.0]
at org.elasticsearch.search.query.QueryPhase.execute(QueryPhase.java:106) ~[elasticsearch-5.5.0.jar:5.5.0]
at org.elasticsearch.indices.IndicesService.lambda$loadIntoContext$16(IndicesService.java:1130) ~[elasticsearch-5.5.0.jar:5.5.0]
at org.elasticsearch.indices.IndicesService.lambda$cacheShardLevelResult$18(IndicesService.java:1211) ~[elasticsearch-5.5.0.jar:5.5.0]
at org.elasticsearch.indices.IndicesRequestCache$Loader.load(IndicesRequestCache.java:160) ~[elasticsearch-5.5.0.jar:5.5.0]
at org.elasticsearch.indices.IndicesRequestCache$Loader.load(IndicesRequestCache.java:143) ~[elasticsearch-5.5.0.jar:5.5.0]
at org.elasticsearch.common.cache.Cache.computeIfAbsent(Cache.java:401) ~[elasticsearch-5.5.0.jar:5.5.0]
at org.elasticsearch.indices.IndicesRequestCache.getOrCompute(IndicesRequestCache.java:116) ~[elasticsearch-5.5.0.jar:5.5.0]
at org.elasticsearch.indices.IndicesService.cacheShardLevelResult(IndicesService.java:1217) ~[elasticsearch-5.5.0.jar:5.5.0]
at org.elasticsearch.indices.IndicesService.loadIntoContext(IndicesService.java:1129) ~[elasticsearch-5.5.0.jar:5.5.0]
at org.elasticsearch.search.SearchService.loadOrExecuteQueryPhase(SearchService.java:246) ~[elasticsearch-5.5.0.jar:5.5.0]
at org.elasticsearch.search.SearchService.executeQueryPhase(SearchService.java:263) ~[elasticsearch-5.5.0.jar:5.5.0]
at org.elasticsearch.action.search.SearchTransportService$6.messageReceived(SearchTransportService.java:330) ~[elasticsearch-5.5.0.jar:5.5.0]
at org.elasticsearch.action.search.SearchTransportService$6.messageReceived(SearchTransportService.java:327) ~[elasticsearch-5.5.0.jar:5.5.0]
at org.elasticsearch.xpack.security.transport.SecurityServerTransportInterceptor$ProfileSecuredRequestHandler$1.doRun(SecurityServerTransportInterceptor.java:258) ~[?:?]
at org.elasticsearch.common.util.concurrent.AbstractRunnable.run(AbstractRunnable.java:37) ~[elasticsearch-5.5.0.jar:5.5.0]
... 25 more
Any idea why this is the case?
Vlad