Skip to content

Commit

Permalink
[Monitoring] Ensure the settings api always return the xpack/default_…
Browse files Browse the repository at this point in the history
…admin_email (#22220) (#22289)

* If the settings collector returns nothing, ensure the settings api still returns a null value for default_admin_email

* Update test

* Feedback from PR
  • Loading branch information
chrisronline committed Aug 23, 2018
1 parent 1c22214 commit 4fe840e
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 6 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -65,11 +65,7 @@ export function getSettingsCollector(server) {

// skip everything if defaultAdminEmail === undefined
if (defaultAdminEmail || (defaultAdminEmail === null && shouldUseNull)) {
kibanaSettingsData = {
xpack: {
default_admin_email: defaultAdminEmail
}
};
kibanaSettingsData = this.getEmailValueStructure(defaultAdminEmail);
this.log.debug(`[${defaultAdminEmail}] default admin email setting found, sending [${KIBANA_SETTINGS_TYPE}] monitoring document.`);
} else {
this.log.debug(`not sending [${KIBANA_SETTINGS_TYPE}] monitoring document because [${defaultAdminEmail}] is null or invalid.`);
Expand All @@ -80,6 +76,13 @@ export function getSettingsCollector(server) {

// returns undefined if there was no result
return kibanaSettingsData;
},
getEmailValueStructure(email) {
return {
xpack: {
default_admin_email: email
}
};
}
});
}
5 changes: 4 additions & 1 deletion x-pack/plugins/xpack_main/server/routes/api/v1/settings.js
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,10 @@ export function settingsRoute(server, kbnServer) {
const { collectorSet } = server.usage;
const settingsCollector = collectorSet.getCollectorByType(KIBANA_SETTINGS_TYPE);

const settings = await settingsCollector.fetch(callCluster);
let settings = await settingsCollector.fetch(callCluster);
if (!settings) {
settings = settingsCollector.getEmailValueStructure(null);
}
const uuid = await getClusterUuid(callCluster);

const kibana = getKibanaInfoForStats(server, kbnServer);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ export default function ({ getService }) {
expect(body.settings.kibana.transport_address.length > 0).to.eql(true);
expect(body.settings.kibana.version.length > 0).to.eql(true);
expect(body.settings.kibana.status.length > 0).to.eql(true);
expect(body.settings.xpack.default_admin_email).to.eql(null);
});
});
});
Expand Down

0 comments on commit 4fe840e

Please sign in to comment.