Application Insights는Log Analytics 와 통합되고 일반적인 Log Analytics 작업 영역으로 원격 분석을 보냅니다. 이 설정은 Log Analytics 기능에 대한 모든 권한을 제공하고, 한 위치에 로그를 통합하며, 통합된 Azure 역할 기반 액세스 제어 를 허용하므로 앱 간/작업 영역 쿼리가 필요하지 않습니다.
향상된 기능은 다음과 같습니다.
이 문서에서는 Application Insights 리소스를 만들고 구성하는 방법을 보여 줍니다. Application Insights 리소스 자체와 함께 일일 한도 설정 및 가격 책정 계획과 같은 다양한 구성을 추가할 수 있습니다. Azure Resource Manager를 사용하여 가용성 테스트를 만들고, 메트릭 경고를 설정하고, 프로세스를 자동화할 수도 있습니다.
참고
작업 영역 기반 Application Insights 리소스에 대한 데이터 수집 및 보존 비용은 데이터가 있는 Log Analytics 작업 영역을 통해 청구됩니다. 청구에 대한 자세한 내용은 Azure Monitor 로그 가격 책정 세부 정보를 참조하세요.
필수 조건
- 활성 Azure 구독입니다.
- 리소스를 만드는 데 필요한 권한입니다.
추가 요구 사항
Application Insights Azure CLI 명령에 액세스하려면 먼저 다음을 실행해야 합니다.
az extension add -n application-insights
az extension add
명령을 실행하지 않으면 az : ERROR: az monitor: 'app-insights' is not in the 'az monitor' command group. See 'az monitor --help'
오류 메시지가 표시됩니다.
Azure CLI, Azure PowerShell 및 Azure Portal을 통해 Bicep 템플릿을 배포할 수 있습니다. 각 탭에서 추가 요구 사항을 확인합니다.
Azure CLI, Azure PowerShell 및 Azure Portal을 통해 ARM 템플릿을 배포할 수 있습니다. 각 탭에서 추가 요구 사항을 확인합니다.
Application Insights 리소스 만들기
-
Azure Portal에 로그인합니다.
-
리소스 만들기를 선택합니다.
-
범주 모니터링 및 진단을 연 다음 Application Insights를 선택합니다.
- 모든 관련 정보를 입력한 다음 검토하고 만들기를 클릭하여 Application Insights 리소스를 생성합니다.
참고
리소스를 만드는 동안 기존 Log Analytics 작업 영역에 연결하지 않으면 Application Insights 리소스와 함께 새 Log Analytics 리소스가 자동으로 만들어집니다.
리소스를 만든 후 Application Insights 개요 창에서 해당 작업 영역 정보를 찾을 수 있습니다.
새 통합 작업 영역 쿼리 환경을 활용할 수 있는 연결된 Log Analytics 작업 영역으로 이동하려면 파란색 링크 텍스트를 선택합니다.
참고
Application Insights 클래식 리소스 쿼리, 통합 문서 및 로그 기반 경고에 대한 완전한 이전 버전과의 호환성을 계속 제공합니다.
새 작업 영역 기반 테이블 구조 또는 스키마를 쿼리하거나 확인하려면 먼저 Log Analytics 작업 영역으로 이동해야 합니다. 클래식 Application Insights 쿼리 환경에 액세스하려면 Application Insights 창에서 로그(분석)를 선택합니다.
작업 영역 기반 Application Insights 리소스를 만들려면 Log Analytics 작업 영역이 필요합니다. 아직 없는 경우 다음 Azure CLI 명령을 사용하여 만들 수 있습니다.
자리 표시자: <resource-group-name>
, <log-analytics-workspace-name>
, <azure-region-name>
az monitor log-analytics workspace create --resource-group <resource-group-name> --workspace-name <log-analytics-workspace-name> --___location <azure-region-name>
Application Insights 리소스를 만들려면 터미널에서 다음 Azure CLI 명령을 실행합니다.
자리 표시자: <application-insights-resource-name>
, <azure-region-name>
, <resource-group-name>
, <log-analytics-workspace-name>
az monitor app-insights component create --app <application-insights-resource-name> --___location <azure-region-name> --resource-group <resource-group-name> --workspace <log-analytics-workspace-name>
Azure CLI를 사용하여 Application Insights 리소스 및 Log Analytics 작업 영역을 만드는 방법에 대한 자세한 내용은 Application Insights 및 Log Analytics에 대한 Azure CLI 설명서를 참조 하세요.
작업 영역 기반 Application Insights 리소스를 만들려면 Log Analytics 작업 영역이 필요합니다. 아직 없는 경우 다음 Azure PowerShell 명령을 사용하여 만들 수 있습니다.
자리 표시자: <resource-group-name>
, <log-analytics-workspace-name>
, <azure-region-name>
New-AzOperationalInsightsWorkspace -ResourceGroupName <resource-group-name> -Name <log-analytics-workspace-name> -Location <azure-region-name>
Application Insights 리소스를 만들려면 터미널에서 다음 Azure PowerShell 명령을 실행합니다.
자리 표시자: <resource-group-name>
, <application-insights-resource-name>
, <azure-region-name>
,<subscription-id>
, <log-analytics-workspace-name>
New-AzApplicationInsights -ResourceGroupName <resource-group-name> -Name <application-insights-resource-name> -Location <azure-region-name> -WorkspaceResourceId /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>
Azure PowerShell을 사용하여 Application Insights 리소스 및 Log Analytics 작업 영역을 만드는 방법에 대한 자세한 내용은 Application Insights 및 Log Analytics에 대한 Azure PowerShell 설명서를 참조 하세요.
작업 영역 기반 Application Insights 리소스를 만들려면 Log Analytics 작업 영역이 필요합니다. 아직 없는 경우 다음 REST API 호출을 사용하여 만들 수 있습니다.
자리 표시자: <subscription-id>
, <resource-group-name>
, <log-analytics-workspace-name>
, <access-token>
, <azure-region-name>
PUT https://management.azure.com/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>?api-version=2023-09-01
Authorization: Bearer <access-token>
Content-Type: application/json
{
"___location": "<azure-region-name>"
}
REST API를 사용하여 Application Insights 리소스를 만들려면 다음 요청을 사용합니다.
자리 표시자: <subscription-id>
, <resource-group-name>
, <application-insights-resource-name>
, <access-token>
, <application-type>
, <azure-region-name>
, <log-analytics-workspace-name>
PUT https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Insights/components/<application-insights-resource-name>?api-version=2020-02-02
Authorization: Bearer <access-token>
Content-Type: application/json
{
"kind": "<application-type>",
"___location": "<azure-region-name>",
"properties": {
"Application_Type": "<application-type>",
"WorkspaceResourceId": "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>"
}
}
REST API를 사용하여 Application Insights 리소스 및 Log Analytics 작업 영역을 만드는 방법에 대한 자세한 내용은 Application Insights 및 Log Analytics에 대한 REST API 설명서를 참조 하세요.
Bicep 템플릿을 사용하여 새 Application Insights 리소스를 만드는 방법은 다음과 같습니다.
템플릿 만들기
새 .bicep 파일(예: my-template.bicep)을 만들고 다음 콘텐츠를 복사합니다.
param name string
param type string
param regionId string
param requestSource string
param workspaceResourceId string
resource appInsights 'Microsoft.Insights/components@2020-02-02' = {
name: name
___location: regionId
tags: tagsArray
kind: 'other'
properties: {
Application_Type: type
Request_Source: requestSource
WorkspaceResourceId: workspaceResourceId
}
}
매개 변수 파일 만들기
새 .bicepparam 파일(예: my-parameters.bicepparam)을 만들고, 다음 콘텐츠를 복사하고, 자리 표시자<application-insights-resource-name>
, <application-type>
, <azure-region-name>
, <subscription-id>
<resource-group-name>
및 <log-analytics-workspace-name>
특정 값으로 바꿉다.
using 'my-template.bicep'
param name string = '<application-insights-resource-name>'
param type string = '<application-type>'
param regionId string = '<azure-region-name>'
param requestSource string = 'CustomDeployment'
param workspaceResourceId string = '/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.operationalinsights/workspaces/<log-analytics-workspace-name>'
템플릿을 사용하여 새 Application Insights 리소스 만들기
PowerShell에서 $Connect-AzAccount
를 사용하여 Azure에 로그인합니다.
Set-AzContext "<subscription ID>"
를 사용하여 컨텍스트를 구독으로 설정합니다.
새 배포를 실행하여 새 Application Insights 리소스 만들기:
New-AzResourceGroupDeployment -ResourceGroupName <your-resource-group> -TemplateFile my-template.bicep -TemplateParameterFile my-parameters.bicepparam
-
-ResourceGroupName
은 새 리소스를 만들려는 그룹입니다.
-
-TemplateFile
은 사용자 지정 매개 변수 앞에 있어야 합니다.
-
-TemplateParameterFile
는 매개 변수 파일의 이름입니다.
다른 매개 변수를 추가할 수 있습니다. 템플릿의 매개 변수 섹션에서 해당 설명을 찾을 수 있습니다.
ARM 템플릿을 사용하여 새 Application Insights 리소스를 만드는 방법은 다음과 같습니다.
템플릿 만들기
새 .json 파일(예: my-template.json)을 만들고 다음 콘텐츠를 복사합니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"name": {
"type": "string",
"metadata": {
"description": "Name of Application Insights resource."
}
},
"type": {
"type": "string",
"metadata": {
"description": "Type of app you are deploying. This field is for legacy reasons and will not impact the type of Application Insights resource you deploy."
}
},
"regionId": {
"type": "string",
"metadata": {
"description": "Which Azure region to deploy the resource to. This must be a valid Azure regionId."
}
},
"tagsArray": {
"type": "object",
"metadata": {
"description": "See documentation on tags: https://learn.microsoft.com/azure/azure-resource-manager/management/tag-resources."
}
},
"requestSource": {
"type": "string",
"metadata": {
"description": "Source of Azure Resource Manager deployment"
}
},
"workspaceResourceId": {
"type": "string",
"metadata": {
"description": "Log Analytics workspace ID to associate with your Application Insights resource."
}
}
},
"resources": [
{
"type": "Microsoft.Insights/components",
"apiVersion": "2020-02-02",
"name": "[parameters('name')]",
"___location": "[parameters('regionId')]",
"tags": "[parameters('tagsArray')]",
"kind": "other",
"properties": {
"Application_Type": "[parameters('type')]",
"Request_Source": "[parameters('requestSource')]",
"WorkspaceResourceId": "[parameters('workspaceResourceId')]"
}
}
]
}
참고
리소스 속성에 대한 자세한 내용은 속성 값을 참조하세요.
Flow_Type
및 Request_Source
는 사용되지 않지만 완전성을 위해 이 샘플에 포함되었습니다.
매개 변수 파일 만들기
새 .json 파일(예: my-parameters.json)을 만들고, 다음 콘텐츠를 복사하고, 자리 표시자<application-insights-resource-name>
, <application-type>
, <azure-region-name>
, <subscription-id>
<resource-group-name>
및 <log-analytics-workspace-name>
특정 값으로 바꿉다.
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"name": {
"value": "<application-insights-resource-name>"
},
"type": {
"value": "<application-type>"
},
"regionId": {
"value": "<azure-region-name>"
},
"tagsArray": {
"value": {}
},
"requestSource": {
"value": "CustomDeployment"
},
"workspaceResourceId": {
"value": "/subscriptions/<subscription-id>/resourcegroups/<resource-group-name>/providers/microsoft.operationalinsights/workspaces/<log-analytics-workspace-name>"
}
}
}
템플릿을 사용하여 새 Application Insights 리소스 만들기
PowerShell에서 $Connect-AzAccount
를 사용하여 Azure에 로그인합니다.
Set-AzContext "<subscription ID>"
를 사용하여 컨텍스트를 구독으로 설정합니다.
새 배포를 실행하여 새 Application Insights 리소스 만들기:
New-AzResourceGroupDeployment -ResourceGroupName <your-resource-group> -TemplateFile my-template.json -TemplateParameterFile my-parameters.json
-
-ResourceGroupName
은 새 리소스를 만들려는 그룹입니다.
-
-TemplateFile
은 사용자 지정 매개 변수 앞에 있어야 합니다.
-
-TemplateParameterFile
는 매개 변수 파일의 이름입니다.
Application Insights 리소스를 만든 후 모니터링을 구성합니다.
연결 문자열 가져오기
연결 문자열은 원격 분석 데이터를 연결하려는 리소스를 식별합니다. 또한 이를 사용하여 리소스가 원격 분석의 대상으로 사용하는 엔드포인트를 수정할 수도 있습니다. 연결 문자열을 복사하여 애플리케이션 코드나 환경 변수에 추가해야 합니다.
Application Insights 리소스의 연결 문자열을 얻으려면 다음을 수행합니다.
- Azure Portal에서 Application Insights 리소스를 엽니다.
-
Essentials 섹션의 개요 창에서 연결 문자열을 찾습니다.
- 연결 문자열을 마우스로 가리키면 클립보드에 복사할 수 있는 아이콘이 나타납니다.
연결 문자열을 얻으려면 터미널에서 다음 Azure CLI 명령을 실행하고 자리 표시자와 <application-insights-resource-name>
<resource-group-name>
특정 값으로 바꿉다.
az monitor app-insights component show --app <application-insights-resource-name> --resource-group <resource-group-name> --query connectionString --output tsv
명령에 대한 az monitor app-insights component show
자세한 내용은 Azure CLI 설명서를 참조하세요.
연결 문자열을 얻으려면 터미널에서 다음 Azure PowerShell 명령을 실행하고 자리 표시자와 <resource-group-name>
<application-insights-resource-name>
특정 값으로 바꿉다.
Get-AzApplicationInsights -ResourceGroupName <resource-group-name> -Name <application-insights-resource-name> | Select-Object -ExpandProperty ConnectionString
명령에 대한 Get-AzApplicationInsights
자세한 내용은 Azure PowerShell 설명서를 참조하세요.
Application Insights 리소스의 세부 정보를 가져오려면 다음 요청을 사용하고 자리 표시자 <subscription-id>
, <resource-group-name>
, <application-insights-resource-name>
, <access-token>
를 해당 값으로 바꾸십시오.
GET https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Insights/components/<application-insights-resource-name>?api-version=2015-05-01
Authorization: Bearer <access-token>
properties.connectionString
JSON 응답에서 필드를 찾습니다.
REST API를 사용하여 Application Insights 리소스에 대한 정보를 검색하는 방법에 대한 자세한 내용은 REST API 설명서를 참조하세요.
OpenTelemetry를 사용하여 애플리케이션 모니터링
OpenTelemetry를 사용한 애플리케이션 모니터링의 경우 적절한 Azure Monitor OpenTelemetry Distro를 설치하고 연결 문자열을 새로 만든 리소스로 가리킵니다.
OpenTelemetry를 사용하여 애플리케이션 모니터링을 설정하는 방법에 대한 자세한 내용은 언어와 관련된 다음 설명서를 참조하세요.
자동 계측
Azure Functions 및 Azure App Service와 같은 모니터링 서비스의 경우 먼저 Application Insights 리소스를 만든 다음 모니터링을 사용하도록 설정할 때 해당 리소스를 가리킬 수 있습니다. 또는 사용 프로세스 중에 새 Application Insights 리소스를 만들 수 있습니다.
연결된 작업 영역 수정
Application Insights 리소스를 만든 후 연결된 Log Analytics 작업 영역을 수정할 수 있습니다.
Application Insights 리소스에서 속성>변경 작업 영역> 선택합니다.
Log Analytics 작업 영역을 변경하려면 터미널에서 다음 Azure CLI 명령을 실행하고 자리 표시자를 <application-insights-resource-name>
<resource-group-name>
<log-analytics-workspace-name>
특정 값으로 바꿉니다.
az monitor app-insights component update --app <application-insights-resource-name> --resource-group <resource-group-name> --workspace <log-analytics-workspace-name>
명령에 대한 az monitor app-insights component update
자세한 내용은 Azure CLI 설명서를 참조하세요.
Log Analytics 작업 영역을 변경하려면 터미널에서 다음 Azure PowerShell 명령을 실행하고 자리 표시자<resource-group-name>
, <application-insights-resource-name>
<subscription-id>
<log-analytics-workspace-name>
및 특정 값으로 바꿉니다.
Update-AzApplicationInsights -ResourceGroupName <resource-group-name> -Name <application-insights-resource-name> -WorkspaceResourceId /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>
명령에 대한 Update-AzApplicationInsights
자세한 내용은 Azure PowerShell 설명서를 참조하세요.
REST API를 사용하여 Log Analytics 작업 영역을 변경하려면 다음 요청을 사용하고 자리 표시자<subscription-id>
, <resource-group-name>
, <application-insights-resource-name>
, <access-token>
<azure-region-name>
및 <log-analytics-workspace-name>
특정 값으로 바꿉니다.
PATCH https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Insights/components/<application-insights-resource-name>?api-version=2020-02-02
Authorization: Bearer <access-token>
Content-Type: application/json
{
"___location": "<azure-region-name>",
"properties": {
"WorkspaceResourceId": "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>"
}
}
REST API를 사용하여 연결된 작업 영역을 수정하는 방법에 대한 자세한 내용은 REST API 설명서를 참조하세요.
Log Analytics 작업 영역을 변경하려면 다음 코드를 템플릿에 복사하여 붙여넣고 자리 표시자 <application-insights-resource-name>
, <azure-region-name>
, <application-type>
, <log-analytics-workspace-name>
를 각각 특정 값으로 바꾸십시오.
param workspaceResourceId string = '/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>'
resource appInsights 'Microsoft.Insights/components@2020-02-02-preview' = {
name: '<application-insights-resource-name>'
___location: '<azure-region-name>'
properties: {
Application_Type: '<application-type>'
WorkspaceResourceId: workspaceResourceId
}
}
Log Analytics 작업 영역을 변경하려면 다음 코드를 템플릿에 복사하여 붙여넣고 자리 표시자 <application-insights-resource-name>
, <azure-region-name>
, <application-type>
, <log-analytics-workspace-name>
를 각각 특정 값으로 바꾸십시오.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.Insights/components",
"apiVersion": "2020-02-02-preview",
"name": "<application-insights-resource-name>",
"___location": "<azure-region-name>",
"properties": {
"Application_Type": "<application-type>",
"WorkspaceResourceId": "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>"
}
}
]
}
원격 분석 내보내기
작업 영역 기반 리소스에는 레거시 연속 내보내기 기능이 지원되지 않습니다. 대신 진단 설정을 사용합니다.
Application Insights 리소스에서 진단 설정> 추가를 선택합니다.
스토리지 계정에 보관할 모든 테이블 또는 테이블의 하위 집합을 선택할 수 있습니다.
이벤트 허브로 스트리밍할 수도 있습니다.
진단 설정을 이용하여 원격 분석을 내보내려면 터미널에서 다음 Azure CLI 명령을 실행한 후 자리 표시자 <diagnostic-setting-name>
, <application-insights-resource-name>
, <resource-group-name>
, 및 <storage-account-name>
를 사용자 특정 값으로 바꾸고.
az monitor diagnostic-settings create --name <diagnostic-setting-name> --resource <application-insights-resource-name> --resource-group <resource-group-name> --resource-type Microsoft.Insights/components --storage-account <storage-account-name>
이 예제 명령은 진단 설정을 사용하도록 설정하고 Application Insights 리소스의 모든 로그를 지정된 스토리지 계정으로 보냅니다. 메트릭도 보내려면 명령에 추가 --metrics '[{"category": "AllMetrics", "enabled": true}]'
합니다.
명령에 대한 az monitor diagnostic-settings create
자세한 내용은 Azure CLI 설명서를 참조하세요.
진단 설정을 사용하여 원격 분석을 내보내려면 터미널에서 다음 Azure PowerShell 명령을 실행하고 자리 표시자를 <application-insights-resource-id>
<diagnostic-setting-name>
<storage-account-id>
특정 값으로 바꿉니다.
Set-AzDiagnosticSetting -ResourceId <application-insights-resource-id> -Name <diagnostic-setting-name> -StorageAccountId <storage-account-id> -Enabled $True
이 예제 명령은 진단 설정을 사용하도록 설정하고 Application Insights 리소스의 모든 메트릭과 로그를 지정된 스토리지 계정으로 보냅니다.
명령에 대한 Set-AzDiagnosticSetting
자세한 내용은 Azure PowerShell 설명서를 참조하세요.
진단 설정을 사용하여 Azure Storage 계정으로 원격 분석을 내보내려면 다음 요청을 사용하고, 자리 표시자 <subscription-id>
, <resource-group-name>
, <application-insights-resource-name>
, <diagnostic-setting-name>
, <access-token>
, <storage-account-name>
를 특정 값으로 바꿉니다.
PUT https://management.azure.com//subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/microsoft.insights/components/<application-insights-resource-name>/providers/Microsoft.Insights/diagnosticSettings/<diagnostic-setting-name>?api-version=2021-05-01-preview
Authorization: Bearer <access-token>
Content-Type: application/json
{
"properties": {
"storageAccountId": "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.Storage/storageAccounts/<storage-account-name>",
"logs": [
{
"category": "AppRequests",
"enabled": true
}
],
"metrics": [
{
"category": "AllMetrics",
"enabled": true
}
]
}
}
이 예제 호출은 진단 설정을 사용하도록 설정하고 Application Insights 리소스의 모든 메트릭과 로그를 지정된 스토리지 계정으로 보냅니다.
REST API를 사용하여 진단 설정을 만드는 방법에 대한 자세한 내용은 REST API 설명서를 참조하세요.
진단 설정을 사용하여 원격 분석을 내보내려면 다음 코드를 템플릿에 붙여넣고 자리 표시자 <application-insights-resource-name>
, <azure-region-name>
, <application-type>
, <diagnostic-setting-name>
, <subscription-id>
, <resource-group>
, 및 <storage-account-name>
를 특정 값으로 바꿉니다.
param appInsightsName string = '<application-insights-resource-name>'
param ___location string = '<azure-region-name>'
param applicationType string = '<application-type>'
param diagnosticSettingName string = '<diagnostic-setting-name>'
param storageAccountId string = '/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.Storage/storageAccounts/<storage-account-name>'
resource appInsights 'Microsoft.Insights/components@2020-02-02' = {
name: appInsightsName
___location: ___location
kind: applicationType
properties: {
Application_Type: applicationType
}
}
resource diagnosticSetting 'Microsoft.Insights/diagnosticSettings@2021-05-01-preview' = {
name: diagnosticSettingName
scope: appInsights
properties: {
storageAccountId: storageAccountId
logs: [
{
category: 'AppRequests'
enabled: true
}
]
metrics: [
{
category: 'AllMetrics'
enabled: true
}
]
}
}
진단 설정을 사용하여 원격 분석을 내보내려면 다음 코드를 템플릿에 붙여넣고 자리 표시자 <application-insights-resource-name>
, <azure-region-name>
, <application-type>
, <diagnostic-setting-name>
, <subscription-id>
, <resource-group>
, 및 <storage-account-name>
를 특정 값으로 바꿉니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"appInsightsName": {
"type": "string",
"defaultValue": "<application-insights-resource-name>"
},
"___location": {
"type": "string",
"defaultValue": "<azure-region-name>"
},
"applicationType": {
"type": "string",
"defaultValue": "<application-type>"
},
"diagnosticSettingName": {
"type": "string",
"defaultValue": "<diagnostic-setting-name>"
},
"storageAccountId": {
"type": "string",
"defaultValue": "/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.Storage/storageAccounts/<storage-account-name>"
}
},
"resources": [
{
"type": "Microsoft.Insights/components",
"apiVersion": "2020-02-02",
"name": "[parameters('appInsightsName')]",
"___location": "[parameters('___location')]",
"kind": "[parameters('applicationType')]",
"properties": {
"Application_Type": "[parameters('applicationType')]"
}
},
{
"type": "Microsoft.Insights/diagnosticSettings",
"apiVersion": "2021-05-01-preview",
"name": "[parameters('diagnosticSettingName')]",
"scope": "[resourceId('Microsoft.Insights/components', parameters('appInsightsName'))]",
"properties": {
"storageAccountId": "[parameters('storageAccountId')]",
"logs": [
{
"category": "AppRequests",
"enabled": true
}
],
"metrics": [
{
"category": "AllMetrics",
"enabled": true
}
]
}
}
]
}
데이터 보존 기간 설정
연결된 Log Analytics 작업 영역에 대한 데이터 보존을 설정하려면 다음 코드를 템플릿에 붙여넣고 자리 표시자를 <log-analytics-workspace-name>
<azure-region-name>
<retention-period-in-days>
특정 값으로 바꿉니다.
resource logAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@2020-08-01' = {
name: '<log-analytics-workspace-name>'
___location: '<azure-region-name>'
properties: {
retentionInDays: <retention-period-in-days>
}
}
연결된 Log Analytics 작업 영역에 대한 데이터 보존을 설정하려면 다음 코드를 템플릿에 붙여넣고 자리 표시자를 <log-analytics-workspace-name>
<azure-region-name>
<retention-period-in-days>
특정 값으로 바꿉니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.OperationalInsights/workspaces",
"apiVersion": "2020-08-01",
"name": "<log-analytics-workspace-name>",
"___location": "<azure-region-name>",
"properties": {
"retentionInDays": <retention-period-in-days>
}
}
]
}
일일 최대값 설정
Application Insights 및 기본 Log Analytics 작업 영역에 대해 일일 한도를 독립적으로 설정해야 합니다. 유효 일일 한도는 두 설정 중 최소값입니다.
참고
현재 Azure는 Azure CLI를 통해 Application Insights의 일일 한도를 설정하는 방법을 제공하지 않습니다.
Log Analytics의 일일 한도를 변경하려면 터미널에서 다음 Azure CLI 명령을 실행하고 자리 표시자를 <resource-group-name>
<log-analytics-workspace-name>
<daily-cap-in-gb>
특정 값으로 바꿉니다.
az monitor log-analytics workspace update --resource-group <resource-group-name> --workspace-name <log-analytics-workspace-name> --set workspaceCapping.dailyQuotaGb=<daily-cap-in-gb>
명령에 대한 az monitor log-analytics workspace update
자세한 내용은 Azure CLI 설명서를 참조하세요.
Application Insights 및 Log Analytics의 일일 한도를 변경하려면 터미널에서 다음 Azure PowerShell 명령을 실행하고 자리 표시자를 특정 값으로 바꿉니다.
Application Insights
자리 표시자: <resource-group-name>
, <application-insights-resource-name>
, <daily-cap-in-gb>
Set-AzApplicationInsightsDailyCap -ResourceGroupName <resource-group-name> -Name <application-insights-resource-name> -DailyCapGB <daily-cap-in-gb>
명령에 대한 Set-AzApplicationInsightsDailyCap
자세한 내용은 Azure PowerShell 설명서를 참조하세요.
Log Analytics
자리 표시자: <resource-group-name>
, <log-analytics-workspace-name>
, <daily-cap-in-gb>
Set-AzOperationalInsightsWorkspace -ResourceGroupName <resource-group-name> -Name <log-analytics-workspace-name> -DailyQuotaGb <daily-cap-in-gb>
명령에 대한 Set-AzOperationalInsightsWorkspace
자세한 내용은 Azure PowerShell 설명서를 참조하세요.
참고
현재 Azure는 Azure CLI를 사용하여 Application Insights의 일일 한도를 설정하는 방법을 제공하지 않습니다.
Log Analytics의 일일 한도를 변경하려면 다음 요청을 사용하고 자리 표시자<subscription-id>
, <resource-group-name>
, <log-analytics-workspace-name>
, <access-token>
<azure-region-name>
및 <daily-cap-in-gb>
특정 값으로 바꿉니다.
자리 표시자:
PATCH https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>?api-version=2023-09-01
Authorization: Bearer <access-token>
Content-Type: application/json
{
"___location": '<azure-region-name>',
"properties": {
"workspaceCapping": {
"dailyQuotaGb": <daily-cap-in-gb>,
},
}
}
Log Analytics 일일 한도 설정에 대한 자세한 내용은 REST API 설명서를 참조하세요.
참고
현재 Azure는 Bicep 템플릿을 사용하여 Application Insights의 일일 한도를 설정하는 방법을 제공하지 않습니다.
Log Analytics에서 일일 한도를 설정하려면 다음 코드를 템플릿에 붙여넣고, 자리 표시자 <log-analytics-workspace-name>
, <azure-region-name>
, <daily-cap-in-gb>
를 각각의 특정 값으로 바꿉니다.
resource logAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@2020-08-01' = {
name: '<log-analytics-workspace-name>'
___location: '<azure-region-name>'
properties: {
dailyQuotaGb: <daily-cap-in-gb>
}
}
참고
현재 Azure는 ARM 템플릿을 사용하여 Application Insights의 일일 한도를 설정하는 방법을 제공하지 않습니다.
Log Analytics에서 일일 한도를 설정하려면 다음 코드를 템플릿에 붙여넣고, 자리 표시자 <log-analytics-workspace-name>
, <azure-region-name>
, <daily-cap-in-gb>
를 각각의 특정 값으로 바꿉니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.OperationalInsights/workspaces",
"apiVersion": "2023-09-01",
"name": "<log-analytics-workspace-name>",
"___location": "<azure-region-name>",
"properties": {
"workspaceCapping": {
"dailyQuotaGb": <daily-cap-in-gb>
}
}
}
]
}
요금제 설정
Application Insights 리소스에 대한 가격 책정 계획은 연결된 Log Analytics 작업 영역에서 설정할 수 있습니다. 사용 가능한 가격 책정 계획에 대한 자세한 내용은 Azure Monitor 로그 비용 계산 및 옵션을 참조하세요.
참고
Application Insights에서 예기치 않은 요금 또는 높은 비용이 표시되는 경우 이 가이드가 도움이 될 수 있습니다. 높은 원격 분석 볼륨, 데이터 수집 급증 및 잘못 구성된 샘플링과 같은 일반적인 원인을 다룹니다. 비용 급증, 원격 분석 볼륨, 샘플링이 작동하지 않음, 데이터 한도, 높은 수집 또는 예기치 않은 청구와 관련된 문제를 해결하는 경우에 특히 유용합니다. 시작하려면 Application Insights에서 높은 데이터 수집 문제 해결을 참조하세요.
가격 책정 계획을 설정하려면 터미널에서 다음 Azure CLI 명령 중 하나를 실행하고 자리 표시자를 <log-analytics-workspace-name>
<azure-region-name>
바꾸고(해당하는 경우) <capacity-reservation-in-gb>
특정 값으로 바꿉니다.
종량제
az monitor log-analytics workspace update --resource-group <resource-group-name> --workspace-name <log-analytics-workspace-name> --set PerGB2018
약정 계층
az monitor log-analytics workspace update --resource-group <resource-group-name> --workspace-name <log-analytics-workspace-name> --set CapacityReservation --level <capacity-reservation-in-gb>
명령에 대한 az monitor log-analytics workspace update
자세한 내용은 Azure CLI 설명서를 참조하세요.
가격 책정 계획을 설정하려면 터미널에서 다음 Azure PowerShell 명령 중 하나를 실행하고 자리 표시자를 <log-analytics-workspace-name>
<azure-region-name>
바꾸고(해당하는 경우) <capacity-reservation-in-gb>
특정 값으로 바꿉니다.
종량제
Set-AzOperationalInsightsWorkspace -ResourceGroupName <resource-group-name> -Name <log-analytics-workspace-name> -Sku perb2018
약정 계층
Set-AzOperationalInsightsWorkspace -ResourceGroupName <resource-group-name> -Name <log-analytics-workspace-name> -Sku capacityreservation -SkuCapacity <capacity-reservation-in-gb>
명령에 대한 Set-AzOperationalInsightsWorkspace
자세한 내용은 Azure PowerShell 설명서를 참조하세요.
REST API를 사용하여 가격 책정 계획을 설정하려면 다음 요청 중 하나를 사용하고 자리 표시자<subscription-id>
, <resource-group-name>
, <log-analytics-workspace-name>
<access-token>
및(해당하는 경우) <capacity-reservation-in-gb>
특정 값으로 바꿉니다.
종량제
PUT https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>/pricingPlans/current?api-version=2017-10-01
Content-Type: application/json
Authorization: Bearer <access-token>
{
"properties": {
"sku": {
"name": "pergb2018"
}
}
}
약정 계층
PUT https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.OperationalInsights/workspaces/<log-analytics-workspace-name>/pricingPlans/current?api-version=2017-10-01
Content-Type: application/json
Authorization: Bearer <access-token>
{
"properties": {
"sku": {
"name": "capacityreservation",
"capacityReservationLevel": <capacity-reservation-in-gb>
}
}
}
REST API를 사용하여 가격 책정 계획을 설정하는 방법에 대한 자세한 내용은 REST API 설명서를 참조하세요.
Bicep을 사용하여 가격 책정 계획을 설정하려면 다음 코드를 템플릿에 붙여넣고, 자리 표시자 <log-analytics-workspace-name>
, <azure-region-name>
를 특정 값으로 대체하십시오. 약정 계층에 대해서는 <capacity-reservation-in-gb>
또한 대체하십시오.
종량제
param workspaceName string = '<log-analytics-workspace-name>'
param workspaceRegion string = '<azure-region-name>'
resource logAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@2020-08-01' = {
name: workspaceName
___location: workspaceRegion
properties: {
sku: {
name: 'pergb2018'
}
}
}
약정 계층
param workspaceName string = '<log-analytics-workspace-name>'
param workspaceRegion string = '<azure-region-name>'
param capacityReservationLevel int = '<capacity-reservation-in-gb>'
resource logAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@2020-08-01' = {
name: workspaceName
___location: workspaceRegion
properties: {
sku: {
name: 'capacityreservation'
capacityReservationLevel: capacityReservationLevel
}
}
}
Bicep을 사용하여 리소스를 Microsoft.OperationalInsights/workspaces
업데이트하는 방법에 대한 자세한 내용은 템플릿 설명서를 참조하세요.
ARM 템플릿을 사용하여 가격 계획을 설정하려면, 다음 코드를 템플릿에 붙여넣고 자리 표시자 <log-analytics-workspace-name>
, <azure-region-name>
, 그리고 약정 계층에 대해서는 <capacity-reservation-in-gb>
를 특정 값으로 바꿉니다.
종량제
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"workspaceName": {
"type": "string",
"defaultValue": "<log-analytics-workspace-name>"
},
"workspaceRegion": {
"type": "string",
"defaultValue": "<azure-region-name>"
}
},
"resources": [
{
"name": "[parameters('workspaceName')]",
"type": "Microsoft.OperationalInsights/workspaces",
"apiVersion": "2020-08-01",
"___location": "[parameters('workspaceRegion')]",
"properties": {
"sku": {
"name": "pergb2018"
}
}
}
]
}
약정 계층
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"workspaceName": {
"type": "string",
"defaultValue": "<log-analytics-workspace-name>"
},
"workspaceRegion": {
"type": "string",
"defaultValue": "<azure-region-name>"
},
"capacityReservationLevel": {
"type": "int",
"defaultValue": <capacity-reservation-in-gb>
}
},
"resources": [
{
"name": "[parameters('workspaceName')]",
"type": "Microsoft.OperationalInsights/workspaces",
"apiVersion": "2020-08-01",
"___location": "[parameters('workspaceRegion')]",
"properties": {
"sku": {
"name": "capacityreservation",
"capacityReservationLevel": "[parameters('capacityReservationLevel')]"
}
}
}
]
}
ARM 템플릿을 사용하여 리소스를 Microsoft.OperationalInsights/workspaces
업데이트하는 방법에 대한 자세한 내용은 템플릿 설명서를 참조하세요.
IP 마스킹 사용 안 함
기본적으로 Application Insights는 IP 주소를 저장하지 않습니다. IP 마스킹을 사용하지 않도록 설정하는 방법을 알아보려면 지리적 위치 및 IP 주소 처리를 참조하세요.
추가 리소스 만들기
가용성 테스트 생성
기본 설정으로 표준 가용성 테스트를 만들려면 터미널에서 다음 Azure CLI 명령을 실행하고 자리 표시자<resource-group-name>
, <azure-region-name>
, <web-test-name>
, <url>
<subscription-id>
및 <application-insights-resource-name>
특정 값으로 바꿉니다.
az monitor app-insights web-test create --resource-group <resource-group-name> \
--___location <azure-region-name> \
--web-test-kind standard \
--name <web-test-name> \
--defined-web-test-name <web-test-name> \
--request-url <url> \
--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/<subscription-id>/resourceGroups/<resource-group-name>/providers/microsoft.insights/components/<application-insights-resource-name>=Resource
명령에 대한 az monitor app-insights web-test create
자세한 내용은 Azure CLI 설명서를 참조하세요.
참고
웹 테스트 영역(-___location
)은 여러 영역을 선택할 수 있는 지리적 위치(-locations
복수 형식)와 다릅니다. 웹 -___location
테스트가 생성되고 호스트되는 Azure 지역을 참조하는 반면 -locations
웹 테스트가 실행되는 지리적 위치 또는 위치를 참조합니다. 모든 지리적 위치의 전체 목록은 Application Insights 가용성 테스트를 참조하세요.
기본 설정을 사용하여 표준 가용성 테스트를 만들려면 터미널에서 다음 Azure PowerShell 명령을 실행하고 자리 표시자<resource-group-name>
, <azure-region-name>
, <web-test-name>
, <url>
<subscription-id>
및 <application-insights-resource-name>
특정 값으로 바꿉니다.
$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"
New-AzApplicationInsightsWebTest -ResourceGroupName <resource-group-name> `
-Location <azure-region-name> `
-Name <web-test-name> `
-TestName <web-test-name> `
-Kind standard `
-RequestUrl <url> `
-RetryEnabled `
-RuleSslCheck `
-RuleSslCertRemainingLifetimeCheck 7 `
-Frequency 300 `
-GeoLocation $geoLocation `
-RequestHttpVerb GET `
-Timeout 120 `
-RuleExpectedHttpStatusCode 200 `
-Enabled `
-Tag @{"hidden-link:/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/microsoft.insights/components/<application-insights-resource-name>" = "Resource"}
명령에 대한 New-AzApplicationInsightsWebTest
자세한 내용은 Azure PowerShell 설명서를 참조하세요.
참고
웹 테스트 지역(-Location
)은 여러 지역을 선택할 수 있는 지리적 위치(-GeoLocation
)와 다릅니다.
-Location
는 웹 테스트가 생성되고 호스트되는 Azure 지역을 참조하는 반면 -GeoLocation
웹 테스트가 실행되는 지리적 위치 또는 위치를 참조합니다. 모든 지리적 위치의 전체 목록은 Application Insights 가용성 테스트를 참조하세요.
REST API를 사용하여 기본 설정으로 표준 가용성 테스트를 만들려면 다음 요청을 사용하고 자리 표시자<subscription-id>
, <resource-group-name>
, <application-insights-resource-name>
, <web-test-name>
, <access-token>
<azure-region-name>
및 <url>
특정 값으로 바꿉니다.
PUT https://management.azure.com/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/microsoft.insights/components/<application-insights-resource-name>/webtests/<web-test-name>?api-version=2021-08-01
Content-Type: application/json
Authorization: Bearer <access-token>
{
"___location": "<azure-region-name>",
"properties": {
"Name": "<web-test-name>",
"SyntheticMonitorId": "<web-test-name>",
"Enabled": true,
"Frequency": 300,
"Timeout": 120,
"Kind": "standard",
"RetryEnabled": true,
"Request": {
"RequestUrl": "<url>",
"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"
}
]
},
"Tags": {
"hidden-link:/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/microsoft.insights/components/<application-insights-resource-name>": "Resource"
}
}
참고
웹 테스트 영역(-___location
)은 여러 영역을 선택할 수 있는 지리적 위치(-Locations
복수 형식)와 다릅니다.
-___location
는 웹 테스트가 생성되고 호스트되는 Azure 지역을 참조하는 반면 -Locations
웹 테스트가 실행되는 지리적 위치 또는 위치를 참조합니다. 모든 지리적 위치의 전체 목록은 Application Insights 가용성 테스트를 참조하세요.
REST API를 사용하여 웹 테스트를 만들고 구성하는 방법에 대한 자세한 내용은 REST API 설명서를 참조하세요.
Bicep을 사용하여 기본 설정으로 표준 가용성 테스트를 만들려면 템플릿에 다음 코드를 추가하고 자리 표시자<web-test-name>
, <azure-region-name>
, <subscription-id>
, <resource-group-name>
<application-insights-resource-name>
및 <url>
특정 값으로 바꿉니다.
resource webTest 'microsoft.insights/webtests@2022-06-15' = {
name: '<web-test-name>'
___location: '<azure-region-name>'
tags: {
'hidden-link:/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/microsoft.insights/components/<application-insights-resource-name>': 'Resource'
}
properties: {
SyntheticMonitorId: '<web-test-name>'
Name: '<web-test-name>'
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: '<url>'
HttpVerb: 'GET'
}
ValidationRules: {
ExpectedHttpStatusCode: 200
SSLCheck: true
SSLCertRemainingLifetimeCheck: 7
}
}
}
참고
웹 테스트 지역(___location
)은 여러 지역을 선택할 수 있는 지리적 위치(Locations
)와 다릅니다.
___location
는 웹 테스트가 생성되고 호스트되는 Azure 지역을 참조하는 반면 Locations
웹 테스트가 실행되는 지리적 위치 또는 위치를 참조합니다. 모든 지리적 위치의 전체 목록은 Application Insights 가용성 테스트를 참조하세요.
Bicep을 사용하여 가용성 테스트를 만드는 방법에 대한 자세한 내용은 Microsoft.Insights 웹 테스트를 참조하세요.
ARM 템플릿을 사용하여 기본 설정으로 표준 가용성 테스트를 만들려면 템플릿에 다음 코드를 추가하고 자리 표시자<web-test-name>
, <azure-region-name>
, <subscription-id>
, <resource-group-name>
<application-insights-resource-name>
및 <url>
특정 값으로 바꿉니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "microsoft.insights/webtests",
"apiVersion": "2022-06-15",
"name": "<web-test-name>",
"___location": "<azure-region-name>",
"tags": {
"hidden-link:/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/microsoft.insights/components/<application-insights-resource-name>": "Resource"
},
"properties": {
"SyntheticMonitorId": "<web-test-name>",
"Name": "<web-test-name>",
"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": "<url>",
"HttpVerb": "GET"
},
"ValidationRules": {
"ExpectedHttpStatusCode": 200,
"SSLCheck": true,
"SSLCertRemainingLifetimeCheck": 7
}
}
}
]
}
참고
웹 테스트 지역(___location
)은 여러 지역을 선택할 수 있는 지리적 위치(Locations
)와 다릅니다.
___location
는 웹 테스트가 생성되고 호스트되는 Azure 지역을 참조하는 반면 Locations
웹 테스트가 실행되는 지리적 위치 또는 위치를 참조합니다. 모든 지리적 위치의 전체 목록은 Application Insights 가용성 테스트를 참조하세요.
ARM 템플릿을 사용하여 가용성 테스트를 만드는 방법에 대한 자세한 내용은 Microsoft.Insights 웹 테스트를 참조하세요.
메트릭 경고 추가
팁 (조언)
각 Application Insights 리소스에는 기본 제공되는 메트릭이 제공됩니다. 별도의 구성 요소가 동일한 Application Insights 리소스에 대해 보고하는 경우 이러한 메트릭에 대해 경고하는 것이 적합하지 않을 수 있습니다.
메트릭 경고 만들기를 자동화하려면 메트릭 경고 템플릿 문서를 참조하세요.
더 많은 Application Insights 리소스 만들기
얼마나 많은 Application Insights 리소스를 배포해야 하나요?
웹 애플리케이션의 다음 버전을 개발할 때 새 버전과 이미 릴리스된 버전의 Application Insights 원격 분석이 혼동되지 않도록 하려고 합니다.
혼동을 방지하기 위해 서로 다른 개발 단계의 원격 분석을 별도의 연결 문자열과 함께 별도의 Application Insights 리소스에 보냅니다.
시스템이 Azure Cloud Services의 인스턴스인 경우 별도의 연결 문자열을 설정하는 다른 방법이 있습니다.
단일 Application Insights 리소스를 사용하는 경우
단일 Application Insights 리소스를 사용합니다.
- 함께 배포되고 일반적으로 동일한 팀에서 개발하고 관리하는 애플리케이션에 대한 DevOps/ITOps 관리를 간소화합니다.
- 기본적으로 응답 시간, 실패율 등 핵심 성과 지표를 대시보드에 중앙 집중화합니다. 필요한 경우 메트릭 탐색기에서 역할 이름별로 분류합니다.
- 애플리케이션 구성 요소 간에 서로 다른 Azure 역할 기반 액세스 제어 관리가 필요하지 않은 경우.
- 동일한 메트릭 경고 조건, 연속 내보내기 및 구성 요소 전체의 청구/할당량 관리로 충분할 경우.
- API 키가 모든 구성 요소의 데이터에 동일하게 액세스하는 것이 허용되고 10개의 API 키가 모든 구성 요소의 요구 사항을 충족하는 경우.
- 동일한 스마트 검색 및 작업 항목 통합 설정이 모든 역할에 적합한 경우.
참고
여러 Application Insights 리소스를 통합하려는 경우 기존 애플리케이션 구성 요소를 통합된 새 Application Insights 리소스로 가리킬 수 있습니다. 이전 리소스에 저장된 원격 분석은 새 리소스로 전송되지 않습니다. 비즈니스 연속성을 위해 새 리소스에 충분한 원격 분석이 있는 경우에만 이전 리소스를 삭제합니다.
기타 고려 사항
포털 환경을 활성화하려면 사용자 지정 코드를 추가하여 Cloud_RoleName 특성에 의미 있는 값을 할당합니다. 이러한 값이 없으면 포털 함수가 작동하지 않습니다.
Azure Service Fabric 애플리케이션 및 클래식 클라우드 서비스의 경우 SDK는 Azure 역할 환경에서 읽어 서비스를 자동으로 구성합니다. 다른 앱 형식의 경우 일반적으로 명시적으로 설정해야 합니다.
라이브 메트릭은 역할 이름별로 데이터를 분할할 수 없습니다.
버전 및 릴리스 추적
새 버전의 애플리케이션을 게시할 때 원격 분석을 다른 빌드와 분리할 수 있어야 합니다.
검색 및 메트릭 탐색기 결과를 필터링할 수 있도록 애플리케이션 버전 속성을 설정할 수 있습니다.
애플리케이션 버전 속성은 몇 가지 다른 방법으로 설정할 수 있습니다.
옵션 1: 직접 버전 설정
애플리케이션의 초기화 코드에 줄을 telemetryClient.Context.Component.Version = typeof(MyProject.MyClass).Assembly.GetName().Version;
추가합니다.
모든 TelemetryClient
인스턴스가 일관되게 설정되도록 하려면 해당 줄을 원격 분석 이니셜라이저에 래핑합니다.
옵션 2: 버전 BuildInfo.config
설정(ASP.NET 전용)
Application Insights 웹 모듈은 노드에서 BuildLabel
버전을 선택합니다. 프로젝트에 이 파일을 포함하고 솔루션 탐색기에서 항상 복사 속성을 설정합니다.
<?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>
Microsoft 빌드 엔진에서 BuildInfo.config
를 자동으로 생성합니다.
.csproj
파일에 다음 줄을 추가합니다.
<PropertyGroup>
<GenerateBuildInfoConfigFile>true</GenerateBuildInfoConfigFile>
<IncludeServerNameInBuildInfo>true</IncludeServerNameInBuildInfo>
</PropertyGroup>
이 단계에서는 yourProjectName.BuildInfo.config
이라는 파일을 생성합니다. 게시 프로세스는 이름을 BuildInfo.config
로 바꿉니다.
Visual Studio로 빌드할 때 빌드 레이블에는 자리 표시자 (*AutoGen_...*)
이 포함되어 있습니다. Microsoft 빌드 엔진을 사용하여 빌드하면 자리 표시자가 올바른 버전 번호로 채워집니다.
Microsoft Build Engine이 버전 번호를 생성하도록 허용하려면 1.0.*
에서 AssemblyReference.cs
과 같이 버전을 설정합니다.
릴리스 주석
Azure DevOps를 사용하는 경우 새 버전을 릴리스할 때마다 주석 표식이 차트에 추가됩니다.
리소스 만들기 프로세스 자동화
Azure Resource Manager에서 Bicep 또는 JSON 템플릿을 사용하여 리소스 만들기 프로세스를 자동화할 수 있습니다. 여러 리소스를 함께 패키지하여 하나의 배포에서 만들 수 있습니다. 예를 들어 가용성 테스트, 메트릭 경고 및 진단 설정을 사용하여 Application Insights 리소스를 만들어 Azure Storage 계정에 원격 분석을 보낼 수 있습니다.
Azure Portal에서 템플릿 생성
기존 리소스에서 템플릿을 생성할 수 있습니다.
Application Insights만
- Azure Portal에서 Application Insights 리소스로 이동합니다.
- 왼쪽 탐색 모음의 Automation 아래에 나열된 내보내기 템플릿을 엽니다.
- (선택 사항): 고유한 매개 변수를 사용하려면 매개 변수 포함을 선택 취소합니다.
- 템플릿 파일을 다운로드하거나 Azure Portal에서 직접 배포합니다.
여러 리소스
- Application Insights 리소스의 리소스 그룹으로 이동합니다.
-
개요 창에서 템플릿에 포함할 모든 리소스를 표시한 다음 위쪽 탐색 모음에서 템플릿 내보내기를 선택합니다.
- (선택 사항): 고유한 매개 변수를 사용하려면 매개 변수 포함을 선택 취소합니다.
- 템플릿 파일을 다운로드하거나 Azure Portal에서 직접 배포합니다.
템플릿을 처음부터 만들기
ARM 템플릿을 처음부터 만드는 방법을 알아보려면 템플릿을 만들고, 리소스를 추가하고, 매개 변수를 추가하는 등의 자습서가 포함된 ARM 템플릿설명서를 방문하세요.
Application Insights, 가용성 테스트, 메트릭 경고, 진단 설정 및 기타 리소스에 사용할 수 있는 속성은 참조>> 노드 아래의 Azure 리소스 참조 설명서에서 찾을 수 있습니다.
다음 단계