Skip to content

Commit 502d2b7

Browse files
Merge pull request #458 from microsoft/exp-changes
feat: EXP environment changes for Log Analytics workspace
2 parents 58b83cb + d34759b commit 502d2b7

File tree

6 files changed

+32
-4
lines changed

6 files changed

+32
-4
lines changed

documents/CustomizingAzdParameters.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,4 +45,9 @@ Change the Embedding Deployment Capacity (choose a number based on available emb
4545

4646
```shell
4747
azd env set AZURE_OPENAI_EMBEDDING_MODEL_CAPACITY 80
48+
```
49+
50+
Set the Log Analytics Workspace Id if you need to reuse the existing workspace which is already existing
51+
```shell
52+
azd env set AZURE_ENV_LOG_ANALYTICS_WORKSPACE_ID '<Existing Log Analytics Workspace Id>'
4853
```

documents/DeploymentGuide.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,8 @@ When you start the deployment, most parameters will have **default values**, but
116116
| **GPT Model Deployment Capacity** | Configure capacity for **GPT models**. | 30k |
117117
| **Embedding Model** | Default: **text-embedding-ada-002**. | text-embedding-ada-002 |
118118
| **Embedding Model Capacity** | Set the capacity for **embedding models**. | 80k |
119+
| **Existing Log analytics workspace** | To reuse the existing Log analytics workspace Id. | |
120+
119121

120122
</details>
121123

infra/deploy_ai_foundry.bicep

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@ param gptDeploymentCapacity int
1010
param embeddingModel string
1111
param embeddingDeploymentCapacity int
1212
param managedIdentityObjectId string
13+
param existingLogAnalyticsWorkspaceId string = ''
14+
1315
var abbrs = loadJsonContent('./abbreviations.json')
1416
// var storageName = '${solutionName}hubstorage'
1517
// var storageSkuName = 'Standard_LRS'
@@ -73,11 +75,20 @@ var aiModelDeployments = [
7375

7476
var containerRegistryNameCleaned = replace(containerRegistryName, '-', '')
7577

78+
var useExisting = !empty(existingLogAnalyticsWorkspaceId)
79+
var existingLawResourceGroup = useExisting ? split(existingLogAnalyticsWorkspaceId, '/')[4] : ''
80+
var existingLawName = useExisting ? split(existingLogAnalyticsWorkspaceId, '/')[8] : ''
81+
7682
resource keyVault 'Microsoft.KeyVault/vaults@2022-07-01' existing = {
7783
name: keyVaultName
7884
}
7985

80-
resource logAnalytics 'Microsoft.OperationalInsights/workspaces@2023-09-01' = {
86+
resource existingLogAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@2023-09-01' existing = if (useExisting) {
87+
name: existingLawName
88+
scope: resourceGroup(existingLawResourceGroup)
89+
}
90+
91+
resource logAnalytics 'Microsoft.OperationalInsights/workspaces@2023-09-01' = if (!useExisting){
8192
name: workspaceName
8293
location: location
8394
tags: {}
@@ -97,7 +108,7 @@ resource applicationInsights 'Microsoft.Insights/components@2020-02-02' = {
97108
Application_Type: 'web'
98109
publicNetworkAccessForIngestion: 'Enabled'
99110
publicNetworkAccessForQuery: 'Disabled'
100-
WorkspaceResourceId: logAnalytics.id
111+
WorkspaceResourceId: useExisting ? existingLogAnalyticsWorkspace.id : logAnalytics.id
101112
}
102113
}
103114

@@ -714,7 +725,9 @@ output aiSearchService string = aiSearch.name
714725
output aiProjectName string = aiHubProject.name
715726

716727
output applicationInsightsId string = applicationInsights.id
717-
output logAnalyticsWorkspaceResourceName string = logAnalytics.name
728+
output logAnalyticsWorkspaceResourceName string = useExisting ? existingLogAnalyticsWorkspace.name : logAnalytics.name
729+
output logAnalyticsWorkspaceResourceGroup string = useExisting ? existingLawResourceGroup : resourceGroup().name
730+
718731
output storageAccountName string = storageNameCleaned
719732

720733
output azureOpenAIKeyName string = azureOpenAIApiKeyEntry.name

infra/deploy_post_deployment_scripts.bicep

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,12 @@ param sqlDbName string
1717
param sqlUsers array = [
1818
]
1919
param logAnalyticsWorkspaceResourceName string
20+
param logAnalyticsWorkspaceResourceGroup string
2021
var resourceGroupName = resourceGroup().name
2122

2223
resource logAnalytics 'Microsoft.OperationalInsights/workspaces@2020-10-01' existing = {
2324
name: logAnalyticsWorkspaceResourceName
24-
scope: resourceGroup()
25+
scope: resourceGroup(logAnalyticsWorkspaceResourceGroup)
2526
}
2627

2728
resource containerAppEnv 'Microsoft.App/managedEnvironments@2022-03-01' = {

infra/main.bicep

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@ var abbrs = loadJsonContent('./abbreviations.json')
66
@description('A unique prefix for all resources in this deployment. This should be 3-20 characters long:')
77
param environmentName string
88

9+
@description('Optional: Existing Log Analytics Workspace Resource ID')
10+
param existingLogAnalyticsWorkspaceId string = ''
11+
912
@minLength(1)
1013
@description('Location for the Content Understanding service deployment:')
1114
@allowed(['swedencentral', 'australiaeast'])
@@ -107,6 +110,8 @@ module aifoundry 'deploy_ai_foundry.bicep' = {
107110
embeddingModel: embeddingModel
108111
embeddingDeploymentCapacity: embeddingDeploymentCapacity
109112
managedIdentityObjectId: managedIdentityModule.outputs.managedIdentityOutput.objectId
113+
existingLogAnalyticsWorkspaceId: existingLogAnalyticsWorkspaceId
114+
110115
}
111116
scope: resourceGroup(resourceGroup().name)
112117
}
@@ -168,6 +173,7 @@ module uploadFiles 'deploy_post_deployment_scripts.bicep' = {
168173
managedIdentityClientId:managedIdentityModule.outputs.managedIdentityOutput.clientId
169174
keyVaultName:aifoundry.outputs.keyvaultName
170175
logAnalyticsWorkspaceResourceName: aifoundry.outputs.logAnalyticsWorkspaceResourceName
176+
logAnalyticsWorkspaceResourceGroup: aifoundry.outputs.logAnalyticsWorkspaceResourceGroup
171177
sqlServerName: sqlDBModule.outputs.sqlServerName
172178
sqlDbName: sqlDBModule.outputs.sqlDbName
173179
sqlUsers: [

infra/main.bicepparam

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,3 +9,4 @@ param gptModelName = readEnvironmentVariable('AZURE_OPEN_AI_DEPLOYMENT_MODEL', '
99
param gptDeploymentCapacity = int(readEnvironmentVariable('AZURE_OPEN_AI_DEPLOYMENT_MODEL_CAPACITY', '30'))
1010
param embeddingModel = readEnvironmentVariable('AZURE_OPENAI_EMBEDDING_MODEL', 'text-embedding-ada-002')
1111
param embeddingDeploymentCapacity = int(readEnvironmentVariable('AZURE_OPENAI_EMBEDDING_MODEL_CAPACITY', '80'))
12+
param existingLogAnalyticsWorkspaceId = readEnvironmentVariable('AZURE_ENV_LOG_ANALYTICS_WORKSPACE_ID', '')

0 commit comments

Comments
 (0)