Fix label on scripted field date histograms

Now that we support Painless scripted fields users can create scripted
date fields, and thus scripted date histograms. The label making method
for the date histogram agg was getting the field name in a way that was
incompatible with scripted fields, so I've added some fallback code for
that scenario. I looked through the rest of the makeLabel methods on all
the other aggs and they all correctly access the field displayName
already so this should only need fixed for date histograms.

Now with more lodash for safer access

Fixes elastic#8632
This commit is contained in:
Matthew Bargar 2016-10-12 18:30:15 -04:00
parent 10e1fd688f
commit fc635bcf2f

View file

@ -41,7 +41,7 @@ export default function DateHistogramAggType(timefilter, config, Private) {
makeLabel: function (agg) {
const output = this.params.write(agg);
const params = output.params;
const field = params.field || agg.params.field.displayName || '';
const field = params.field || _.get(agg, 'params.field.displayName', '');
return field + ' per ' + (output.metricScaleText || output.bucketInterval.description);
},
createFilter: createFilter,