@@ -2,8 +2,18 @@ targetScope = 'resourceGroup'
22
33param applicationInsightsName string
44param logAnalyticsWorkspaceName string
5+ param existingLogAnalyticsWorkspaceId string = ''
56
6- resource logAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@2023-09-01' = {
7+ var useExisting = !empty (existingLogAnalyticsWorkspaceId )
8+ var existingLawResourceGroup = useExisting ? split (existingLogAnalyticsWorkspaceId , '/' )[4 ] : ''
9+ var existingLawName = useExisting ? split (existingLogAnalyticsWorkspaceId , '/' )[8 ] : ''
10+
11+ resource existingLogAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@2020-08-01' existing = if (useExisting ) {
12+ name : existingLawName
13+ scope : resourceGroup (existingLawResourceGroup )
14+ }
15+
16+ resource logAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@2023-09-01' = if (!useExisting ) {
717 name : logAnalyticsWorkspaceName
818 location : resourceGroup ().location
919 properties : any ({
@@ -32,9 +42,10 @@ resource applicationInsights 'Microsoft.Insights/components@2020-02-02' = {
3242 publicNetworkAccessForIngestion : 'Enabled'
3343 publicNetworkAccessForQuery : 'Disabled'
3444 Request_Source : 'rest'
35- WorkspaceResourceId : logAnalyticsWorkspace .id
45+ WorkspaceResourceId : useExisting ? existingLogAnalyticsWorkspace . id : logAnalyticsWorkspace .id
3646 }
3747}
3848
3949output id string = applicationInsights .id
40- output logAnalyticsWorkspaceName string = logAnalyticsWorkspace .name
50+ output logAnalyticsWorkspaceName string = useExisting ? existingLogAnalyticsWorkspace .name : logAnalyticsWorkspace .name
51+ output logAnalyticsWorkspaceResourceGroup string = useExisting ? existingLawResourceGroup : resourceGroup ().name
0 commit comments