diff --git a/public/app/plugins/datasource/grafana-azure-monitor-datasource/azure_log_analytics/azure_log_analytics_datasource.ts b/public/app/plugins/datasource/grafana-azure-monitor-datasource/azure_log_analytics/azure_log_analytics_datasource.ts index d05209d0a6a..c40f34197c5 100644 --- a/public/app/plugins/datasource/grafana-azure-monitor-datasource/azure_log_analytics/azure_log_analytics_datasource.ts +++ b/public/app/plugins/datasource/grafana-azure-monitor-datasource/azure_log_analytics/azure_log_analytics_datasource.ts @@ -87,7 +87,11 @@ export default class AzureLogAnalyticsDatasource { ); const generated = querystringBuilder.generate(); - const workspace = this.templateSrv.replace(item.workspace, options.scopedVars); + let workspace = this.templateSrv.replace(item.workspace, options.scopedVars); + + if (!workspace && this.defaultOrFirstWorkspace) { + workspace = this.defaultOrFirstWorkspace; + } const url = `${this.baseUrl}/${workspace}/query?${generated.uriString}`; diff --git a/public/app/plugins/datasource/grafana-azure-monitor-datasource/partials/query.editor.html b/public/app/plugins/datasource/grafana-azure-monitor-datasource/partials/query.editor.html index 368a433df35..f7e4e310f8b 100644 --- a/public/app/plugins/datasource/grafana-azure-monitor-datasource/partials/query.editor.html +++ b/public/app/plugins/datasource/grafana-azure-monitor-datasource/partials/query.editor.html @@ -118,7 +118,7 @@
+ get-options="ctrl.getWorkspaces()" on-change="ctrl.refresh()" css-class="min-width-12">
diff --git a/public/app/plugins/datasource/grafana-azure-monitor-datasource/query_ctrl.ts b/public/app/plugins/datasource/grafana-azure-monitor-datasource/query_ctrl.ts index 1c6926440b0..167286d02ac 100644 --- a/public/app/plugins/datasource/grafana-azure-monitor-datasource/query_ctrl.ts +++ b/public/app/plugins/datasource/grafana-azure-monitor-datasource/query_ctrl.ts @@ -537,9 +537,18 @@ export class AzureMonitorQueryCtrl extends QueryCtrl { .getWorkspaces(this.target.subscription) .then((list: any[]) => { this.workspaces = list; + if (list.length > 0 && !this.target.azureLogAnalytics.workspace) { - this.target.azureLogAnalytics.workspace = list[0].value; + if (this.datasource.azureLogAnalyticsDatasource.defaultOrFirstWorkspace) { + this.target.azureLogAnalytics.workspace = this.datasource.azureLogAnalyticsDatasource.defaultOrFirstWorkspace; + } + + if (!this.target.azureLogAnalytics.workspace) { + this.target.azureLogAnalytics.workspace = list[0].value; + } } + + return this.workspaces; }) .catch(this.handleQueryCtrlError.bind(this)); };