Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Application Insights Logging with Middleware #8

Closed
wants to merge 3 commits into from

Conversation

marvinbuss
Copy link
Contributor

Proposed changes:

  • Add Application Insights Logging with Middleware

@marvinbuss marvinbuss added the enhancement New feature or request label Aug 26, 2024
@marvinbuss marvinbuss self-assigned this Aug 26, 2024
Copy link

Terraform Lint Results

  • Terraform Version 📎1.9.5
  • Working Directory 📂./code/infra
  • Terraform Format and Style 🖌success

Copy link

Terraform Validation & Plan Results

  • Terraform Version 📎1.9.5
  • Working Directory 📂./code/infra
  • Terraform Initialization ⚙️success
  • Terraform Validation 🤖success
  • Terraform Plan 📖success
Show Plan

terraform
�[0m�[1mdata.local_file.file_system_prompt: Reading...�[0m�[0m
�[0m�[1mdata.local_file.file_system_prompt: Read complete after 0s [id=ba88ebfa39219c2d2f9e8c3f409a4de4d67ae958]�[0m
�[0m�[1mdata.azurerm_virtual_network.virtual_network: Reading...�[0m�[0m
�[0m�[1mdata.azurerm_log_analytics_workspace.log_analytics_workspace: Reading...�[0m�[0m
�[0m�[1mdata.azurerm_route_table.route_table: Reading...�[0m�[0m
�[0m�[1mmodule.key_vault.data.azurerm_client_config.current: Reading...�[0m�[0m
�[0m�[1mmodule.azure_open_ai.data.azurerm_client_config.current: Reading...�[0m�[0m
�[0m�[1mdata.azurerm_network_security_group.network_security_group: Reading...�[0m�[0m
�[0m�[1mazurerm_resource_group.resource_group: Refreshing state... [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg]�[0m
�[0m�[1mmodule.azure_open_ai.data.azurerm_client_config.current: Read complete after 0s [id=Y2xpZW50Q29uZmlncy9jbGllbnRJZD1iYWFhNzg4NS05MGQ5LTQ5YTYtYmZmMC1jMTJlYzczOGJmOWI7b2JqZWN0SWQ9ZTlmOGE5ZDUtMmI0ZC00ZDY1LTg1ZTMtZGNiNmVmNDk4OGJlO3N1YnNjcmlwdGlvbklkPThmMTcxZmY5LTJiNWItNGYwZi1hZWQ1LTdmYTM2MGExZDA5NDt0ZW5hbnRJZD0zNTU2YmU3OS0yOTc5LTRiMTktYTFhZi00ZGQ0ZTZkOWVkN2U=]�[0m
�[0m�[1mmodule.key_vault.data.azurerm_client_config.current: Read complete after 0s [id=Y2xpZW50Q29uZmlncy9jbGllbnRJZD1iYWFhNzg4NS05MGQ5LTQ5YTYtYmZmMC1jMTJlYzczOGJmOWI7b2JqZWN0SWQ9ZTlmOGE5ZDUtMmI0ZC00ZDY1LTg1ZTMtZGNiNmVmNDk4OGJlO3N1YnNjcmlwdGlvbklkPThmMTcxZmY5LTJiNWItNGYwZi1hZWQ1LTdmYTM2MGExZDA5NDt0ZW5hbnRJZD0zNTU2YmU3OS0yOTc5LTRiMTktYTFhZi00ZGQ0ZTZkOWVkN2U=]�[0m
�[0m�[1mdata.azurerm_network_security_group.network_security_group: Read complete after 0s [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/mycrp-prd-dpml-network-rg/providers/Microsoft.Network/networkSecurityGroups/mycrp-prd-dpml-nsg001]�[0m
�[0m�[1mdata.azurerm_route_table.route_table: Read complete after 0s [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/mycrp-prd-dpml-network-rg/providers/Microsoft.Network/routeTables/mycrp-prd-dpml-rt001]�[0m
�[0m�[1mdata.azurerm_virtual_network.virtual_network: Read complete after 0s [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/mycrp-prd-dpml-network-rg/providers/Microsoft.Network/virtualNetworks/mycrp-prd-dpml-vnet001]�[0m
�[0m�[1mdata.azurerm_log_analytics_workspace.log_analytics_workspace: Read complete after 0s [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/DefaultResourceGroup-NEU/providers/Microsoft.OperationalInsights/workspaces/DefaultWorkspace-8f171ff9-2b5b-4f0f-aed5-7fa360a1d094-NEU]�[0m

Terraform used the selected providers to generate the following execution
plan. Resource actions are indicated with the following symbols:
  �[32m+�[0m create�[0m
 �[36m<=�[0m read (data resources)�[0m

Terraform will perform the following actions:

�[1m  # data.azurerm_monitor_diagnostic_categories.diagnostic_categories_linux_web_app�[0m will be read during apply
  # (config refers to values not yet known)
�[0m �[36m<=�[0m�[0m data "azurerm_monitor_diagnostic_categories" "diagnostic_categories_linux_web_app" {
      �[32m+�[0m�[0m id                  = (known after apply)
      �[32m+�[0m�[0m log_category_groups = (known after apply)
      �[32m+�[0m�[0m log_category_types  = (known after apply)
      �[32m+�[0m�[0m logs                = (known after apply)
      �[32m+�[0m�[0m metrics             = (known after apply)
      �[32m+�[0m�[0m resource_id         = (known after apply)
    }

�[1m  # azapi_resource.subnet_private_endpoints�[0m will be created
�[0m  �[32m+�[0m�[0m resource "azapi_resource" "subnet_private_endpoints" {
      �[32m+�[0m�[0m body                      = jsonencode(
            {
              �[32m+�[0m�[0m properties = {
                  �[32m+�[0m�[0m addressPrefix                     = "10.0.96.128/27"
                  �[32m+�[0m�[0m delegations                       = []
                  �[32m+�[0m�[0m ipAllocations                     = []
                  �[32m+�[0m�[0m networkSecurityGroup              = {
                      �[32m+�[0m�[0m id = "/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/mycrp-prd-dpml-network-rg/providers/Microsoft.Network/networkSecurityGroups/mycrp-prd-dpml-nsg001"
                    }
                  �[32m+�[0m�[0m privateEndpointNetworkPolicies    = "Enabled"
                  �[32m+�[0m�[0m privateLinkServiceNetworkPolicies = "Enabled"
                  �[32m+�[0m�[0m routeTable                        = {
                      �[32m+�[0m�[0m id = "/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/mycrp-prd-dpml-network-rg/providers/Microsoft.Network/routeTables/mycrp-prd-dpml-rt001"
                    }
                  �[32m+�[0m�[0m serviceEndpointPolicies           = []
                  �[32m+�[0m�[0m serviceEndpoints                  = []
                }
            }
        )
      �[32m+�[0m�[0m id                        = (known after apply)
      �[32m+�[0m�[0m ignore_casing             = false
      �[32m+�[0m�[0m ignore_missing_property   = true
      �[32m+�[0m�[0m name                      = "PrivateEndpointSubnet"
      �[32m+�[0m�[0m output                    = (known after apply)
      �[32m+�[0m�[0m parent_id                 = "/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/mycrp-prd-dpml-network-rg/providers/Microsoft.Network/virtualNetworks/mycrp-prd-dpml-vnet001"
      �[32m+�[0m�[0m removing_special_chars    = false
      �[32m+�[0m�[0m schema_validation_enabled = true
      �[32m+�[0m�[0m type                      = "Microsoft.Network/virtualNetworks/subnets@2022-07-01"
    }

�[1m  # azapi_resource.subnet_web_app�[0m will be created
�[0m  �[32m+�[0m�[0m resource "azapi_resource" "subnet_web_app" {
      �[32m+�[0m�[0m body                      = jsonencode(
            {
              �[32m+�[0m�[0m properties = {
                  �[32m+�[0m�[0m addressPrefix                     = "10.0.96.64/26"
                  �[32m+�[0m�[0m delegations                       = [
                      �[32m+�[0m�[0m {
                          �[32m+�[0m�[0m name       = "WebAppDelegation"
                          �[32m+�[0m�[0m properties = {
                              �[32m+�[0m�[0m serviceName = "Microsoft.Web/serverfarms"
                            }
                        },
                    ]
                  �[32m+�[0m�[0m ipAllocations                     = []
                  �[32m+�[0m�[0m networkSecurityGroup              = {
                      �[32m+�[0m�[0m id = "/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/mycrp-prd-dpml-network-rg/providers/Microsoft.Network/networkSecurityGroups/mycrp-prd-dpml-nsg001"
                    }
                  �[32m+�[0m�[0m privateEndpointNetworkPolicies    = "Enabled"
                  �[32m+�[0m�[0m privateLinkServiceNetworkPolicies = "Enabled"
                  �[32m+�[0m�[0m routeTable                        = {
                      �[32m+�[0m�[0m id = "/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/mycrp-prd-dpml-network-rg/providers/Microsoft.Network/routeTables/mycrp-prd-dpml-rt001"
                    }
                  �[32m+�[0m�[0m serviceEndpointPolicies           = []
                  �[32m+�[0m�[0m serviceEndpoints                  = []
                }
            }
        )
      �[32m+�[0m�[0m id                        = (known after apply)
      �[32m+�[0m�[0m ignore_casing             = false
      �[32m+�[0m�[0m ignore_missing_property   = true
      �[32m+�[0m�[0m name                      = "WebAppSubnet"
      �[32m+�[0m�[0m output                    = (known after apply)
      �[32m+�[0m�[0m parent_id                 = "/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/mycrp-prd-dpml-network-rg/providers/Microsoft.Network/virtualNetworks/mycrp-prd-dpml-vnet001"
      �[32m+�[0m�[0m removing_special_chars    = false
      �[32m+�[0m�[0m schema_validation_enabled = true
      �[32m+�[0m�[0m type                      = "Microsoft.Network/virtualNetworks/subnets@2022-07-01"
    }

�[1m  # azurerm_cognitive_deployment.cognitive_deployment_gpt_4o�[0m will be created
�[0m  �[32m+�[0m�[0m resource "azurerm_cognitive_deployment" "cognitive_deployment_gpt_4o" {
      �[32m+�[0m�[0m cognitive_account_id   = (known after apply)
      �[32m+�[0m�[0m id                     = (known after apply)
      �[32m+�[0m�[0m name                   = "gpt-4o"
      �[32m+�[0m�[0m version_upgrade_option = "OnceNewDefaultVersionAvailable"

      �[32m+�[0m�[0m model {
          �[32m+�[0m�[0m format  = "OpenAI"
          �[32m+�[0m�[0m name    = "gpt-4o"
          �[32m+�[0m�[0m version = "2024-05-13"
        }

      �[32m+�[0m�[0m scale {
          �[32m+�[0m�[0m capacity = 100
          �[32m+�[0m�[0m type     = "Standard"
        }
    }

�[1m  # azurerm_linux_web_app.linux_web_app�[0m will be created
�[0m  �[32m+�[0m�[0m resource "azurerm_linux_web_app" "linux_web_app" {
      �[32m+�[0m�[0m app_settings                                   = (known after apply)
      �[32m+�[0m�[0m client_affinity_enabled                        = false
      �[32m+�[0m�[0m client_certificate_enabled                     = false
      �[32m+�[0m�[0m client_certificate_mode                        = "Required"
      �[32m+�[0m�[0m custom_domain_verification_id                  = (sensitive value)
      �[32m+�[0m�[0m default_hostname                               = (known after apply)
      �[32m+�[0m�[0m enabled                                        = true
      �[32m+�[0m�[0m ftp_publish_basic_authentication_enabled       = false
      �[32m+�[0m�[0m hosting_environment_id                         = (known after apply)
      �[32m+�[0m�[0m https_only                                     = true
      �[32m+�[0m�[0m id                                             = (known after apply)
      �[32m+�[0m�[0m key_vault_reference_identity_id                = (known after apply)
      �[32m+�[0m�[0m kind                                           = (known after apply)
      �[32m+�[0m�[0m location                                       = "northeurope"
      �[32m+�[0m�[0m name                                           = "assis-dev-app001"
      �[32m+�[0m�[0m outbound_ip_address_list                       = (known after apply)
      �[32m+�[0m�[0m outbound_ip_addresses                          = (known after apply)
      �[32m+�[0m�[0m possible_outbound_ip_address_list              = (known after apply)
      �[32m+�[0m�[0m possible_outbound_ip_addresses                 = (known after apply)
      �[32m+�[0m�[0m public_network_access_enabled                  = true
      �[32m+�[0m�[0m resource_group_name                            = "assis-dev-bot-rg"
      �[32m+�[0m�[0m service_plan_id                                = (known after apply)
      �[32m+�[0m�[0m site_credential                                = (sensitive value)
      �[32m+�[0m�[0m tags                                           = {
          �[32m+�[0m�[0m "workload" = "assis"
        }
      �[32m+�[0m�[0m virtual_network_subnet_id                      = (known after apply)
      �[32m+�[0m�[0m webdeploy_publish_basic_authentication_enabled = false
      �[32m+�[0m�[0m zip_deploy_file                                = (known after apply)
        �[90m# (1 unchanged attribute hidden)�[0m�[0m

      �[32m+�[0m�[0m identity {
          �[32m+�[0m�[0m identity_ids = (known after apply)
          �[32m+�[0m�[0m principal_id = (known after apply)
          �[32m+�[0m�[0m tenant_id    = (known after apply)
          �[32m+�[0m�[0m type         = "UserAssigned"
        }

      �[32m+�[0m�[0m site_config {
          �[32m+�[0m�[0m always_on                               = true
          �[32m+�[0m�[0m app_command_line                        = "gunicorn --bind 0.0.0.0 --worker-class aiohttp.worker.GunicornWebWorker --timeout 600 app:APP"
          �[32m+�[0m�[0m container_registry_use_managed_identity = false
          �[32m+�[0m�[0m default_documents                       = (known after apply)
          �[32m+�[0m�[0m detailed_error_logging_enabled          = (known after apply)
          �[32m+�[0m�[0m ftps_state                              = "Disabled"
          �[32m+�[0m�[0m health_check_eviction_time_in_min       = (known after apply)
          �[32m+�[0m�[0m http2_enabled                           = true
          �[32m+�[0m�[0m ip_restriction_default_action           = "Allow"
          �[32m+�[0m�[0m linux_fx_version                        = (known after apply)
          �[32m+�[0m�[0m load_balancing_mode                     = "LeastRequests"
          �[32m+�[0m�[0m local_mysql_enabled                     = false
          �[32m+�[0m�[0m managed_pipeline_mode                   = "Integrated"
          �[32m+�[0m�[0m minimum_tls_version                     = "1.2"
          �[32m+�[0m�[0m remote_debugging_enabled                = false
          �[32m+�[0m�[0m remote_debugging_version                = "VS2022"
          �[32m+�[0m�[0m scm_ip_restriction_default_action       = "Allow"
          �[32m+�[0m�[0m scm_minimum_tls_version                 = "1.2"
          �[32m+�[0m�[0m scm_type                                = (known after apply)
          �[32m+�[0m�[0m scm_use_main_ip_restriction             = false
          �[32m+�[0m�[0m use_32_bit_worker                       = false
          �[32m+�[0m�[0m vnet_route_all_enabled                  = true
          �[32m+�[0m�[0m websockets_enabled                      = false
          �[32m+�[0m�[0m worker_count                            = 1

          �[32m+�[0m�[0m application_stack {
              �[32m+�[0m�[0m docker_registry_password = (sensitive value)
              �[32m+�[0m�[0m docker_registry_url      = (known after apply)
              �[32m+�[0m�[0m docker_registry_username = (known after apply)
              �[32m+�[0m�[0m python_version           = "3.11"
            }

          �[32m+�[0m�[0m cors {
              �[32m+�[0m�[0m allowed_origins     = [
                  �[32m+�[0m�[0m "https://botservice.hosting.portal.azure.net",
                  �[32m+�[0m�[0m "https://hosting.onecloud.azure-test.net",
                ]
              �[32m+�[0m�[0m support_credentials = true
            }
        }
    }

�[1m  # azurerm_monitor_diagnostic_setting.diagnostic_setting_linux_web_app�[0m will be created
�[0m  �[32m+�[0m�[0m resource "azurerm_monitor_diagnostic_setting" "diagnostic_setting_linux_web_app" {
      �[32m+�[0m�[0m id                             = (known after apply)
      �[32m+�[0m�[0m log_analytics_destination_type = (known after apply)
      �[32m+�[0m�[0m log_analytics_workspace_id     = "/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/DefaultResourceGroup-NEU/providers/Microsoft.OperationalInsights/workspaces/DefaultWorkspace-8f171ff9-2b5b-4f0f-aed5-7fa360a1d094-NEU"
      �[32m+�[0m�[0m name                           = "logAnalytics"
      �[32m+�[0m�[0m target_resource_id             = (known after apply)

      �[32m+�[0m�[0m enabled_log (known after apply)

      �[32m+�[0m�[0m log (known after apply)

      �[32m+�[0m�[0m metric (known after apply)
    }

�[1m  # azurerm_private_endpoint.linux_web_app_private_endpoint�[0m will be created
�[0m  �[32m+�[0m�[0m resource "azurerm_private_endpoint" "linux_web_app_private_endpoint" {
      �[32m+�[0m�[0m custom_dns_configs            = (known after apply)
      �[32m+�[0m�[0m custom_network_interface_name = "assis-dev-app001-nic"
      �[32m+�[0m�[0m id                            = (known after apply)
      �[32m+�[0m�[0m location                      = "northeurope"
      �[32m+�[0m�[0m name                          = "assis-dev-app001-pe"
      �[32m+�[0m�[0m network_interface             = (known after apply)
      �[32m+�[0m�[0m private_dns_zone_configs      = (known after apply)
      �[32m+�[0m�[0m resource_group_name           = "assis-dev-bot-rg"
      �[32m+�[0m�[0m subnet_id                     = (known after apply)
      �[32m+�[0m�[0m tags                          = {
          �[32m+�[0m�[0m "workload" = "assis"
        }

      �[32m+�[0m�[0m private_dns_zone_group {
          �[32m+�[0m�[0m id                   = (known after apply)
          �[32m+�[0m�[0m name                 = "assis-dev-app001-arecord"
          �[32m+�[0m�[0m private_dns_zone_ids = [
              �[32m+�[0m�[0m "/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/mycrp-prd-global-dns/providers/Microsoft.Network/privateDnsZones/privatelink.azurewebsites.net",
            ]
        }

      �[32m+�[0m�[0m private_service_connection {
          �[32m+�[0m�[0m is_manual_connection           = false
          �[32m+�[0m�[0m name                           = "assis-dev-app001-pe"
          �[32m+�[0m�[0m private_connection_resource_id = (known after apply)
          �[32m+�[0m�[0m private_ip_address             = (known after apply)
          �[32m+�[0m�[0m subresource_names              = [
              �[32m+�[0m�[0m "sites",
            ]
        }
    }

�[1m  # azurerm_role_assignment.uai_roleassignment_open_ai_contributor�[0m will be created
�[0m  �[32m+�[0m�[0m resource "azurerm_role_assignment" "uai_roleassignment_open_ai_contributor" {
      �[32m+�[0m�[0m description                      = "Required for accessing azure open ai from the web app"
      �[32m+�[0m�[0m id                               = (known after apply)
      �[32m+�[0m�[0m name                             = (known after apply)
      �[32m+�[0m�[0m principal_id                     = (known after apply)
      �[32m+�[0m�[0m principal_type                   = "ServicePrincipal"
      �[32m+�[0m�[0m role_definition_id               = (known after apply)
      �[32m+�[0m�[0m role_definition_name             = "Cognitive Services OpenAI Contributor"
      �[32m+�[0m�[0m scope                            = (known after apply)
      �[32m+�[0m�[0m skip_service_principal_aad_check = (known after apply)
    }

�[1m  # module.app_service_plan.data.azurerm_monitor_diagnostic_categories.diagnostic_categories_service_plan�[0m will be read during apply
  # (config refers to values not yet known)
�[0m �[36m<=�[0m�[0m data "azurerm_monitor_diagnostic_categories" "diagnostic_categories_service_plan" {
      �[32m+�[0m�[0m id                  = (known after apply)
      �[32m+�[0m�[0m log_category_groups = (known after apply)
      �[32m+�[0m�[0m log_category_types  = (known after apply)
      �[32m+�[0m�[0m logs                = (known after apply)
      �[32m+�[0m�[0m metrics             = (known after apply)
      �[32m+�[0m�[0m resource_id         = (known after apply)
    }

�[1m  # module.app_service_plan.azurerm_monitor_diagnostic_setting.diagnostic_setting_service_plan["0"]�[0m will be created
�[0m  �[32m+�[0m�[0m resource "azurerm_monitor_diagnostic_setting" "diagnostic_setting_service_plan" {
      �[32m+�[0m�[0m id                             = (known after apply)
      �[32m+�[0m�[0m log_analytics_destination_type = (known after apply)
      �[32m+�[0m�[0m log_analytics_workspace_id     = "/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/DefaultResourceGroup-NEU/providers/Microsoft.OperationalInsights/workspaces/DefaultWorkspace-8f171ff9-2b5b-4f0f-aed5-7fa360a1d094-NEU"
      �[32m+�[0m�[0m name                           = "applicationLogs-0"
      �[32m+�[0m�[0m target_resource_id             = (known after apply)

      �[32m+�[0m�[0m enabled_log (known after apply)

      �[32m+�[0m�[0m log (known after apply)

      �[32m+�[0m�[0m metric (known after apply)
    }

�[1m  # module.app_service_plan.azurerm_service_plan.service_plan�[0m will be created
�[0m  �[32m+�[0m�[0m resource "azurerm_service_plan" "service_plan" {
      �[32m+�[0m�[0m id                           = (known after apply)
      �[32m+�[0m�[0m kind                         = (known after apply)
      �[32m+�[0m�[0m location                     = "northeurope"
      �[32m+�[0m�[0m maximum_elastic_worker_count = (known after apply)
      �[32m+�[0m�[0m name                         = "assis-dev-asp001"
      �[32m+�[0m�[0m os_type                      = "Linux"
      �[32m+�[0m�[0m per_site_scaling_enabled     = false
      �[32m+�[0m�[0m reserved                     = (known after apply)
      �[32m+�[0m�[0m resource_group_name          = "assis-dev-bot-rg"
      �[32m+�[0m�[0m sku_name                     = "P0v3"
      �[32m+�[0m�[0m tags                         = {
          �[32m+�[0m�[0m "workload" = "assis"
        }
      �[32m+�[0m�[0m worker_count                 = 1
      �[32m+�[0m�[0m zone_balancing_enabled       = false
    }

�[1m  # module.application_insights.data.azurerm_monitor_diagnostic_categories.diagnostic_categories_application_insights�[0m will be read during apply
  # (config refers to values not yet known)
�[0m �[36m<=�[0m�[0m data "azurerm_monitor_diagnostic_categories" "diagnostic_categories_application_insights" {
      �[32m+�[0m�[0m id                  = (known after apply)
      �[32m+�[0m�[0m log_category_groups = (known after apply)
      �[32m+�[0m�[0m log_category_types  = (known after apply)
      �[32m+�[0m�[0m logs                = (known after apply)
      �[32m+�[0m�[0m metrics             = (known after apply)
      �[32m+�[0m�[0m resource_id         = (known after apply)
    }

�[1m  # module.application_insights.azurerm_application_insights.application_insights�[0m will be created
�[0m  �[32m+�[0m�[0m resource "azurerm_application_insights" "application_insights" {
      �[32m+�[0m�[0m app_id                                = (known after apply)
      �[32m+�[0m�[0m application_type                      = "web"
      �[32m+�[0m�[0m connection_string                     = (sensitive value)
      �[32m+�[0m�[0m daily_data_cap_in_gb                  = (known after apply)
      �[32m+�[0m�[0m daily_data_cap_notifications_disabled = false
      �[32m+�[0m�[0m disable_ip_masking                    = false
      �[32m+�[0m�[0m force_customer_storage_for_profiler   = false
      �[32m+�[0m�[0m id                                    = (known after apply)
      �[32m+�[0m�[0m instrumentation_key                   = (sensitive value)
      �[32m+�[0m�[0m internet_ingestion_enabled            = true
      �[32m+�[0m�[0m internet_query_enabled                = true
      �[32m+�[0m�[0m local_authentication_disabled         = false
      �[32m+�[0m�[0m location                              = "northeurope"
      �[32m+�[0m�[0m name                                  = "assis-dev-ai001"
      �[32m+�[0m�[0m resource_group_name                   = "assis-dev-bot-rg"
      �[32m+�[0m�[0m retention_in_days                     = 90
      �[32m+�[0m�[0m sampling_percentage                   = 100
      �[32m+�[0m�[0m tags                                  = {
          �[32m+�[0m�[0m "workload" = "assis"
        }
      �[32m+�[0m�[0m workspace_id                          = "/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/DefaultResourceGroup-NEU/providers/Microsoft.OperationalInsights/workspaces/DefaultWorkspace-8f171ff9-2b5b-4f0f-aed5-7fa360a1d094-NEU"
    }

�[1m  # module.application_insights.azurerm_monitor_diagnostic_setting.diagnostic_setting_application_insights["0"]�[0m will be created
�[0m  �[32m+�[0m�[0m resource "azurerm_monitor_diagnostic_setting" "diagnostic_setting_application_insights" {
      �[32m+�[0m�[0m id                             = (known after apply)
      �[32m+�[0m�[0m log_analytics_destination_type = (known after apply)
      �[32m+�[0m�[0m log_analytics_workspace_id     = "/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/DefaultResourceGroup-NEU/providers/Microsoft.OperationalInsights/workspaces/DefaultWorkspace-8f171ff9-2b5b-4f0f-aed5-7fa360a1d094-NEU"
      �[32m+�[0m�[0m name                           = "applicationLogs-0"
      �[32m+�[0m�[0m target_resource_id             = (known after apply)

      �[32m+�[0m�[0m enabled_log (known after apply)

      �[32m+�[0m�[0m log (known after apply)

      �[32m+�[0m�[0m metric (known after apply)
    }

�[1m  # module.azure_open_ai.data.azurerm_monitor_diagnostic_categories.diagnostic_categories_cognitive_account�[0m will be read during apply
  # (config refers to values not yet known)
�[0m �[36m<=�[0m�[0m data "azurerm_monitor_diagnostic_categories" "diagnostic_categories_cognitive_account" {
      �[32m+�[0m�[0m id                  = (known after apply)
      �[32m+�[0m�[0m log_category_groups = (known after apply)
      �[32m+�[0m�[0m log_category_types  = (known after apply)
      �[32m+�[0m�[0m logs                = (known after apply)
      �[32m+�[0m�[0m metrics             = (known after apply)
      �[32m+�[0m�[0m resource_id         = (known after apply)
    }

�[1m  # module.azure_open_ai.azurerm_cognitive_account.cognitive_account�[0m will be created
�[0m  �[32m+�[0m�[0m resource "azurerm_cognitive_account" "cognitive_account" {
      �[32m+�[0m�[0m custom_subdomain_name              = "assis-dev-aoai001"
      �[32m+�[0m�[0m dynamic_throttling_enabled         = false
      �[32m+�[0m�[0m endpoint                           = (known after apply)
      �[32m+�[0m�[0m fqdns                              = []
      �[32m+�[0m�[0m id                                 = (known after apply)
      �[32m+�[0m�[0m kind                               = "OpenAI"
      �[32m+�[0m�[0m local_auth_enabled                 = false
      �[32m+�[0m�[0m location                           = "swedencentral"
      �[32m+�[0m�[0m name                               = "assis-dev-aoai001"
      �[32m+�[0m�[0m outbound_network_access_restricted = true
      �[32m+�[0m�[0m primary_access_key                 = (sensitive value)
      �[32m+�[0m�[0m public_network_access_enabled      = false
      �[32m+�[0m�[0m resource_group_name                = "assis-dev-bot-rg"
      �[32m+�[0m�[0m secondary_access_key               = (sensitive value)
      �[32m+�[0m�[0m sku_name                           = "S0"
      �[32m+�[0m�[0m tags                               = {
          �[32m+�[0m�[0m "workload" = "assis"
        }

      �[32m+�[0m�[0m identity {
          �[32m+�[0m�[0m principal_id = (known after apply)
          �[32m+�[0m�[0m tenant_id    = (known after apply)
          �[32m+�[0m�[0m type         = "SystemAssigned"
        }

      �[32m+�[0m�[0m network_acls {
          �[32m+�[0m�[0m default_action = "Deny"
        }
    }

�[1m  # module.azure_open_ai.azurerm_monitor_diagnostic_setting.diagnostic_setting_cognitive_account["0"]�[0m will be created
�[0m  �[32m+�[0m�[0m resource "azurerm_monitor_diagnostic_setting" "diagnostic_setting_cognitive_account" {
      �[32m+�[0m�[0m id                             = (known after apply)
      �[32m+�[0m�[0m log_analytics_destination_type = (known after apply)
      �[32m+�[0m�[0m log_analytics_workspace_id     = "/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/DefaultResourceGroup-NEU/providers/Microsoft.OperationalInsights/workspaces/DefaultWorkspace-8f171ff9-2b5b-4f0f-aed5-7fa360a1d094-NEU"
      �[32m+�[0m�[0m name                           = "applicationLogs-0"
      �[32m+�[0m�[0m target_resource_id             = (known after apply)

      �[32m+�[0m�[0m enabled_log (known after apply)

      �[32m+�[0m�[0m log (known after apply)

      �[32m+�[0m�[0m metric (known after apply)
    }

�[1m  # module.azure_open_ai.azurerm_private_endpoint.private_endpoint_cognitive_account�[0m will be created
�[0m  �[32m+�[0m�[0m resource "azurerm_private_endpoint" "private_endpoint_cognitive_account" {
      �[32m+�[0m�[0m custom_dns_configs            = (known after apply)
      �[32m+�[0m�[0m custom_network_interface_name = "assis-dev-aoai001-account-nic"
      �[32m+�[0m�[0m id                            = (known after apply)
      �[32m+�[0m�[0m location                      = "northeurope"
      �[32m+�[0m�[0m name                          = "assis-dev-aoai001-account-pe"
      �[32m+�[0m�[0m network_interface             = (known after apply)
      �[32m+�[0m�[0m private_dns_zone_configs      = (known after apply)
      �[32m+�[0m�[0m resource_group_name           = "assis-dev-bot-rg"
      �[32m+�[0m�[0m subnet_id                     = (known after apply)
      �[32m+�[0m�[0m tags                          = {
          �[32m+�[0m�[0m "workload" = "assis"
        }

      �[32m+�[0m�[0m private_dns_zone_group {
          �[32m+�[0m�[0m id                   = (known after apply)
          �[32m+�[0m�[0m name                 = "assis-dev-aoai001-arecord"
          �[32m+�[0m�[0m private_dns_zone_ids = [
              �[32m+�[0m�[0m "/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/mycrp-prd-global-dns/providers/Microsoft.Network/privateDnsZones/privatelink.openai.azure.com",
            ]
        }

      �[32m+�[0m�[0m private_service_connection {
          �[32m+�[0m�[0m is_manual_connection           = false
          �[32m+�[0m�[0m name                           = "assis-dev-aoai001-account-svc"
          �[32m+�[0m�[0m private_connection_resource_id = (known after apply)
          �[32m+�[0m�[0m private_ip_address             = (known after apply)
          �[32m+�[0m�[0m subresource_names              = [
              �[32m+�[0m�[0m "account",
            ]
        }
    }

�[1m  # module.azure_open_ai.time_sleep.sleep_connectivity�[0m will be created
�[0m  �[32m+�[0m�[0m resource "time_sleep" "sleep_connectivity" {
      �[32m+�[0m�[0m create_duration = "0s"
      �[32m+�[0m�[0m id              = (known after apply)
    }

�[1m  # module.bot_service.data.azurerm_application_insights.application_insights�[0m will be read during apply
  # (config refers to values not yet known)
�[0m �[36m<=�[0m�[0m data "azurerm_application_insights" "application_insights" {
      �[32m+�[0m�[0m app_id              = (known after apply)
      �[32m+�[0m�[0m application_type    = (known after apply)
      �[32m+�[0m�[0m connection_string   = (sensitive value)
      �[32m+�[0m�[0m id                  = (known after apply)
      �[32m+�[0m�[0m instrumentation_key = (known after apply)
      �[32m+�[0m�[0m location            = (known after apply)
      �[32m+�[0m�[0m name                = (known after apply)
      �[32m+�[0m�[0m resource_group_name = (known after apply)
      �[32m+�[0m�[0m retention_in_days   = (known after apply)
      �[32m+�[0m�[0m tags                = (known after apply)
      �[32m+�[0m�[0m workspace_id        = (known after apply)
    }

�[1m  # module.bot_service.data.azurerm_monitor_diagnostic_categories.diagnostic_categories_bot_service_azure_bot�[0m will be read during apply
  # (config refers to values not yet known)
�[0m �[36m<=�[0m�[0m data "azurerm_monitor_diagnostic_categories" "diagnostic_categories_bot_service_azure_bot" {
      �[32m+�[0m�[0m id                  = (known after apply)
      �[32m+�[0m�[0m log_category_groups = (known after apply)
      �[32m+�[0m�[0m log_category_types  = (known after apply)
      �[32m+�[0m�[0m logs                = (known after apply)
      �[32m+�[0m�[0m metrics             = (known after apply)
      �[32m+�[0m�[0m resource_id         = (known after apply)
    }

�[1m  # module.bot_service.azurerm_application_insights_api_key.application_insights_api_key�[0m will be created
�[0m  �[32m+�[0m�[0m resource "azurerm_application_insights_api_key" "application_insights_api_key" {
      �[32m+�[0m�[0m api_key                 = (sensitive value)
      �[32m+�[0m�[0m application_insights_id = (known after apply)
      �[32m+�[0m�[0m id                      = (known after apply)
      �[32m+�[0m�[0m name                    = "appi-key-bot-framework-assis-dev-bot001"
      �[32m+�[0m�[0m read_permissions        = [
          �[32m+�[0m�[0m "aggregate",
          �[32m+�[0m�[0m "api",
          �[32m+�[0m�[0m "draft",
          �[32m+�[0m�[0m "extendqueries",
          �[32m+�[0m�[0m "search",
        ]
    }

�[1m  # module.bot_service.azurerm_bot_service_azure_bot.bot_service_azure_bot�[0m will be created
�[0m  �[32m+�[0m�[0m resource "azurerm_bot_service_azure_bot" "bot_service_azure_bot" {
      �[32m+�[0m�[0m developer_app_insights_api_key        = (sensitive value)
      �[32m+�[0m�[0m developer_app_insights_application_id = (known after apply)
      �[32m+�[0m�[0m developer_app_insights_key            = (known after apply)
      �[32m+�[0m�[0m display_name                          = "Azure Bot Service - Assis Dev Bot001"
      �[32m+�[0m�[0m endpoint                              = (known after apply)
      �[32m+�[0m�[0m icon_url                              = "https://docs.botframework.com/static/devportal/client/images/bot-framework-default.png"
      �[32m+�[0m�[0m id                                    = (known after apply)
      �[32m+�[0m�[0m local_authentication_enabled          = false
      �[32m+�[0m�[0m location                              = "global"
      �[32m+�[0m�[0m luis_app_ids                          = []
      �[32m+�[0m�[0m microsoft_app_id                      = (known after apply)
      �[32m+�[0m�[0m microsoft_app_msi_id                  = (known after apply)
      �[32m+�[0m�[0m microsoft_app_tenant_id               = (known after apply)
      �[32m+�[0m�[0m microsoft_app_type                    = "UserAssignedMSI"
      �[32m+�[0m�[0m name                                  = "assis-dev-bot001"
      �[32m+�[0m�[0m public_network_access_enabled         = true
      �[32m+�[0m�[0m resource_group_name                   = "assis-dev-bot-rg"
      �[32m+�[0m�[0m sku                                   = "S1"
      �[32m+�[0m�[0m streaming_endpoint_enabled            = false
      �[32m+�[0m�[0m tags                                  = {
          �[32m+�[0m�[0m "workload" = "assis"
        }
    }

�[1m  # module.bot_service.azurerm_monitor_diagnostic_setting.diagnostic_setting_bot_service_azure_bot["0"]�[0m will be created
�[0m  �[32m+�[0m�[0m resource "azurerm_monitor_diagnostic_setting" "diagnostic_setting_bot_service_azure_bot" {
      �[32m+�[0m�[0m id                             = (known after apply)
      �[32m+�[0m�[0m log_analytics_destination_type = (known after apply)
      �[32m+�[0m�[0m log_analytics_workspace_id     = "/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/DefaultResourceGroup-NEU/providers/Microsoft.OperationalInsights/workspaces/DefaultWorkspace-8f171ff9-2b5b-4f0f-aed5-7fa360a1d094-NEU"
      �[32m+�[0m�[0m name                           = "applicationLogs-0"
      �[32m+�[0m�[0m target_resource_id             = (known after apply)

      �[32m+�[0m�[0m enabled_log (known after apply)

      �[32m+�[0m�[0m log (known after apply)

      �[32m+�[0m�[0m metric (known after apply)
    }

�[1m  # module.bot_service.azurerm_private_endpoint.bot_service_azure_bot_private_endpoint_bot�[0m will be created
�[0m  �[32m+�[0m�[0m resource "azurerm_private_endpoint" "bot_service_azure_bot_private_endpoint_bot" {
      �[32m+�[0m�[0m custom_dns_configs            = (known after apply)
      �[32m+�[0m�[0m custom_network_interface_name = "assis-dev-bot001-bot-nic"
      �[32m+�[0m�[0m id                            = (known after apply)
      �[32m+�[0m�[0m location                      = "northeurope"
      �[32m+�[0m�[0m name                          = "assis-dev-bot001-bot-pe"
      �[32m+�[0m�[0m network_interface             = (known after apply)
      �[32m+�[0m�[0m private_dns_zone_configs      = (known after apply)
      �[32m+�[0m�[0m resource_group_name           = "assis-dev-bot-rg"
      �[32m+�[0m�[0m subnet_id                     = (known after apply)
      �[32m+�[0m�[0m tags                          = {
          �[32m+�[0m�[0m "workload" = "assis"
        }

      �[32m+�[0m�[0m private_dns_zone_group {
          �[32m+�[0m�[0m id                   = (known after apply)
          �[32m+�[0m�[0m name                 = "assis-dev-bot001-arecord"
          �[32m+�[0m�[0m private_dns_zone_ids = [
              �[32m+�[0m�[0m "/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/mycrp-prd-global-dns/providers/Microsoft.Network/privateDnsZones/privatelink.directline.botframework.com",
            ]
        }

      �[32m+�[0m�[0m private_service_connection {
          �[32m+�[0m�[0m is_manual_connection           = false
          �[32m+�[0m�[0m name                           = "assis-dev-bot001-bot-svc"
          �[32m+�[0m�[0m private_connection_resource_id = (known after apply)
          �[32m+�[0m�[0m private_ip_address             = (known after apply)
          �[32m+�[0m�[0m subresource_names              = [
              �[32m+�[0m�[0m "Bot",
            ]
        }
    }

�[1m  # module.bot_service.azurerm_private_endpoint.bot_service_azure_bot_private_endpoint_token�[0m will be created
�[0m  �[32m+�[0m�[0m resource "azurerm_private_endpoint" "bot_service_azure_bot_private_endpoint_token" {
      �[32m+�[0m�[0m custom_dns_configs            = (known after apply)
      �[32m+�[0m�[0m custom_network_interface_name = "assis-dev-bot001-token-nic"
      �[32m+�[0m�[0m id                            = (known after apply)
      �[32m+�[0m�[0m location                      = "northeurope"
      �[32m+�[0m�[0m name                          = "assis-dev-bot001-token-pe"
      �[32m+�[0m�[0m network_interface             = (known after apply)
      �[32m+�[0m�[0m private_dns_zone_configs      = (known after apply)
      �[32m+�[0m�[0m resource_group_name           = "assis-dev-bot-rg"
      �[32m+�[0m�[0m subnet_id                     = (known after apply)
      �[32m+�[0m�[0m tags                          = {
          �[32m+�[0m�[0m "workload" = "assis"
        }

      �[32m+�[0m�[0m private_dns_zone_group {
          �[32m+�[0m�[0m id                   = (known after apply)
          �[32m+�[0m�[0m name                 = "assis-dev-bot001-arecord"
          �[32m+�[0m�[0m private_dns_zone_ids = [
              �[32m+�[0m�[0m "/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/mycrp-prd-global-dns/providers/Microsoft.Network/privateDnsZones/privatelink.token.botframework.com",
            ]
        }

      �[32m+�[0m�[0m private_service_connection {
          �[32m+�[0m�[0m is_manual_connection           = false
          �[32m+�[0m�[0m name                           = "assis-dev-bot001-token-svc"
          �[32m+�[0m�[0m private_connection_resource_id = (known after apply)
          �[32m+�[0m�[0m private_ip_address             = (known after apply)
          �[32m+�[0m�[0m subresource_names              = [
              �[32m+�[0m�[0m "Token",
            ]
        }
    }

�[1m  # module.bot_service.time_sleep.sleep_connectivity�[0m will be created
�[0m  �[32m+�[0m�[0m resource "time_sleep" "sleep_connectivity" {
      �[32m+�[0m�[0m create_duration = "120s"
      �[32m+�[0m�[0m id              = (known after apply)
    }

�[1m  # module.key_vault.data.azurerm_monitor_diagnostic_categories.diagnostic_categories_key_vault�[0m will be read during apply
  # (config refers to values not yet known)
�[0m �[36m<=�[0m�[0m data "azurerm_monitor_diagnostic_categories" "diagnostic_categories_key_vault" {
      �[32m+�[0m�[0m id                  = (known after apply)
      �[32m+�[0m�[0m log_category_groups = (known after apply)
      �[32m+�[0m�[0m log_category_types  = (known after apply)
      �[32m+�[0m�[0m logs                = (known after apply)
      �[32m+�[0m�[0m metrics             = (known after apply)
      �[32m+�[0m�[0m resource_id         = (known after apply)
    }

�[1m  # module.key_vault.azurerm_key_vault.key_vault�[0m will be created
�[0m  �[32m+�[0m�[0m resource "azurerm_key_vault" "key_vault" {
      �[32m+�[0m�[0m access_policy                   = []
      �[32m+�[0m�[0m enable_rbac_authorization       = true
      �[32m+�[0m�[0m enabled_for_deployment          = false
      �[32m+�[0m�[0m enabled_for_disk_encryption     = false
      �[32m+�[0m�[0m enabled_for_template_deployment = false
      �[32m+�[0m�[0m id                              = (known after apply)
      �[32m+�[0m�[0m location                        = "northeurope"
      �[32m+�[0m�[0m name                            = "assis-dev-kv001"
      �[32m+�[0m�[0m public_network_access_enabled   = false
      �[32m+�[0m�[0m purge_protection_enabled        = true
      �[32m+�[0m�[0m resource_group_name             = "assis-dev-bot-rg"
      �[32m+�[0m�[0m sku_name                        = "standard"
      �[32m+�[0m�[0m soft_delete_retention_days      = 7
      �[32m+�[0m�[0m tags                            = {
          �[32m+�[0m�[0m "workload" = "assis"
        }
      �[32m+�[0m�[0m tenant_id                       = "3556be79-2979-4b19-a1af-4dd4e6d9ed7e"
      �[32m+�[0m�[0m vault_uri                       = (known after apply)

      �[32m+�[0m�[0m contact (known after apply)

      �[32m+�[0m�[0m network_acls {
          �[32m+�[0m�[0m bypass         = "AzureServices"
          �[32m+�[0m�[0m default_action = "Deny"
        }
    }

�[1m  # module.key_vault.azurerm_monitor_diagnostic_setting.diagnostic_setting_key_vault["0"]�[0m will be created
�[0m  �[32m+�[0m�[0m resource "azurerm_monitor_diagnostic_setting" "diagnostic_setting_key_vault" {
      �[32m+�[0m�[0m id                             = (known after apply)
      �[32m+�[0m�[0m log_analytics_destination_type = (known after apply)
      �[32m+�[0m�[0m log_analytics_workspace_id     = "/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/DefaultResourceGroup-NEU/providers/Microsoft.OperationalInsights/workspaces/DefaultWorkspace-8f171ff9-2b5b-4f0f-aed5-7fa360a1d094-NEU"
      �[32m+�[0m�[0m name                           = "applicationLogs-0"
      �[32m+�[0m�[0m target_resource_id             = (known after apply)

      �[32m+�[0m�[0m enabled_log (known after apply)

      �[32m+�[0m�[0m log (known after apply)

      �[32m+�[0m�[0m metric (known after apply)
    }

�[1m  # module.key_vault.azurerm_private_endpoint.private_endpoint_cognitive_account_vault�[0m will be created
�[0m  �[32m+�[0m�[0m resource "azurerm_private_endpoint" "private_endpoint_cognitive_account_vault" {
      �[32m+�[0m�[0m custom_dns_configs            = (known after apply)
      �[32m+�[0m�[0m custom_network_interface_name = "assis-dev-kv001-vault-nic"
      �[32m+�[0m�[0m id                            = (known after apply)
      �[32m+�[0m�[0m location                      = "northeurope"
      �[32m+�[0m�[0m name                          = "assis-dev-kv001-vault-pe"
      �[32m+�[0m�[0m network_interface             = (known after apply)
      �[32m+�[0m�[0m private_dns_zone_configs      = (known after apply)
      �[32m+�[0m�[0m resource_group_name           = "assis-dev-bot-rg"
      �[32m+�[0m�[0m subnet_id                     = (known after apply)
      �[32m+�[0m�[0m tags                          = {
          �[32m+�[0m�[0m "workload" = "assis"
        }

      �[32m+�[0m�[0m private_dns_zone_group {
          �[32m+�[0m�[0m id                   = (known after apply)
          �[32m+�[0m�[0m name                 = "assis-dev-kv001-arecord"
          �[32m+�[0m�[0m private_dns_zone_ids = [
              �[32m+�[0m�[0m "/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/mycrp-prd-global-dns/providers/Microsoft.Network/privateDnsZones/privatelink.vaultcore.azure.net",
            ]
        }

      �[32m+�[0m�[0m private_service_connection {
          �[32m+�[0m�[0m is_manual_connection           = false
          �[32m+�[0m�[0m name                           = "assis-dev-kv001-vault-svc"
          �[32m+�[0m�[0m private_connection_resource_id = (known after apply)
          �[32m+�[0m�[0m private_ip_address             = (known after apply)
          �[32m+�[0m�[0m subresource_names              = [
              �[32m+�[0m�[0m "vault",
            ]
        }
    }

�[1m  # module.key_vault.azurerm_role_assignment.current_roleassignment_key_vault�[0m will be created
�[0m  �[32m+�[0m�[0m resource "azurerm_role_assignment" "current_roleassignment_key_vault" {
      �[32m+�[0m�[0m id                               = (known after apply)
      �[32m+�[0m�[0m name                             = (known after apply)
      �[32m+�[0m�[0m principal_id                     = "e9f8a9d5-2b4d-4d65-85e3-dcb6ef4988be"
      �[32m+�[0m�[0m principal_type                   = (known after apply)
      �[32m+�[0m�[0m role_definition_id               = (known after apply)
      �[32m+�[0m�[0m role_definition_name             = "Key Vault Administrator"
      �[32m+�[0m�[0m scope                            = (known after apply)
      �[32m+�[0m�[0m skip_service_principal_aad_check = (known after apply)
    }

�[1m  # module.key_vault.time_sleep.sleep_connectivity�[0m will be created
�[0m  �[32m+�[0m�[0m resource "time_sleep" "sleep_connectivity" {
      �[32m+�[0m�[0m create_duration = "120s"
      �[32m+�[0m�[0m id              = (known after apply)
    }

�[1m  # module.user_assigned_identity.azurerm_user_assigned_identity.user_assigned_identity�[0m will be created
�[0m  �[32m+�[0m�[0m resource "azurerm_user_assigned_identity" "user_assigned_identity" {
      �[32m+�[0m�[0m client_id           = (known after apply)
      �[32m+�[0m�[0m id                  = (known after apply)
      �[32m+�[0m�[0m location            = "northeurope"
      �[32m+�[0m�[0m name                = "assis-dev-uai001"
      �[32m+�[0m�[0m principal_id        = (known after apply)
      �[32m+�[0m�[0m resource_group_name = "assis-dev-bot-rg"
      �[32m+�[0m�[0m tags                = {
          �[32m+�[0m�[0m "workload" = "assis"
        }
      �[32m+�[0m�[0m tenant_id           = (known after apply)
    }

�[1mPlan:�[0m 27 to add, 0 to change, 0 to destroy.
�[0m�[90m
─────────────────────────────────────────────────────────────────────────────�[0m

Note: You didn't use the -out option to save this plan, so Terraform can't
guarantee to take exactly these actions if you run "terraform apply" now.

Copy link

Terraform Lint Results

  • Terraform Version 📎1.9.5
  • Working Directory 📂./code/infra
  • Terraform Format and Style 🖌success

Copy link

Terraform Validation & Plan Results

  • Terraform Version 📎1.9.5
  • Working Directory 📂./code/infra
  • Terraform Initialization ⚙️success
  • Terraform Validation 🤖success
  • Terraform Plan 📖success
Show Plan

terraform
�[0m�[1mdata.local_file.file_system_prompt: Reading...�[0m�[0m
�[0m�[1mdata.local_file.file_system_prompt: Read complete after 0s [id=ba88ebfa39219c2d2f9e8c3f409a4de4d67ae958]�[0m
�[0m�[1mmodule.azure_open_ai.data.azurerm_client_config.current: Reading...�[0m�[0m
�[0m�[1mazurerm_resource_group.resource_group: Refreshing state... [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg]�[0m
�[0m�[1mdata.azurerm_route_table.route_table: Reading...�[0m�[0m
�[0m�[1mdata.azurerm_virtual_network.virtual_network: Reading...�[0m�[0m
�[0m�[1mmodule.azure_open_ai.data.azurerm_client_config.current: Read complete after 0s [id=Y2xpZW50Q29uZmlncy9jbGllbnRJZD1iYWFhNzg4NS05MGQ5LTQ5YTYtYmZmMC1jMTJlYzczOGJmOWI7b2JqZWN0SWQ9ZTlmOGE5ZDUtMmI0ZC00ZDY1LTg1ZTMtZGNiNmVmNDk4OGJlO3N1YnNjcmlwdGlvbklkPThmMTcxZmY5LTJiNWItNGYwZi1hZWQ1LTdmYTM2MGExZDA5NDt0ZW5hbnRJZD0zNTU2YmU3OS0yOTc5LTRiMTktYTFhZi00ZGQ0ZTZkOWVkN2U=]�[0m
�[0m�[1mmodule.key_vault.data.azurerm_client_config.current: Reading...�[0m�[0m
�[0m�[1mdata.azurerm_network_security_group.network_security_group: Reading...�[0m�[0m
�[0m�[1mdata.azurerm_log_analytics_workspace.log_analytics_workspace: Reading...�[0m�[0m
�[0m�[1mmodule.key_vault.data.azurerm_client_config.current: Read complete after 0s [id=Y2xpZW50Q29uZmlncy9jbGllbnRJZD1iYWFhNzg4NS05MGQ5LTQ5YTYtYmZmMC1jMTJlYzczOGJmOWI7b2JqZWN0SWQ9ZTlmOGE5ZDUtMmI0ZC00ZDY1LTg1ZTMtZGNiNmVmNDk4OGJlO3N1YnNjcmlwdGlvbklkPThmMTcxZmY5LTJiNWItNGYwZi1hZWQ1LTdmYTM2MGExZDA5NDt0ZW5hbnRJZD0zNTU2YmU3OS0yOTc5LTRiMTktYTFhZi00ZGQ0ZTZkOWVkN2U=]�[0m
�[0m�[1mmodule.key_vault.azurerm_key_vault.key_vault: Refreshing state... [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.KeyVault/vaults/assis-dev-kv001]�[0m
�[0m�[1mmodule.app_service_plan.azurerm_service_plan.service_plan: Refreshing state... [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.Web/serverFarms/assis-dev-asp001]�[0m
�[0m�[1mmodule.user_assigned_identity.azurerm_user_assigned_identity.user_assigned_identity: Refreshing state... [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/assis-dev-uai001]�[0m
�[0m�[1mmodule.application_insights.azurerm_application_insights.application_insights: Refreshing state... [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.Insights/components/assis-dev-ai001]�[0m
�[0m�[1mmodule.azure_open_ai.azurerm_cognitive_account.cognitive_account: Refreshing state... [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.CognitiveServices/accounts/assis-dev-aoai001]�[0m
�[0m�[1mdata.azurerm_route_table.route_table: Read complete after 1s [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/mycrp-prd-dpml-network-rg/providers/Microsoft.Network/routeTables/mycrp-prd-dpml-rt001]�[0m
�[0m�[1mdata.azurerm_virtual_network.virtual_network: Read complete after 1s [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/mycrp-prd-dpml-network-rg/providers/Microsoft.Network/virtualNetworks/mycrp-prd-dpml-vnet001]�[0m
�[0m�[1mdata.azurerm_log_analytics_workspace.log_analytics_workspace: Read complete after 1s [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/DefaultResourceGroup-NEU/providers/Microsoft.OperationalInsights/workspaces/DefaultWorkspace-8f171ff9-2b5b-4f0f-aed5-7fa360a1d094-NEU]�[0m
�[0m�[1mdata.azurerm_network_security_group.network_security_group: Read complete after 1s [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/mycrp-prd-dpml-network-rg/providers/Microsoft.Network/networkSecurityGroups/mycrp-prd-dpml-nsg001]�[0m
�[0m�[1mazapi_resource.subnet_web_app: Refreshing state... [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/mycrp-prd-dpml-network-rg/providers/Microsoft.Network/virtualNetworks/mycrp-prd-dpml-vnet001/subnets/WebAppSubnet]�[0m
�[0m�[1mmodule.azure_open_ai.data.azurerm_monitor_diagnostic_categories.diagnostic_categories_cognitive_account: Reading...�[0m�[0m
�[0m�[1mazurerm_role_assignment.uai_roleassignment_open_ai_contributor: Refreshing state... [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.CognitiveServices/accounts/assis-dev-aoai001/providers/Microsoft.Authorization/roleAssignments/bcb58f58-bce2-3b5f-3165-da53950a6c0e]�[0m
�[0m�[1mazurerm_cognitive_deployment.cognitive_deployment_gpt_4o: Refreshing state... [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.CognitiveServices/accounts/assis-dev-aoai001/deployments/gpt-4o]�[0m
�[0m�[1mmodule.application_insights.data.azurerm_monitor_diagnostic_categories.diagnostic_categories_application_insights: Reading...�[0m�[0m
�[0m�[1mmodule.bot_service.data.azurerm_application_insights.application_insights: Reading...�[0m�[0m
�[0m�[1mmodule.app_service_plan.data.azurerm_monitor_diagnostic_categories.diagnostic_categories_service_plan: Reading...�[0m�[0m
�[0m�[1mmodule.application_insights.data.azurerm_monitor_diagnostic_categories.diagnostic_categories_application_insights: Read complete after 1s [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.Insights/components/assis-dev-ai001]�[0m
�[0m�[1mmodule.application_insights.azurerm_monitor_diagnostic_setting.diagnostic_setting_application_insights["0"]: Refreshing state... [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.Insights/components/assis-dev-ai001|applicationLogs-0]�[0m
�[0m�[1mmodule.bot_service.data.azurerm_application_insights.application_insights: Read complete after 1s [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.Insights/components/assis-dev-ai001]�[0m
�[0m�[1mmodule.bot_service.azurerm_application_insights_api_key.application_insights_api_key: Refreshing state... [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.Insights/components/assis-dev-ai001/apiKeys/543e1afd-e727-4975-b76d-6653294e4510]�[0m
�[0m�[1mmodule.app_service_plan.data.azurerm_monitor_diagnostic_categories.diagnostic_categories_service_plan: Read complete after 1s [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.Web/serverFarms/assis-dev-asp001]�[0m
�[0m�[1mmodule.app_service_plan.azurerm_monitor_diagnostic_setting.diagnostic_setting_service_plan["0"]: Refreshing state... [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.Web/serverFarms/assis-dev-asp001|applicationLogs-0]�[0m
�[0m�[1mmodule.azure_open_ai.data.azurerm_monitor_diagnostic_categories.diagnostic_categories_cognitive_account: Read complete after 1s [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.CognitiveServices/accounts/assis-dev-aoai001]�[0m
�[0m�[1mmodule.azure_open_ai.azurerm_monitor_diagnostic_setting.diagnostic_setting_cognitive_account["0"]: Refreshing state... [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.CognitiveServices/accounts/assis-dev-aoai001|applicationLogs-0]�[0m
�[0m�[1mmodule.key_vault.data.azurerm_monitor_diagnostic_categories.diagnostic_categories_key_vault: Reading...�[0m�[0m
�[0m�[1mmodule.key_vault.azurerm_role_assignment.current_roleassignment_key_vault: Refreshing state... [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.KeyVault/vaults/assis-dev-kv001/providers/Microsoft.Authorization/roleAssignments/e753ef66-61ac-20c4-e70b-228f2220c752]�[0m
�[0m�[1mmodule.key_vault.data.azurerm_monitor_diagnostic_categories.diagnostic_categories_key_vault: Read complete after 0s [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.KeyVault/vaults/assis-dev-kv001]�[0m
�[0m�[1mmodule.key_vault.azurerm_monitor_diagnostic_setting.diagnostic_setting_key_vault["0"]: Refreshing state... [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.KeyVault/vaults/assis-dev-kv001|applicationLogs-0]�[0m
�[0m�[1mazapi_resource.subnet_private_endpoints: Refreshing state... [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/mycrp-prd-dpml-network-rg/providers/Microsoft.Network/virtualNetworks/mycrp-prd-dpml-vnet001/subnets/PrivateEndpointSubnet]�[0m
�[0m�[1mazurerm_linux_web_app.linux_web_app: Refreshing state... [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.Web/sites/assis-dev-app001]�[0m
�[0m�[1mmodule.azure_open_ai.azurerm_private_endpoint.private_endpoint_cognitive_account: Refreshing state... [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.Network/privateEndpoints/assis-dev-aoai001-account-pe]�[0m
�[0m�[1mmodule.key_vault.azurerm_private_endpoint.private_endpoint_cognitive_account_vault: Refreshing state... [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.Network/privateEndpoints/assis-dev-kv001-vault-pe]�[0m
�[0m�[1mmodule.key_vault.time_sleep.sleep_connectivity: Refreshing state... [id=2024-08-26T07:55:57Z]�[0m
�[0m�[1mmodule.azure_open_ai.time_sleep.sleep_connectivity: Refreshing state... [id=2024-08-26T07:54:10Z]�[0m
�[0m�[1mazurerm_private_endpoint.linux_web_app_private_endpoint: Refreshing state... [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.Network/privateEndpoints/assis-dev-app001-pe]�[0m
�[0m�[1mmodule.bot_service.azurerm_bot_service_azure_bot.bot_service_azure_bot: Refreshing state... [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.BotService/botServices/assis-dev-bot001]�[0m
�[0m�[1mazurerm_monitor_diagnostic_setting.diagnostic_setting_linux_web_app: Refreshing state... [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.Web/sites/assis-dev-app001|logAnalytics]�[0m
�[0m�[1mmodule.bot_service.data.azurerm_monitor_diagnostic_categories.diagnostic_categories_bot_service_azure_bot: Reading...�[0m�[0m
�[0m�[1mmodule.bot_service.azurerm_private_endpoint.bot_service_azure_bot_private_endpoint_token: Refreshing state... [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.Network/privateEndpoints/assis-dev-bot001-token-pe]�[0m
�[0m�[1mmodule.bot_service.azurerm_private_endpoint.bot_service_azure_bot_private_endpoint_bot: Refreshing state... [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.Network/privateEndpoints/assis-dev-bot001-bot-pe]�[0m
�[0m�[1mmodule.bot_service.data.azurerm_monitor_diagnostic_categories.diagnostic_categories_bot_service_azure_bot: Read complete after 1s [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.BotService/botServices/assis-dev-bot001]�[0m
�[0m�[1mmodule.bot_service.azurerm_monitor_diagnostic_setting.diagnostic_setting_bot_service_azure_bot["0"]: Refreshing state... [id=/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.BotService/botServices/assis-dev-bot001|applicationLogs-0]�[0m
�[0m�[1mmodule.bot_service.time_sleep.sleep_connectivity: Refreshing state... [id=2024-08-26T07:57:20Z]�[0m

Terraform used the selected providers to generate the following execution
plan. Resource actions are indicated with the following symbols:
  �[33m~�[0m update in-place�[0m
 �[36m<=�[0m read (data resources)�[0m

Terraform will perform the following actions:

�[1m  # data.azurerm_monitor_diagnostic_categories.diagnostic_categories_linux_web_app�[0m will be read during apply
  # (depends on a resource or a module with changes pending)
�[0m �[36m<=�[0m�[0m data "azurerm_monitor_diagnostic_categories" "diagnostic_categories_linux_web_app" {
      �[32m+�[0m�[0m id                  = (known after apply)
      �[32m+�[0m�[0m log_category_groups = (known after apply)
      �[32m+�[0m�[0m log_category_types  = (known after apply)
      �[32m+�[0m�[0m logs                = (known after apply)
      �[32m+�[0m�[0m metrics             = (known after apply)
      �[32m+�[0m�[0m resource_id         = "/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.Web/sites/assis-dev-app001"
    }

�[1m  # azurerm_linux_web_app.linux_web_app�[0m will be updated in-place
�[0m  �[33m~�[0m�[0m resource "azurerm_linux_web_app" "linux_web_app" {
      �[33m~�[0m�[0m app_settings                                   = {
          �[33m~�[0m�[0m "AZURE_OPENAI_SYSTEM_PROMPT"                 = <<-EOT
                You are a world-class assistant who tells jokes.
            EOT
          �[31m-�[0m�[0m "DEBUG"                                      = "true" �[90m-> null�[0m�[0m
            �[90m# (14 unchanged elements hidden)�[0m�[0m
        }
        id                                             = "/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.Web/sites/assis-dev-app001"
        name                                           = "assis-dev-app001"
        tags                                           = {
            "workload" = "assis"
        }
        �[90m# (24 unchanged attributes hidden)�[0m�[0m

        �[90m# (2 unchanged blocks hidden)�[0m�[0m
    }

�[1m  # azurerm_monitor_diagnostic_setting.diagnostic_setting_linux_web_app�[0m will be updated in-place
�[0m  �[33m~�[0m�[0m resource "azurerm_monitor_diagnostic_setting" "diagnostic_setting_linux_web_app" {
        id                             = "/subscriptions/8f171ff9-2b5b-4f0f-aed5-7fa360a1d094/resourceGroups/assis-dev-bot-rg/providers/Microsoft.Web/sites/assis-dev-app001|logAnalytics"
        name                           = "logAnalytics"
        �[90m# (5 unchanged attributes hidden)�[0m�[0m

      �[33m~�[0m�[0m metric {
          �[32m+�[0m�[0m eventhub_authorization_rule_id = (known after apply)
          �[32m+�[0m�[0m eventhub_name                  = (known after apply)
          �[32m+�[0m�[0m id                             = (known after apply)
          �[32m+�[0m�[0m log_analytics_destination_type = (known after apply)
          �[32m+�[0m�[0m log_analytics_workspace_id     = (known after apply)
          �[32m+�[0m�[0m name                           = (known after apply)
          �[32m+�[0m�[0m partner_solution_id            = (known after apply)
          �[32m+�[0m�[0m storage_account_id             = (known after apply)
          �[32m+�[0m�[0m target_resource_id             = (known after apply)
        } -> (known after apply)

        �[90m# (4 unchanged blocks hidden)�[0m�[0m
    }

�[1mPlan:�[0m 0 to add, 2 to change, 0 to destroy.
�[0m�[90m
─────────────────────────────────────────────────────────────────────────────�[0m

Note: You didn't use the -out option to save this plan, so Terraform can't
guarantee to take exactly these actions if you run "terraform apply" now.

@marvinbuss
Copy link
Contributor Author

Superseded because of #9

@marvinbuss marvinbuss closed this Aug 26, 2024
@marvinbuss marvinbuss deleted the marvinbuss/add_logging branch August 26, 2024 20:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant