From 108d59cb91f446e2ea468ad59744fce23d058d9f Mon Sep 17 00:00:00 2001 From: Tim Sullivan Date: Fri, 17 Aug 2018 11:41:02 -0700 Subject: [PATCH] Allow kibana_settings collector to return nothing (#22091) * Fix kibana_settings collector to return nothing when no settings data is found * make code more clear --- .../collectors/get_settings_collector.js | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/x-pack/plugins/monitoring/server/kibana_monitoring/collectors/get_settings_collector.js b/x-pack/plugins/monitoring/server/kibana_monitoring/collectors/get_settings_collector.js index 1382abb4ea29..401ee9f4766c 100644 --- a/x-pack/plugins/monitoring/server/kibana_monitoring/collectors/get_settings_collector.js +++ b/x-pack/plugins/monitoring/server/kibana_monitoring/collectors/get_settings_collector.js @@ -61,7 +61,7 @@ export function getSettingsCollector(server, kbnServer) { return collectorSet.makeStatsCollector({ type: KIBANA_SETTINGS_TYPE, async fetch(callCluster) { - let kibanaSettingsData; + let kibanaSettingsData = null; const defaultAdminEmail = await checkForEmailValue(config, callCluster); // skip everything if defaultAdminEmail === undefined @@ -79,10 +79,16 @@ export function getSettingsCollector(server, kbnServer) { // remember the current email so that we can mark it as successful if the bulk does not error out shouldUseNull = !!defaultAdminEmail; - return { - kibana: getKibanaInfoForStats(server, kbnServer), - ...kibanaSettingsData - }; + // return nothing when there was no result + let settingsDoc; + if (kibanaSettingsData !== null) { + settingsDoc = { + kibana: getKibanaInfoForStats(server, kbnServer), + ...kibanaSettingsData + }; + } + + return settingsDoc; } }); }