Skip to content

Commit 229810a

Browse files
fix: Bug fix for EXP changes (#1842)
1 parent b3eb373 commit 229810a

File tree

8 files changed

+449
-375
lines changed

8 files changed

+449
-375
lines changed

docs/re-use-resource-group.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ Replace `<rg-name>` with the name of your chosen Resource Group.
2424
If you want to specify the location, run:
2525

2626
```bash
27-
azd env set AZURE_RESOURCE_GROUP_LOCATION <location>
27+
azd env set AZURE_LOCATION <location>
2828
```
2929
Replace `<location>` with the desired Azure region.
3030

infra/app/workbook.bicep

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ param functionName string
55
param websiteName string
66
param adminWebsiteName string
77
param eventGridSystemTopicName string
8-
param logAnalyticsName string
8+
param logAnalyticsResourceId string
99
param azureOpenAIResourceName string
1010
param azureAISearchName string
1111
param storageAccountName string
@@ -36,8 +36,8 @@ var wookbookContentsEventGridReplaced = replace(
3636
)
3737
var wookbookContentsLogAnalyticsReplaced = replace(
3838
wookbookContentsEventGridReplaced,
39-
'{log-analytics}',
40-
logAnalyticsName
39+
'{log-analytics-resource-id}',
40+
logAnalyticsResourceId
4141
)
4242
var wookbookContentsOpenAIReplaced = replace(wookbookContentsLogAnalyticsReplaced, '{open-ai}', azureOpenAIResourceName)
4343
var wookbookContentsAISearchReplaced = replace(wookbookContentsOpenAIReplaced, '{ai-search}', azureAISearchName)

infra/core/monitor/loganalytics.bicep

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,19 @@ param name string
33
param location string = resourceGroup().location
44
param tags object = {}
55

6-
resource logAnalytics 'Microsoft.OperationalInsights/workspaces@2021-12-01-preview' = {
6+
param existingLogAnalyticsWorkspaceId string = ''
7+
8+
var useExisting = !empty(existingLogAnalyticsWorkspaceId)
9+
var existingLawSubscriptionId = useExisting ? split(existingLogAnalyticsWorkspaceId, '/')[2] : ''
10+
var existingLawResourceGroup = useExisting ? split(existingLogAnalyticsWorkspaceId, '/')[4] : ''
11+
var existingLawName = useExisting ? split(existingLogAnalyticsWorkspaceId, '/')[8] : ''
12+
13+
resource existingLogAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@2020-08-01' existing = if (useExisting) {
14+
name: existingLawName
15+
scope: resourceGroup(existingLawSubscriptionId, existingLawResourceGroup)
16+
}
17+
18+
resource logAnalytics 'Microsoft.OperationalInsights/workspaces@2023-09-01' = if (!useExisting) {
719
name: name
820
location: location
921
tags: tags
@@ -18,5 +30,5 @@ resource logAnalytics 'Microsoft.OperationalInsights/workspaces@2021-12-01-previ
1830
})
1931
}
2032

21-
output id string = logAnalytics.id
22-
output name string = logAnalytics.name
33+
output id string = useExisting ? existingLogAnalyticsWorkspace.id : logAnalytics.id
34+
output name string = useExisting ? existingLogAnalyticsWorkspace.name : logAnalytics.name

infra/core/monitor/monitoring.bicep

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,15 @@ param applicationInsightsName string
44
param applicationInsightsDashboardName string = ''
55
param location string = resourceGroup().location
66
param tags object = {}
7+
param existingLogAnalyticsWorkspaceId string = ''
78

89
module logAnalytics 'loganalytics.bicep' = {
910
name: 'loganalytics'
1011
params: {
1112
name: logAnalyticsName
1213
location: location
1314
tags: tags
15+
existingLogAnalyticsWorkspaceId: existingLogAnalyticsWorkspaceId
1416
}
1517
}
1618

@@ -30,4 +32,4 @@ output applicationInsightsInstrumentationKey string = applicationInsights.output
3032
output applicationInsightsName string = applicationInsights.outputs.name
3133
output applicationInsightsId string = applicationInsights.outputs.id
3234
output logAnalyticsWorkspaceId string = logAnalytics.outputs.id
33-
output logAnalyticsWorkspaceName string = logAnalytics.outputs.name
35+
output logAnalyticsWorkspaceName string = logAnalytics.outputs.name

infra/main.bicep

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,19 @@ var abbrs = loadJsonContent('./abbreviations.json')
88

99
param resourceToken string = toLower(uniqueString(subscription().id, environmentName, location))
1010

11-
@description('Location for all resources.')
11+
@description('Location for all resources, if you are using existing resource group provide the location of the resorce group.')
12+
@metadata({azd: {
13+
type: 'location'
14+
}
15+
})
1216
param location string
1317

18+
@description('The resource group name which would be created or reused if existing')
19+
param rgName string = 'rg-${environmentName}'
20+
21+
@description('Optional: Existing Log Analytics Workspace Resource ID')
22+
param existingLogAnalyticsWorkspaceId string = ''
23+
1424
@description('Name of App Service plan')
1525
param hostingPlanName string = 'asp-${resourceToken}'
1626

@@ -311,12 +321,14 @@ param recognizedLanguages string = 'en-US,fr-FR,de-DE,it-IT'
311321
@description('Azure Machine Learning Name')
312322
param azureMachineLearningName string = 'mlw-${resourceToken}'
313323

324+
@description('Resource ID of existing Log Analytics workspace. If not provided, a new one will be created.')
325+
param existingLogAnalyticsResourceId string = ''
326+
314327
var blobContainerName = 'documents'
315328
var queueName = 'doc-processing'
316329
var clientKey = '${uniqueString(guid(subscription().id, deployment().name))}${newGuidString}'
317330
var eventGridSystemTopicName = 'doc-processing'
318331
var tags = { 'azd-env-name': environmentName }
319-
var rgName = 'rg-${environmentName}'
320332
var keyVaultName = '${abbrs.security.keyVault}${resourceToken}'
321333
var baseUrl = 'https://raw.githubusercontent.com/Azure-Samples/chat-with-your-data-solution-accelerator/main/'
322334

@@ -1019,6 +1031,7 @@ module monitoring './core/monitor/monitoring.bicep' = {
10191031
}
10201032
logAnalyticsName: logAnalyticsName
10211033
applicationInsightsDashboardName: 'dash-${applicationInsightsName}'
1034+
existingLogAnalyticsWorkspaceId: existingLogAnalyticsWorkspaceId
10221035
}
10231036
}
10241037

@@ -1035,7 +1048,7 @@ module workbook './app/workbook.bicep' = {
10351048
? adminweb_docker.outputs.WEBSITE_ADMIN_NAME
10361049
: adminweb.outputs.WEBSITE_ADMIN_NAME
10371050
eventGridSystemTopicName: eventgrid.outputs.name
1038-
logAnalyticsName: monitoring.outputs.logAnalyticsWorkspaceName
1051+
logAnalyticsResourceId: monitoring.outputs.logAnalyticsWorkspaceId
10391052
azureOpenAIResourceName: openai.outputs.name
10401053
azureAISearchName: databaseType == 'CosmosDB' ? search.outputs.name : ''
10411054
storageAccountName: storage.outputs.name

infra/main.bicepparam

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,3 +79,6 @@ param azureAISearchName = searchServiceName == '' ? 'search-${resourceToken}' :
7979
param azureSearchIndex = readEnvironmentVariable('AZURE_SEARCH_INDEX', 'index-${resourceToken}')
8080
param azureOpenAIResourceName = readEnvironmentVariable('AZURE_OPENAI_RESOURCE', 'openai-${resourceToken}')
8181
param storageAccountName = readEnvironmentVariable('AZURE_BLOB_ACCOUNT_NAME', 'str${resourceToken}')
82+
83+
param rgName = readEnvironmentVariable('AZURE_RESOURCE_GROUP', 'rg-${environmentName}')
84+
param existingLogAnalyticsWorkspaceId = readEnvironmentVariable('AZURE_ENV_LOG_ANALYTICS_WORKSPACE_ID', '')

0 commit comments

Comments
 (0)