O Application Insights integra-se ao Log Analytics e envia telemetria para um workspace comum do Log Analytics. Essa configuração fornece acesso total aos recursos do Log Analytics, consolida os logs em um local e permite um controle de acesso unificado baseado em função do Azure , o que elimina a necessidade de consultas entre aplicativos/workspace.
Os recursos aprimorados incluem:
Este artigo mostra como criar e configurar recursos do Application Insights. Junto com o próprio recurso do Application Insights, você pode adicionar várias configurações, como definir o limite diário e o plano de preços. Você também pode criar testes de disponibilidade, configurar alertas de métrica e automatizar o processo usando o Azure Resource Manager.
Observação
A ingestão e a retenção de dados para recursos do Application Insights baseados em espaço de trabalho são cobradas por meio do workspace do Log Analytics onde os dados estão localizados. Para saber mais sobre cobrança, confira os detalhes de preços dos Logs do Azure Monitor.
Pré-requisitos
- Uma assinatura ativa do Azure.
- As permissões necessárias para criar recursos.
Requisitos adicionais
Não há requisitos adicionais.
Para acessar os comandos da CLI do Azure do Application Insights, primeiro você precisa executar:
az extension add -n application-insights
Se você não executar o az extension add comando, verá uma mensagem de erro que diz: az : ERROR: az monitor: 'app-insights' is not in the 'az monitor' command group. See 'az monitor --help'.
Você pode implantar modelos Bicep por meio da CLI do Azure, do Azure PowerShell e no portal do Azure. Verifique as respectivas abas para obter requisitos adicionais.
Você pode implantar modelos do ARM por meio da CLI do Azure, do Azure PowerShell e no portal do Azure. Verifique as respectivas abas para obter requisitos adicionais.
Criar um recurso do Application Insights
Observação
Se você não se conectar a um workspace do Log Analytics existente durante a criação de recursos, um novo recurso do Log Analytics será criado automaticamente junto com o recurso do Application Insights.
Quando você cria ou atualiza um recurso do Application Insights baseado em workspace e vincula-o a um workspace do Log Analytics em uma assinatura diferente, a identidade que executa a operação deve ter permissão no workspace de destino para Microsoft.OperationalInsights/workspaces/sharedKeys/action. Esse requisito se aplica mesmo quando ambas as assinaturas estão no mesmo locatário Microsoft Entra. Se a identidade não tiver essa permissão, a operação poderá falhar com um 403 (Forbidden) erro. Atribua a função de menor privilégio que inclua essa ação no workspace de destino ou use um workspace na mesma assinatura que o recurso do Application Insights.
- Entre no portal do Azure.
- Selecione Criar um recurso.
- Abra a categoria Monitoramento &Diagnóstico e selecione Application Insights.
- Insira todas as informações relevantes e, em seguida, examine + crie seu recurso do Application Insights.
Depois de criar seu recurso, você pode encontrar as informações de workspace correspondentes no painel Visão Geral do Application Insights.
Selecione o texto do link azul para ir para o espaço de trabalho associado do Log Analytics, onde você pode aproveitar o novo ambiente unificado de consulta de espaço de trabalho.
Observação
Ainda fornecemos compatibilidade total com versões anteriores para consultas de recursos clássicos, pastas de trabalho e alertas baseados em log do Application Insights. Para consultar ou exibir a nova estrutura/esquema de tabela baseada em workspace, você deverá primeiro acessar o seu workspace do Log Analytics. Selecionar Logs (análise) de dentro dos painéis do Application Insights para ter acesso à experiência clássica de consulta do Application Insights.
O exemplo a seguir da CLI do Azure usa o comando az monitor app-insights component create.
# Set variables
resourceGroupName="<ResourceGroupName>"
resourceName="<ResourceName>"
azureRegion="<AzureRegion>"
workspaceName="<WorkspaceName>"
# Get the subscription ID from the current Azure CLI context
subscriptionId=$(az account show --query id --output tsv)
# Build the full resource ID for the Log Analytics workspace
workspaceResourceId="/subscriptions/$subscriptionId/resourceGroups/$resourceGroupName/providers/Microsoft.OperationalInsights/workspaces/$workspaceName"
# Create a workspace-based Application Insights resource
az monitor app-insights component create \
--app "$resourceName" \
--location "$azureRegion" \
--resource-group "$resourceGroupName" \
--kind web \
--application-type web \
--workspace "$workspaceResourceId"
Observação
Os comandos da CLI do Azure usam o ponto de extremidade do Azure Resource Manager no contexto atual da CLI, portanto management.azure.com não precisa ser especificado na sintaxe do comando.
O exemplo Azure PowerShell a seguir usa o cmdlet New-AzApplicationInsights.
# Set variables
$resourceGroupName = "<ResourceGroupName>"
$resourceName = "<ResourceName>"
$azureRegion = "<AzureRegion>"
$workspaceName = "<WorkspaceName>"
# Get the subscription ID from the current Azure PowerShell context
$subscriptionId = (Get-AzContext).Subscription.Id
# Build the full resource ID for the Log Analytics workspace
$workspaceResourceId = "/subscriptions/$subscriptionId/resourceGroups/$resourceGroupName/providers/Microsoft.OperationalInsights/workspaces/$workspaceName"
# Define the parameters for the Application Insights resource
$newAzApplicationInsightsParams = @{
ResourceGroupName = $resourceGroupName
Name = $resourceName
Location = $azureRegion
Kind = "web"
ApplicationType = "web"
WorkspaceResourceId = $workspaceResourceId
}
# Create a workspace-based Application Insights resource
New-AzApplicationInsights @newAzApplicationInsightsParams
Observação
Os cmdlets do Azure PowerShell usam o ponto de extremidade do Azure Resource Manager do contexto atual de Az, portanto management.azure.com não precisa ser especificado na sintaxe dos cmdlets.
O exemplo REST a seguir usa a operação Componentes – Criar ou Atualizar a API REST.
PUT https://management.azure.com/subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.Insights/components/{ResourceName}?api-version=2020-02-02
Authorization: Bearer {AccessToken}
Content-Type: application/json
{
"kind": "web",
"location": "<AzureRegion>",
"properties": {
"Application_Type": "web",
"WorkspaceResourceId": "/subscriptions/<SubscriptionId>/resourceGroups/<ResourceGroupName>/providers/Microsoft.OperationalInsights/workspaces/<WorkspaceName>"
}
}
O exemplo de Bicep a seguir usa o Microsoft. Insights/componentes tipo de recurso.
param subscriptionId string = '<SubscriptionId>'
param resourceGroupName string = '<ResourceGroupName>'
param resourceName string = '<ResourceName>'
param azureRegion string = '<AzureRegion>'
param workspaceName string = '<WorkspaceName>'
var workspaceResourceId = '/subscriptions/${subscriptionId}/resourceGroups/${resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/${workspaceName}'
resource applicationInsightsComponent 'Microsoft.Insights/components@2020-02-02' = {
name: resourceName
location: azureRegion
kind: 'web'
properties: {
Application_Type: 'web'
WorkspaceResourceId: workspaceResourceId
}
}
O exemplo de ARM (JSON) a seguir usa o Microsoft. Insights/componentes tipo de recurso.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"subscriptionId": {
"type": "string",
"defaultValue": "<SubscriptionId>"
},
"resourceGroupName": {
"type": "string",
"defaultValue": "<ResourceGroupName>"
},
"resourceName": {
"type": "string",
"defaultValue": "<ResourceName>"
},
"azureRegion": {
"type": "string",
"defaultValue": "<AzureRegion>"
},
"workspaceName": {
"type": "string",
"defaultValue": "<WorkspaceName>"
}
},
"variables": {
"workspaceResourceId": "[format('/subscriptions/{0}/resourceGroups/{1}/providers/Microsoft.OperationalInsights/workspaces/{2}', parameters('subscriptionId'), parameters('resourceGroupName'), parameters('workspaceName'))]"
},
"resources": [
{
"type": "Microsoft.Insights/components",
"apiVersion": "2020-02-02",
"name": "[parameters('resourceName')]",
"location": "[parameters('azureRegion')]",
"kind": "web",
"properties": {
"Application_Type": "web",
"WorkspaceResourceId": "[variables('workspaceResourceId')]"
}
}
]
}
Depois de criar um recurso do Application Insights, você configura o monitoramento.
Obter a cadeia de conexão
A cadeia de conexão identifica o recurso com o qual você deseja associar os dados de telemetria. Você também pode usá-la para modificar os endpoints que o recurso usa como destino para sua telemetria. Você deve copiar a cadeia de conexão e adicioná-la ao código do seu aplicativo ou a uma variável de ambiente.
Para obter a cadeia de conexão do seu recurso do Application Insights:
- Abra o seu recurso Application Insights no portal do Azure.
- No painel Visão geral na seção Essentials, procure por string de conexão.
- Se você passar o mouse sobre a cadeia de conexão, aparece um ícone que permite copiá-la.
O exemplo de CLI do Azure a seguir usa o comando az monitor app-insights component show.
# Set variables
resourceGroupName="<ResourceGroupName>"
resourceName="<ResourceName>"
# Retrieve the Application Insights component
az monitor app-insights component show \
--resource-group "$resourceGroupName" \
--app "$resourceName"
Procure o connectionString campo na resposta JSON.
O exemplo Azure PowerShell a seguir usa o cmdlet Get-AzApplicationInsights.
# Set variables
$resourceGroupName = "<ResourceGroupName>"
$resourceName = "<ResourceName>"
# Define parameters for Get-AzApplicationInsights
$getAzApplicationInsightsParams = @{
ResourceGroupName = $resourceGroupName
Name = $resourceName
}
# Retrieve the Application Insights component
Get-AzApplicationInsights @getAzApplicationInsightsParams
Procure a propriedade ConnectionString na saída.
O exemplo REST a seguir usa a operação Componentes – Obter API REST.
GET https://management.azure.com/subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.Insights/components/{ResourceName}?api-version=2020-02-02
Authorization: Bearer {AccessToken}
Procure o properties.connectionString campo na resposta JSON.
Não se aplica a modelos Bicep.
Não aplicável aos modelos do ARM.
Monitoramento de aplicativos com OpenTelemetry
Para monitoramento de aplicativos com OpenTelemetry, instale o Azure Monitor OpenTelemetry Distro apropriado e aponte o cadeia de conexão para o recurso recém-criado.
Para obter informações sobre como configurar o monitoramento de aplicativos com o OpenTelemetry, consulte a seguinte documentação específica do idioma:
Instrumentação automática
Para serviços de monitoramento como o Azure Functions e o Serviço de Aplicativo do Azure, primeiro você pode criar seu recurso do Application Insights e apontá-lo quando habilitar o monitoramento. Como alternativa, você pode criar um novo recurso do Application Insights durante o processo de habilitação.
Modificar o espaço de trabalho associado
Depois de criar um recurso do Application Insights, você pode modificar o workspace associado do Log Analytics.
Importante
Chamadas REST, modelos ARM e modelos Bicep usam a semântica de criar ou atualizar (PUT). Ao atualizar um componente do Application Insights usando esses métodos, inclua todas as propriedades necessárias que você deseja manter. As propriedades que não estão incluídas podem ser redefinidas ou removidas.
Em seu recurso do Application Insights, selecione Propriedades>Alterar espaço de trabalho>Workspaces do Log Analytics.
O exemplo de CLI do Azure a seguir usa o comando az monitor app-insights component update.
# Set variables
resourceGroupName="<ResourceGroupName>"
resourceName="<ResourceName>"
workspaceName="<WorkspaceName>"
# Get the subscription ID from the current Azure CLI context
subscriptionId=$(az account show --query id --output tsv)
# Build the full resource ID for the Log Analytics workspace
workspaceResourceId="/subscriptions/$subscriptionId/resourceGroups/$resourceGroupName/providers/Microsoft.OperationalInsights/workspaces/$workspaceName"
# Update a workspace-based Application Insights resource
az monitor app-insights component update \
--resource-group "$resourceGroupName" \
--app "$resourceName" \
--workspace "$workspaceResourceId"
O exemplo de Azure PowerShell a seguir usa o cmdlet Update-AzApplicationInsights.
# Set variables
$resourceGroupName = "<ResourceGroupName>"
$resourceName = "<ResourceName>"
$workspaceName = "<WorkspaceName>"
# Get the subscription ID from the current Azure PowerShell context
$subscriptionId = (Get-AzContext).Subscription.Id
# Build the full resource ID for the Log Analytics workspace
$workspaceResourceId = "/subscriptions/$subscriptionId/resourceGroups/$resourceGroupName/providers/Microsoft.OperationalInsights/workspaces/$workspaceName"
# Define the parameters for the Application Insights resource
$updateAzApplicationInsightsParams = @{
ResourceGroupName = $resourceGroupName
Name = $resourceName
WorkspaceResourceId = $workspaceResourceId
}
# Update a workspace-based Application Insights resource
Update-AzApplicationInsights @updateAzApplicationInsightsParams
O exemplo REST a seguir usa a operação Componentes – Criar ou Atualizar a API REST.
PUT https://management.azure.com/subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.Insights/components/{ResourceName}?api-version=2020-02-02
Authorization: Bearer {AccessToken}
Content-Type: application/json
{
"location": "<AzureRegion>",
"kind": "web",
"properties": {
"Application_Type": "web",
"WorkspaceResourceId": "/subscriptions/<SubscriptionId>/resourceGroups/<ResourceGroupName>/providers/Microsoft.OperationalInsights/workspaces/<WorkspaceName>"
}
}
O exemplo de Bicep a seguir usa o tipo de recurso Microsoft.Insights components.
param subscriptionId string = '<SubscriptionId>'
param resourceGroupName string = '<ResourceGroupName>'
param resourceName string = '<ResourceName>'
param azureRegion string = '<AzureRegion>'
param workspaceName string = '<WorkspaceName>'
var workspaceResourceId = '/subscriptions/${subscriptionId}/resourceGroups/${resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/${workspaceName}'
resource applicationInsightsComponent 'Microsoft.Insights/components@2020-02-02' = {
name: resourceName
location: azureRegion
kind: 'web'
properties: {
Application_Type: 'web'
WorkspaceResourceId: workspaceResourceId
}
}
O exemplo de ARM (JSON) a seguir usa o tipo de recurso Microsoft.Insights components.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"subscriptionId": {
"type": "string",
"defaultValue": "<SubscriptionId>"
},
"resourceGroupName": {
"type": "string",
"defaultValue": "<ResourceGroupName>"
},
"resourceName": {
"type": "string",
"defaultValue": "<ResourceName>"
},
"azureRegion": {
"type": "string",
"defaultValue": "<AzureRegion>"
},
"workspaceName": {
"type": "string",
"defaultValue": "<WorkspaceName>"
}
},
"variables": {
"workspaceResourceId": "[format('/subscriptions/{0}/resourceGroups/{1}/providers/Microsoft.OperationalInsights/workspaces/{2}', parameters('subscriptionId'), parameters('resourceGroupName'), parameters('workspaceName'))]"
},
"resources": [
{
"type": "Microsoft.Insights/components",
"apiVersion": "2020-02-02",
"name": "[parameters('resourceName')]",
"location": "[parameters('azureRegion')]",
"kind": "web",
"properties": {
"Application_Type": "web",
"WorkspaceResourceId": "[variables('workspaceResourceId')]"
}
}
]
}
Exportar telemetria
A funcionalidade herdada de exportação contínua não tem suporte para recursos baseados em espaço de trabalho. Em vez disso, use as configurações de diagnóstico.
Observação
A exportação de configurações de diagnóstico pode aumentar os custos. Para obter mais informações, confira Exportar telemetria do Application Insights.
Para obter informações sobre preços para essa funcionalidade, confira a página de preços do Azure Monitor. Antes do início da cobrança, as notificações são enviadas. Se você continuar usando a exportação de telemetria após o período de aviso, será cobrada a taxa aplicável.
Em seu recurso do Application Insights, selecione Configurações> dediagnóstico Adicionar configuração de diagnóstico.
Você pode selecionar todas as tabelas ou um subconjunto de tabelas para arquivar em uma conta de armazenamento. Você também pode transmitir para um hub de eventos.
O exemplo de CLI do Azure a seguir usa o comando az monitor diagnostic-settings create. Ele cria uma configuração de diagnóstico que envia logs e métricas de um recurso do Application Insights para uma conta de armazenamento.
# Set variables
resourceGroupName="<ResourceGroupName>"
resourceName="<ResourceName>"
storageAccountName="<StorageAccountName>"
diagnosticSettingName="<DiagnosticSettingName>"
# Get the subscription ID from the current Azure CLI context
subscriptionId=$(az account show --query id --output tsv)
# Build the full resource ID for the Application Insights component
resourceId="/subscriptions/$subscriptionId/resourceGroups/$resourceGroupName/providers/Microsoft.Insights/components/$resourceName"
# Build the full resource ID for the storage account
storageAccountId="/subscriptions/$subscriptionId/resourceGroups/$resourceGroupName/providers/Microsoft.Storage/storageAccounts/$storageAccountName"
# Create the diagnostic setting
az monitor diagnostic-settings create \
--name "$diagnosticSettingName" \
--resource "$resourceId" \
--storage-account "$storageAccountId" \
--logs '[{"category":"AppRequests","enabled":true}]' \
--metrics '[{"category":"AllMetrics","enabled":true}]'
O exemplo de Azure PowerShell a seguir usa o cmdlet New-AzDiagnosticSetting. Ele cria uma configuração de diagnóstico que envia logs e métricas de um recurso do Application Insights para uma conta de armazenamento.
# Set variables
$resourceGroupName = "<ResourceGroupName>"
$resourceName = "<ResourceName>"
$storageAccountName = "<StorageAccountName>"
$diagnosticSettingName = "<DiagnosticSettingName>"
# Get the subscription ID from the current Azure PowerShell context
$subscriptionId = (Get-AzContext).Subscription.Id
# Build the full resource ID for the Application Insights component
$resourceId = "/subscriptions/$subscriptionId/resourceGroups/$resourceGroupName/providers/Microsoft.Insights/components/$resourceName"
# Build the full resource ID for the storage account
$storageAccountId = "/subscriptions/$subscriptionId/resourceGroups/$resourceGroupName/providers/Microsoft.Storage/storageAccounts/$storageAccountName"
# Create log and metric settings objects
$log = New-AzDiagnosticSettingLogSettingsObject `
-Category 'AppRequests' `
-Enabled $true
$metric = New-AzDiagnosticSettingMetricSettingsObject `
-Category 'AllMetrics' `
-Enabled $true
# Define parameters for New-AzDiagnosticSetting
$newAzDiagnosticSettingParams = @{
Name = $diagnosticSettingName
ResourceId = $resourceId
StorageAccountId = $storageAccountId
Log = @($log)
Metric = @($metric)
}
# Create the diagnostic setting
New-AzDiagnosticSetting @newAzDiagnosticSettingParams
O exemplo REST a seguir usa as configurações de diagnóstico – criar ou atualizar a operação da API REST. Ele cria uma configuração de diagnóstico que envia logs e métricas de um recurso do Application Insights para uma conta de armazenamento.
PUT https://management.azure.com/subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.Insights/components/{ResourceName}/providers/Microsoft.Insights/diagnosticSettings/{DiagnosticSettingName}?api-version=2021-05-01-preview
Authorization: Bearer {AccessToken}
Content-Type: application/json
{
"properties": {
"storageAccountId": "/subscriptions/<SubscriptionId>/resourceGroups/<ResourceGroupName>/providers/Microsoft.Storage/storageAccounts/<StorageAccountName>",
"logs": [
{
"category": "AppRequests",
"enabled": true
}
],
"metrics": [
{
"category": "AllMetrics",
"enabled": true
}
]
}
}
O exemplo do Bicep a seguir usa o tipo de recurso Microsoft.Insights diagnosticSettings. Ele cria uma configuração de diagnóstico que envia logs e métricas de um recurso do Application Insights para uma conta de armazenamento.
param subscriptionId string = '<SubscriptionId>'
param resourceGroupName string = '<ResourceGroupName>'
param resourceName string = '<ResourceName>'
param storageAccountName string = '<StorageAccountName>'
param diagnosticSettingName string = '<DiagnosticSettingName>'
resource applicationInsightsComponent 'Microsoft.Insights/components@2020-02-02' existing = {
name: resourceName
}
var storageAccountId = '/subscriptions/${subscriptionId}/resourceGroups/${resourceGroupName}/providers/Microsoft.Storage/storageAccounts/${storageAccountName}'
resource diagnosticSetting 'Microsoft.Insights/diagnosticSettings@2021-05-01-preview' = {
name: diagnosticSettingName
scope: applicationInsightsComponent
properties: {
storageAccountId: storageAccountId
logs: [
{
category: 'AppRequests'
enabled: true
}
]
metrics: [
{
category: 'AllMetrics'
enabled: true
}
]
}
}
O exemplo de modelo arm a seguir usa o Microsoft. Insights diagnosticSettings tipo de recurso. Ele cria uma configuração de diagnóstico que envia logs e métricas de um recurso do Application Insights para uma conta de armazenamento.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"subscriptionId": {
"type": "string",
"defaultValue": "<SubscriptionId>"
},
"resourceGroupName": {
"type": "string",
"defaultValue": "<ResourceGroupName>"
},
"resourceName": {
"type": "string",
"defaultValue": "<ResourceName>"
},
"storageAccountName": {
"type": "string",
"defaultValue": "<StorageAccountName>"
},
"diagnosticSettingName": {
"type": "string",
"defaultValue": "<DiagnosticSettingName>"
}
},
"variables": {
"storageAccountId": "[format('/subscriptions/{0}/resourceGroups/{1}/providers/Microsoft.Storage/storageAccounts/{2}', parameters('subscriptionId'), parameters('resourceGroupName'), parameters('storageAccountName'))]"
},
"resources": [
{
"type": "Microsoft.Insights/components/providers/diagnosticSettings",
"apiVersion": "2021-05-01-preview",
"name": "[format('{0}/Microsoft.Insights/{1}', parameters('resourceName'), parameters('diagnosticSettingName'))]",
"properties": {
"storageAccountId": "[variables('storageAccountId')]",
"logs": [
{
"category": "AppRequests",
"enabled": true
}
],
"metrics": [
{
"category": "AllMetrics",
"enabled": true
}
]
}
}
]
}
Definir a retenção de dados
O exemplo de Bicep a seguir usa o tipo de recurso Microsoft.OperationalInsights workspaces. Ele define o período de retenção de dados para o workspace Log Analytics associado.
param workspaceName string = '<WorkspaceName>'
param azureRegion string = '<AzureRegion>'
param retentionInDays int = <RetentionInDays>
resource logAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@2025-07-01' = {
name: workspaceName
location: azureRegion
properties: {
retentionInDays: retentionInDays
}
}
O exemplo a seguir de ARM (JSON) usa o tipo de recurso Microsoft.OperationalInsights workspaces. Ele define o período de retenção de dados para o workspace Log Analytics associado.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"workspaceName": {
"type": "string",
"defaultValue": "<WorkspaceName>"
},
"azureRegion": {
"type": "string",
"defaultValue": "<AzureRegion>"
},
"retentionInDays": {
"type": "int",
"defaultValue": <RetentionInDays>
}
},
"resources": [
{
"type": "Microsoft.OperationalInsights/workspaces",
"apiVersion": "2025-07-01",
"name": "[parameters('workspaceName')]",
"location": "[parameters('azureRegion')]",
"properties": {
"retentionInDays": "[parameters('retentionInDays')]"
}
}
]
}
Definir o limite diário
O limite diário deve ser definido independentemente para o Application Insights e o workspace do Log Analytics subjacente. O limite diário efetivo é o mínimo das duas configurações.
Observação
Atualmente, o Azure não fornece uma maneira de definir o limite diário do Application Insights por meio da CLI do Azure.
Log Analytics:
O exemplo da CLI do Azure a seguir usa o comando az monitor log-analytics workspace update.
# Set variables
resourceGroupName="<ResourceGroupName>"
workspaceName="<WorkspaceName>"
dailyCapInGb="<DailyCapInGb>"
# Update the daily cap for the Log Analytics workspace
az monitor log-analytics workspace update \
--resource-group "$resourceGroupName" \
--workspace-name "$workspaceName" \
--set workspaceCapping.dailyQuotaGb=$dailyCapInGb
Os exemplos de Azure PowerShell a seguir usam os cmdlets Set-AzApplicationInsightsDailyCap e Set-AzOperationalInsightsWorkspace.
Application Insights:
Os exemplos de Azure PowerShell a seguir usam o cmdlet Set-AzApplicationInsightsDailyCap.
# Set variables
$resourceGroupName = "<ResourceGroupName>"
$resourceName = "<ResourceName>"
$dailyCapInGb = "<DailyCapInGb>"
# Define the parameters for the daily cap
$setAzApplicationInsightsDailyCapParams = @{
ResourceGroupName = $resourceGroupName
Name = $resourceName
DailyCapGB = $dailyCapInGb
}
# Set the daily cap for the Application Insights resource
Set-AzApplicationInsightsDailyCap @setAzApplicationInsightsDailyCapParams
Log Analytics:
Os exemplos de Azure PowerShell a seguir usam o cmdlet Set-AzOperationalInsightsWorkspace.
# Set variables
$resourceGroupName = "<ResourceGroupName>"
$workspaceName = "<WorkspaceName>"
$dailyCapInGb = "<DailyCapInGb>"
# Define the parameters for the daily cap
$setAzOperationalInsightsWorkspaceParams = @{
ResourceGroupName = $resourceGroupName
Name = $workspaceName
DailyQuotaGb = $dailyCapInGb
}
# Set the daily cap for the Log Analytics workspace
Set-AzOperationalInsightsWorkspace @setAzOperationalInsightsWorkspaceParams
Observação
Atualmente, Azure não fornece uma maneira de definir o limite diário do Application Insights por meio da API REST.
Log Analytics:
O exemplo REST a seguir usa a operação da API REST Workspaces - Atualizar.
PATCH https://management.azure.com/subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{WorkspaceName}?api-version=2025-07-01
Authorization: Bearer {AccessToken}
Content-Type: application/json
{
"properties": {
"workspaceCapping": {
"dailyQuotaGb": <DailyCapInGb>
}
}
}
Observação
Atualmente, o Azure não fornece uma maneira de definir o limite diário do Application Insights com um modelo Bicep.
Log Analytics:
O exemplo de Bicep a seguir usa o tipo de recurso Microsoft.OperationalInsights workspaces.
param workspaceName string = '<WorkspaceName>'
param azureRegion string = '<AzureRegion>'
param dailyCapInGb int
resource logAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@2025-07-01' = {
name: workspaceName
location: azureRegion
properties: {
workspaceCapping: {
dailyQuotaGb: dailyCapInGb
}
}
}
Observação
Atualmente, o Azure não fornece uma maneira de definir o limite diário do Application Insights usando um modelo do ARM.
Log Analytics:
O exemplo a seguir de ARM (JSON) usa o tipo de recurso Microsoft.OperationalInsights workspaces.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"workspaceName": {
"type": "string",
"defaultValue": "<WorkspaceName>"
},
"azureRegion": {
"type": "string",
"defaultValue": "<AzureRegion>"
},
"dailyCapInGb": {
"type": "int"
}
},
"resources": [
{
"type": "Microsoft.OperationalInsights/workspaces",
"apiVersion": "2025-07-01",
"name": "[parameters('workspaceName')]",
"location": "[parameters('azureRegion')]",
"properties": {
"workspaceCapping": {
"dailyQuotaGb": "[parameters('dailyCapInGb')]"
}
}
}
]
}
Definir o plano de preços
O plano de preços para recursos do Application Insights pode ser definido no workspace do Log Analytics associado. Para obter mais informações sobre os planos de preços disponíveis, consulte as opções e cálculos de custo dos Logs do Azure Monitor.
Observação
Se você estiver vendo encargos inesperados ou custos altos no Application Insights, este guia poderá ajudar. Ele aborda causas comuns, como alto volume de telemetria, picos de ingestão de dados e amostragem configurada incorretamente. É especialmente útil se você estiver solucionando problemas relacionados a picos de custo, volume de telemetria, amostragem não funcionando, limites de dados, ingestão alta ou cobrança inesperada. Para começar, veja Solucionar problemas de alta ingestão de dados no Application Insights.
Os exemplos de CLI do Azure a seguir usam o comando az monitor log-analytics workspace update.
Pagamento conforme o uso:
# Set variables
resourceGroupName="<ResourceGroupName>"
workspaceName="<WorkspaceName>"
# Set the pricing plan to pay-as-you-go
az monitor log-analytics workspace update \
--resource-group "$resourceGroupName" \
--workspace-name "$workspaceName" \
--set PerGB2018
Camada de compromisso:
# Set variables
resourceGroupName="<ResourceGroupName>"
workspaceName="<WorkspaceName>"
capacityReservationInGb="<CapacityReservationInGb>"
# Set the pricing plan to commitment tier
az monitor log-analytics workspace update \
--resource-group "$resourceGroupName" \
--workspace-name "$workspaceName" \
--set CapacityReservation \
--level "$capacityReservationInGb"
Os exemplos de Azure PowerShell a seguir usam o cmdlet Set-AzOperationalInsightsWorkspace.
Pagamento conforme o uso:
# Set variables
$resourceGroupName = "<ResourceGroupName>"
$workspaceName = "<WorkspaceName>"
# Define the parameters for the pricing plan
$setAzOperationalInsightsWorkspaceParams = @{
ResourceGroupName = $resourceGroupName
Name = $workspaceName
Sku = "PerGB2018"
}
# Set the pricing plan to pay-as-you-go
Set-AzOperationalInsightsWorkspace @setAzOperationalInsightsWorkspaceParams
Camada de compromisso:
# Set variables
$resourceGroupName = "<ResourceGroupName>"
$workspaceName = "<WorkspaceName>"
$capacityReservationInGb = "<CapacityReservationInGb>"
# Define the parameters for the pricing plan
$setAzOperationalInsightsWorkspaceParams = @{
ResourceGroupName = $resourceGroupName
Name = $workspaceName
Sku = "CapacityReservation"
SkuCapacity = $capacityReservationInGb
}
# Set the pricing plan to commitment tier
Set-AzOperationalInsightsWorkspace @setAzOperationalInsightsWorkspaceParams
Os exemplos REST a seguir usam o Plano de Preços – Atualizar a operação da API REST.
Pagamento conforme o uso:
PUT https://management.azure.com/subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{WorkspaceName}/pricingPlans/current?api-version=2017-10-01
Authorization: Bearer {AccessToken}
Content-Type: application/json
{
"properties": {
"sku": {
"name": "pergb2018"
}
}
}
Camada de compromisso:
PUT https://management.azure.com/subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{WorkspaceName}/pricingPlans/current?api-version=2017-10-01
Authorization: Bearer {AccessToken}
Content-Type: application/json
{
"properties": {
"sku": {
"name": "capacityreservation",
"capacityReservationLevel": <CapacityReservationInGb>
}
}
}
Os exemplos de Bicep a seguir usam o tipo de recurso Microsoft.OperationalInsights workspaces.
Pagamento conforme o uso:
param workspaceName string = '<WorkspaceName>'
param azureRegion string = '<AzureRegion>'
resource logAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@2025-07-01' = {
name: workspaceName
location: azureRegion
properties: {
sku: {
name: 'pergb2018'
}
}
}
Camada de compromisso:
param workspaceName string = '<WorkspaceName>'
param azureRegion string = '<AzureRegion>'
param capacityReservationInGb int
resource logAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@2025-07-01' = {
name: workspaceName
location: azureRegion
properties: {
sku: {
name: 'capacityreservation'
capacityReservationLevel: capacityReservationInGb
}
}
}
Os exemplos de ARM (JSON) a seguir usam o tipo de recurso Microsoft.OperationalInsights workspaces.
Pagamento conforme o uso:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"workspaceName": {
"type": "string",
"defaultValue": "<WorkspaceName>"
},
"azureRegion": {
"type": "string",
"defaultValue": "<AzureRegion>"
}
},
"resources": [
{
"type": "Microsoft.OperationalInsights/workspaces",
"apiVersion": "2025-07-01",
"name": "[parameters('workspaceName')]",
"location": "[parameters('azureRegion')]",
"properties": {
"sku": {
"name": "pergb2018"
}
}
}
]
}
Camada de compromisso:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"workspaceName": {
"type": "string",
"defaultValue": "<WorkspaceName>"
},
"azureRegion": {
"type": "string",
"defaultValue": "<AzureRegion>"
},
"capacityReservationInGb": {
"type": "int"
}
},
"resources": [
{
"type": "Microsoft.OperationalInsights/workspaces",
"apiVersion": "2025-07-01",
"name": "[parameters('workspaceName')]",
"location": "[parameters('azureRegion')]",
"properties": {
"sku": {
"name": "capacityreservation",
"capacityReservationLevel": "[parameters('capacityReservationInGb')]"
}
}
}
]
}
Desabilitar o mascaramento de IP
Por padrão, o Application Insights não armazena endereços IP. Para saber como desabilitar o mascaramento de IP, consulte a localização geográfica e o tratamento de endereço IP.
Criar recursos adicionais
Criar um teste de disponibilidade
O exemplo a seguir da CLI do Azure usa o comando az monitor app-insights web-test create. Ele cria um teste de disponibilidade padrão com configurações padrão.
# Set variables
resourceGroupName="<ResourceGroupName>"
resourceName="<ResourceName>"
azureRegion="<AzureRegion>"
webTestName="<WebTestName>"
requestUrl="<RequestUrl>"
# Get the subscription ID from the current Azure CLI context
subscriptionId=$(az account show --query id --output tsv)
# Create a standard availability test
az monitor app-insights web-test create \
--resource-group "$resourceGroupName" \
--location "$azureRegion" \
--web-test-kind standard \
--name "$webTestName" \
--defined-web-test-name "$webTestName" \
--request-url "$requestUrl" \
--retry-enabled true \
--ssl-check true \
--ssl-lifetime-check 7 \
--frequency 300 \
--locations Id="us-ca-sjc-azr" \
--locations Id="apac-sg-sin-azr" \
--locations Id="us-il-ch1-azr" \
--locations Id="us-va-ash-azr" \
--locations Id="emea-au-syd-edge" \
--http-verb GET \
--timeout 120 \
--expected-status-code 200 \
--enabled true \
--tags "hidden-link:/subscriptions/$subscriptionId/resourceGroups/$resourceGroupName/providers/microsoft.insights/components/$resourceName=Resource"
Observação
A região de teste da Web (--location) é diferente da localização geográfica (--locations, observe a forma plural), das quais várias podem ser selecionadas.
--location refere-se à região do Azure em que o teste web é criado e hospedado, enquanto --locations se refere à localização geográfica ou aos locais dos quais o teste da Web é executado. Para obter uma lista completa de todas as localizações geográficas, consulte os testes de disponibilidade do Application Insights.
O exemplo de Azure PowerShell a seguir usa o cmdlet New-AzApplicationInsightsWebTest. Ele cria um teste de disponibilidade padrão com configurações padrão.
# Set variables
$resourceGroupName = "<ResourceGroupName>"
$resourceName = "<ResourceName>"
$azureRegion = "<AzureRegion>"
$webTestName = "<WebTestName>"
$requestUrl = "<RequestUrl>"
# Get the subscription ID from the current Azure PowerShell context
$subscriptionId = (Get-AzContext).Subscription.Id
# Define the geographic locations from which the web test is executed
$geoLocation = @()
$geoLocation += New-AzApplicationInsightsWebTestGeolocationObject -Location "us-ca-sjc-azr"
$geoLocation += New-AzApplicationInsightsWebTestGeolocationObject -Location "apac-sg-sin-azr"
$geoLocation += New-AzApplicationInsightsWebTestGeolocationObject -Location "us-il-ch1-azr"
$geoLocation += New-AzApplicationInsightsWebTestGeolocationObject -Location "us-va-ash-azr"
$geoLocation += New-AzApplicationInsightsWebTestGeolocationObject -Location "emea-au-syd-edge"
# Define parameters for New-AzApplicationInsightsWebTest
$newAzApplicationInsightsWebTestParams = @{
ResourceGroupName = $resourceGroupName
Location = $azureRegion
Name = $webTestName
TestName = $webTestName
Kind = "standard"
RequestUrl = $requestUrl
RetryEnabled = $true
RuleSslCheck = $true
RuleSslCertRemainingLifetimeCheck = 7
Frequency = 300
GeoLocation = $geoLocation
RequestHttpVerb = "GET"
Timeout = 120
RuleExpectedHttpStatusCode = 200
Enabled = $true
Tag = @{
"hidden-link:/subscriptions/$subscriptionId/resourceGroups/$resourceGroupName/providers/microsoft.insights/components/$resourceName" = "Resource"
}
}
# Create a standard availability test
New-AzApplicationInsightsWebTest @newAzApplicationInsightsWebTestParams
Observação
A região de teste da web (-Location) é diferente da localização geográfica (-GeoLocation), das quais várias podem ser selecionadas.
-Location refere-se à região do Azure em que o teste web é criado e hospedado, enquanto -GeoLocation se refere à localização geográfica ou aos locais dos quais o teste da Web é executado. Para obter uma lista completa de todas as localizações geográficas, consulte os testes de disponibilidade do Application Insights.
O exemplo REST a seguir usa os testes web – criar ou atualizar a operação da API REST. Ele cria um teste de disponibilidade padrão com configurações padrão.
PUT https://management.azure.com/subscriptions/{SubscriptionId}/resourceGroups/{ResourceGroupName}/providers/Microsoft.Insights/webtests/{WebTestName}?api-version=2022-06-15
Authorization: Bearer {AccessToken}
Content-Type: application/json
{
"location": "<AzureRegion>",
"tags": {
"hidden-link:/subscriptions/<SubscriptionId>/resourceGroups/<ResourceGroupName>/providers/microsoft.insights/components/<ResourceName>": "Resource"
},
"properties": {
"Name": "<WebTestName>",
"SyntheticMonitorId": "<WebTestName>",
"Enabled": true,
"Frequency": 300,
"Timeout": 120,
"Kind": "standard",
"RetryEnabled": true,
"Request": {
"RequestUrl": "<RequestUrl>",
"HttpVerb": "GET"
},
"ValidationRules": {
"ExpectedHttpStatusCode": 200,
"SSLCheck": true,
"SSLCertRemainingLifetimeCheck": 7
},
"Locations": [
{ "Id": "us-ca-sjc-azr" },
{ "Id": "apac-sg-sin-azr" },
{ "Id": "us-il-ch1-azr" },
{ "Id": "us-va-ash-azr" },
{ "Id": "emea-au-syd-edge" }
]
}
}
Observação
A região de teste da Web (location) é diferente da localização geográfica (Locations, observe a forma plural), das quais várias podem ser selecionadas.
location refere-se à região do Azure em que o teste web é criado e hospedado, enquanto Locations se refere à localização geográfica ou aos locais dos quais o teste da Web é executado. Para obter uma lista completa de todas as localizações geográficas, consulte os testes de disponibilidade do Application Insights.
O exemplo de Bicep a seguir usa o Microsoft. Insights webtests tipo de recurso. Ele cria um teste de disponibilidade padrão com configurações padrão.
param subscriptionId string = '<SubscriptionId>'
param resourceGroupName string = '<ResourceGroupName>'
param resourceName string = '<ResourceName>'
param azureRegion string = '<AzureRegion>'
param webTestName string = '<WebTestName>'
param requestUrl string = '<RequestUrl>'
resource webTest 'Microsoft.Insights/webtests@2022-06-15' = {
name: webTestName
location: azureRegion
tags: {
'hidden-link:/subscriptions/${subscriptionId}/resourceGroups/${resourceGroupName}/providers/microsoft.insights/components/${resourceName}': 'Resource'
}
properties: {
SyntheticMonitorId: webTestName
Name: webTestName
Enabled: true
Frequency: 300
Timeout: 120
Kind: 'standard'
RetryEnabled: true
Locations: [
{ Id: 'us-ca-sjc-azr' }
{ Id: 'apac-sg-sin-azr' }
{ Id: 'us-il-ch1-azr' }
{ Id: 'us-va-ash-azr' }
{ Id: 'emea-au-syd-edge' }
]
Request: {
RequestUrl: requestUrl
HttpVerb: 'GET'
}
ValidationRules: {
ExpectedHttpStatusCode: 200
SSLCheck: true
SSLCertRemainingLifetimeCheck: 7
}
}
}
Observação
A região de teste da web (location) é diferente da localização geográfica (Locations), das quais várias podem ser selecionadas.
location refere-se à região do Azure em que o teste web é criado e hospedado, enquanto Locations se refere à localização geográfica ou aos locais dos quais o teste da Web é executado. Para obter uma lista completa de todas as localizações geográficas, consulte os testes de disponibilidade do Application Insights.
Para obter mais informações sobre como criar testes de disponibilidade usando o Bicep, consulte webtests do Microsoft.Insights.
O exemplo de ARM (JSON) a seguir usa o Microsoft. Insights webtests tipo de recurso. Ele cria um teste de disponibilidade padrão com configurações padrão.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"subscriptionId": {
"type": "string",
"defaultValue": "<SubscriptionId>"
},
"resourceGroupName": {
"type": "string",
"defaultValue": "<ResourceGroupName>"
},
"resourceName": {
"type": "string",
"defaultValue": "<ResourceName>"
},
"azureRegion": {
"type": "string",
"defaultValue": "<AzureRegion>"
},
"webTestName": {
"type": "string",
"defaultValue": "<WebTestName>"
},
"requestUrl": {
"type": "string",
"defaultValue": "<RequestUrl>"
}
},
"resources": [
{
"type": "Microsoft.Insights/webtests",
"apiVersion": "2022-06-15",
"name": "[parameters('webTestName')]",
"location": "[parameters('azureRegion')]",
"tags": {
"[format('hidden-link:/subscriptions/{0}/resourceGroups/{1}/providers/microsoft.insights/components/{2}', parameters('subscriptionId'), parameters('resourceGroupName'), parameters('resourceName'))]": "Resource"
},
"properties": {
"SyntheticMonitorId": "[parameters('webTestName')]",
"Name": "[parameters('webTestName')]",
"Enabled": true,
"Frequency": 300,
"Timeout": 120,
"Kind": "standard",
"RetryEnabled": true,
"Locations": [
{ "Id": "us-ca-sjc-azr" },
{ "Id": "apac-sg-sin-azr" },
{ "Id": "us-il-ch1-azr" },
{ "Id": "us-va-ash-azr" },
{ "Id": "emea-au-syd-edge" }
],
"Request": {
"RequestUrl": "[parameters('requestUrl')]",
"HttpVerb": "GET"
},
"ValidationRules": {
"ExpectedHttpStatusCode": 200,
"SSLCheck": true,
"SSLCertRemainingLifetimeCheck": 7
}
}
}
]
}
Observação
A região de teste da web (location) é diferente da localização geográfica (Locations), das quais várias podem ser selecionadas.
location refere-se à região do Azure em que o teste web é criado e hospedado, enquanto Locations se refere à localização geográfica ou aos locais dos quais o teste da Web é executado. Para obter uma lista completa de todas as localizações geográficas, consulte os testes de disponibilidade do Application Insights.
Adicionar um alerta de métrica
Dica
Cada recurso do Application Insights vem com métricas que estão disponíveis prontas para uso. Se componentes separados reportarem ao mesmo recurso do Application Insights, talvez não faça sentido programar um alerta relativo a essas métricas.
Para obter uma lista de vários exemplos de chamadas à API REST para criar um alerta de métrica, consulte a documentação da API REST.
Para automatizar a criação de alertas de métrica, consulte o artigo do Modelo de alertas de métrica.
Criar mais recursos do Application Insights
Quantos recursos do Application Insights devo implantar?
Ao desenvolver a próxima versão de um aplicativo Web, não é bom misturar as telemetrias da nova versão e da versão já lançada do Application Insights.
Para evitar confusão, envie a telemetria de diferentes estágios de desenvolvimento para separar os recursos do Application Insights com cadeias de conexão separadas.
Se seu sistema for uma instância dos Serviços de Nuvem do Azure, haverá outro método de definição de cadeias de conexão separadas.
Quando usar um único recurso do Application Insights
Use um único recurso do Application Insights:
- Para simplificar o gerenciamento de DevOps/ITOps para aplicativos implantados juntos, normalmente desenvolvidos e gerenciados pela mesma equipe.
- Para centralizar os indicadores chave de desempenho, como tempos de resposta e taxas de falha, em um painel por padrão. Segmente por nome de função no Metrics Explorer se necessário.
- Quando não é necessário um gerenciamento diferente de controle de acesso baseado em função do Azure entre componentes do aplicativo.
- Quando critérios de alerta de métricas, exportações contínuas e gerenciamento de cobrança/cotas idênticos entre componentes forem suficientes.
- Quando é aceitável para uma chave de API acessar dados de todos os componentes igualmente, e 10 chaves de API atendem às necessidades em todos os componentes.
- Quando as mesmas configurações de detecção inteligente e de integração de itens de trabalho são adequadas em todas as funções.
Observação
Se deseja consolidar vários recursos de Application Insights, poderá apontar seus componentes de aplicativo existentes para um novo recurso de Application Insights consolidado. A telemetria armazenada em seu recurso antigo não é transferida para o novo recurso. Exclua o recurso antigo somente quando você tiver telemetria suficiente no novo recurso para continuidade de negócios.
Outras considerações
Para ativar as experiências do portal, adicione código personalizado para atribuir valores significativos ao atributo Cloud_RoleName. Sem esses valores, os recursos do portal não funcionam.
Para aplicativos do Azure Service Fabric e serviços de nuvem clássicos, o SDK configura os serviços automaticamente ao ler do Ambiente de Função do Azure. Para outros tipos de aplicativo, normalmente você precisa defini-lo explicitamente.
As métricas dinâmicas não podem dividir dados por nome de função.
Rastreamento de versões e lançamentos
Ao publicar uma nova versão do aplicativo, você deseja poder separar a telemetria de diferentes builds. Você pode definir a propriedade Versão do Aplicativo para filtrar os resultados da pesquisa e do gerenciador de métricas .
Há vários métodos diferentes de definir a propriedade de Versão do Aplicativo.
Opção 1: Definir a versão diretamente
Para instrumentação baseada em OpenTelemetry, defina metadados de aplicativo consistentemente usando atributos de recurso.
Opção 2: Definir a versão em BuildInfo.config (somente ASP.NET)
O módulo Web do Application Insights obtém a versão do nó BuildLabel. Inclua esse arquivo no seu projeto e não se esqueça de definir a propriedade Copy Always no Gerenciador de Soluções.
<?xml version="1.0" encoding="utf-8"?>
<DeploymentEvent xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="https://www.w3.org/2001/XMLSchema" xmlns="http://schemas.microsoft.com/VisualStudio/DeploymentEvent/2013/06">
<ProjectName>AppVersionExpt</ProjectName>
<Build type="MSBuild">
<MSBuild>
<BuildLabel kind="label">1.0.0.2</BuildLabel>
</MSBuild>
</Build>
</DeploymentEvent>
Gere BuildInfo.config automaticamente no Mecanismo de Build da Microsoft. Adicione as seguintes linhas ao arquivo .csproj :
<PropertyGroup>
<GenerateBuildInfoConfigFile>true</GenerateBuildInfoConfigFile>
<IncludeServerNameInBuildInfo>true</IncludeServerNameInBuildInfo>
</PropertyGroup>
Isso gera um arquivo chamado nomedoSeuProjeto.BuildInfo.config. O processo de Publicação renomeia o arquivo como BuildInfo.config.
O rótulo de build contém um espaço reservado (*AutoGen_...*) quando você cria com o Visual Studio. Quando criado com o Microsoft Build Engine, o espaço reservado é preenchido com o número de versão correto.
Para permitir que o Microsoft Build Engine gere números de versão, defina a versão como 1.0.* em AssemblyReference.cs.
Notas de lançamento
Se usar o Azure DevOps, você poderá obter um marcador de anotação adicionado a seus gráficos sempre que lançar uma nova versão.
Automatizar o processo de criação de recursos
O processo de criação de recursos pode ser automatizado usando modelos Bicep ou JSON com o Azure Resource Manager. Você pode empacotar vários recursos juntos para criá-los em uma implantação. Por exemplo, você pode criar um recurso do Application Insights com testes de disponibilidade, alertas de métrica e uma configuração de diagnóstico para enviar telemetria para uma conta de Armazenamento do Azure.
Gerar um modelo no portal do Azure
Você pode gerar um modelo de recursos existentes.
Somente Application Insights
- Acesse o recurso application insights no portal do Azure.
- Abra o modelo de Exportação listado em Automação na barra de navegação à esquerda.
- (Opcional): para usar seus próprios parâmetros, desmarque Incluir parâmetros.
-
Baixe o arquivo de modelo ou implante-o diretamente no portal do Azure.
Recursos múltiplos
- Vá para o grupo de recursos do seu recurso do Application Insights.
- No painel Visão geral , marque todos os recursos que você deseja incluir no modelo e selecione Exportar modelo na barra de navegação superior.
- (Opcional): para usar seus próprios parâmetros, desmarque Incluir parâmetros.
-
Baixe o arquivo de modelo ou implante-o diretamente no portal do Azure.
Criar um modelo do zero
Para saber como criar um modelo do ARM do zero, visite nossa documentação de modelo do ARM que inclui tutoriais para criar um modelo, adicionar recursos, adicionar parâmetros e muito mais.
As propriedades disponíveis para Application Insights, testes de disponibilidade, alertas de métrica, configurações de diagnóstico e outros recursos podem ser encontradas na nossa documentação de referência de recursos do Azure, sob o nó Referência>Insights.
Dica
Você também pode usar os modelos de início rápido, disponíveis na parte inferior de cada página da documentação de referência dos recursos do Azure mencionada nesta seção. Para saber como usar modelos, visite Tutorial: Usar modelos de início rápido do Azure.
Próximas etapas