Application Insights はLog Analytics と統合され、テレメトリを共通の Log Analytics ワークスペースに送信します。 このセットアップにより、Log Analytics 機能へのフル アクセスが提供され、ログが 1 か所に統合され、 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'というエラー メッセージが表示されます。
Bicep テンプレートは、Azure CLI、Azure PowerShell、および Azure portal を使用してデプロイできます。 追加の要件については、それぞれのタブを確認してください。
ARM テンプレートは、Azure CLI、Azure PowerShell、および Azure portal を使用してデプロイできます。 追加の要件については、それぞれのタブを確認してください。
Application Insights リソースの作成
注意
リソースの作成時に既存の Log Analytics ワークスペースに接続しない場合は、Application Insights リソースと共に新しい Log Analytics リソースが自動的に作成されます。
ワークスペース ベースの Application Insights リソースを作成または更新し、別のサブスクリプションのLog Analytics ワークスペースにリンクする場合、操作を実行する ID には、Microsoft.OperationalInsights/workspaces/sharedKeys/actionのターゲット ワークスペースに対するアクセス許可が必要です。 この要件は、両方のサブスクリプションが同じMicrosoft Entra テナントにある場合でも適用されます。 ID にこのアクセス許可がない場合、 403 (Forbidden) エラーで操作が失敗する可能性があります。 ターゲット ワークスペースでこのアクションを含む最小特権ロールを付与するか、Application Insights リソースと同じサブスクリプション内のワークスペースを使用します。
-
Azure portal にサインインします。
-
[リソースの作成] を選択します。
- [ 監視] と [診断] カテゴリを開き、[ Application Insights] を選択します。
- すべての関連情報を入力し、確認のうえ、Application Insights リソースを作成します。
リソースを作成すると、対応するワークスペース情報が Application Insights の [概要 ] ウィンドウに表示されます。
青いリンク テキストを選び、関連する Log Analytics ワークスペースに移動します。ここでは、新しい統合ワークスペース クエリ環境を利用できます。
注意
Application Insights クラシックのリソース クエリ、ブック、ログ ベースのアラートについては、引き続き完全な下位互換性を提供します。
新しいワークスペース ベースのテーブル構造またはスキーマのクエリまたは表示を行うには、まず Log Analytics ワークスペースに移動する必要があります。 従来の Application Insights クエリ エクスペリエンスにアクセスするには、[Application Insights] ペインの [ログ (Analytics)] を選びます。
次のAzure CLI例では、az monitor app-insights コンポーネントの 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"
注意
Azure CLIコマンドは現在の CLI コンテキストからAzure Resource Manager エンドポイントを使用するため、コマンド構文で management.azure.com を指定する必要はありません。
次のAzure PowerShell例では、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
注意
Azure PowerShellコマンドレットは現在の Az コンテキストからAzure Resource Manager エンドポイントを使用するため、コマンドレット構文で management.azure.com を指定する必要はありません。
次の REST の例では、 Components REST API 操作を使用します。
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}?api-version={apiVersion}
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>"
}
}
次の Bicep の例では、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@<ApiVersion>' = {
name: resourceName
location: azureRegion
kind: 'web'
properties: {
Application_Type: 'web'
WorkspaceResourceId: workspaceResourceId
}
}
次の ARM (JSON) の例では、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": "<ApiVersion>",
"name": "[parameters('resourceName')]",
"location": "[parameters('azureRegion')]",
"kind": "web",
"properties": {
"Application_Type": "web",
"WorkspaceResourceId": "[variables('workspaceResourceId')]"
}
}
]
}
Application Insights リソースを作成したら、監視を構成します。
接続文字列を取得する
接続文字列は、テレメトリーデータと関連付けたいリソースを識別します。 また、これを使用して、リソースでテレメトリの宛先として使用するエンドポイントを変更できます。 接続文字列をコピーし、アプリケーションのコードまたは環境変数に追加する必要があります。
Application Insights リソースの接続文字列を取得するには:
- Azure portal に Application Insights のリソースを開きます。
- [要点] セクションの [概要] ウィンドウで、接続文字列を探します。
- 接続文字列をポイントすると、アイコンが表示され、クリップボードにコピーできます。
次のAzure CLI例では、az monitor app-insights コンポーネント show コマンドを使用します。
# Set variables
resourceGroupName="<ResourceGroupName>"
resourceName="<ResourceName>"
# Retrieve the Application Insights component
az monitor app-insights component show \
--resource-group "$resourceGroupName" \
--app "$resourceName"
JSON 応答で connectionString フィールドを探します。
次のAzure PowerShell例では、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
出力で、ConnectionString プロパティを探します。
次の REST の例では、 Components REST API 操作を使用します。
GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}?api-version={apiVersion}
Authorization: Bearer {accessToken}
JSON 応答で properties.connectionString フィールドを探します。
OpenTelemetry を使用したアプリケーションの監視
OpenTelemetry を使用したアプリケーション監視の場合は、適切な Azure Monitor OpenTelemetry Distro をインストールし、新しく作成したリソースに接続文字列をポイントします。
OpenTelemetry を使用してアプリケーション監視を設定する方法については、次の言語固有のドキュメントを参照してください。
自動インストルメンテーション
Azure Functions や Azure App Service などの監視サービスの場合は、最初に Application Insights リソースを作成してから、監視を有効にしたときにそれをポイントできます。 または、有効化プロセス中に新しい Application Insights リソースを作成することもできます。
関連するワークスペースを変更する
Application Insights リソースを作成したら、関連付けられている Log Analytics ワークスペースを変更できます。
重要
REST 呼び出し、ARM テンプレート、およびBicep テンプレートでは、作成または更新 (PUT) セマンティクスが使用されます。 これらのメソッドを使用して Application Insights コンポーネントを更新する場合は、保持する必要があるプロパティを含めます。 含まれていないプロパティは、リセットまたは削除される可能性があります。
Application Insights リソースで、プロパティ>ワークスペースの変更>Log Analytics ワークスペースを選択します。
次のAzure CLI例では、az monitor app-insights コンポーネントの更新 コマンドを使用します。
# 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"
次のAzure PowerShell例では、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
次の REST の例では、 Components REST API 操作を使用します。
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}?api-version={apiVersion}
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>"
}
}
次の Bicep の例では、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@<ApiVersion>' = {
name: resourceName
location: azureRegion
kind: 'web'
properties: {
Application_Type: 'web'
WorkspaceResourceId: workspaceResourceId
}
}
次の ARM (JSON) の例では、Microsoft.Insights コンポーネント リソースの種類を使用します。
{
"$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": "<ApiVersion>",
"name": "[parameters('resourceName')]",
"location": "[parameters('azureRegion')]",
"kind": "web",
"properties": {
"Application_Type": "web",
"WorkspaceResourceId": "[variables('workspaceResourceId')]"
}
}
]
}
テレメトリのエクスポート
従来の連続エクスポート機能は、ワークスペース ベースのリソースではサポートされていません。 代わりに、 診断設定を使用します。
Application Insights リソースで、 診断設定>診断設定の追加を選択します。
ストレージ アカウントにアーカイブするすべてのテーブルまたはテーブルのサブセットを選択できます。
イベント ハブにストリーミングすることもできます。
次のAzure CLI例では、az monitor diagnostic-settings create コマンドを使用します。 Application Insights リソースからストレージ アカウントにログとメトリックを送信する診断設定が作成されます。
# 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}]'
次のAzure PowerShell例では、New-AzDiagnosticSetting コマンドレットを使用します。 Application Insights リソースからストレージ アカウントにログとメトリックを送信する診断設定が作成されます。
# 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
次の REST の例では、 診断設定 REST API 操作を使用します。 Application Insights リソースからストレージ アカウントにログとメトリックを送信する診断設定が作成されます。
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/components/{resourceName}/providers/Microsoft.Insights/diagnosticSettings/{diagnosticSettingName}?api-version={apiVersion}
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
}
]
}
}
次の Bicep の例では、Microsoft.Insights diagnosticSettings リソースの種類を使用します。 Application Insights リソースからストレージ アカウントにログとメトリックを送信する診断設定が作成されます。
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@<ApiVersion>' existing = {
name: resourceName
}
var storageAccountId = '/subscriptions/${subscriptionId}/resourceGroups/${resourceGroupName}/providers/Microsoft.Storage/storageAccounts/${storageAccountName}'
resource diagnosticSetting 'Microsoft.Insights/diagnosticSettings@<ApiVersion>' = {
name: diagnosticSettingName
scope: applicationInsightsComponent
properties: {
storageAccountId: storageAccountId
logs: [
{
category: 'AppRequests'
enabled: true
}
]
metrics: [
{
category: 'AllMetrics'
enabled: true
}
]
}
}
次の ARM テンプレートの例では、Microsoft.Insights diagnosticSettings リソース タイプを使用します。 Application Insights リソースからストレージ アカウントにログとメトリックを送信する診断設定が作成されます。
{
"$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": "<ApiVersion>",
"name": "[format('{0}/Microsoft.Insights/{1}', parameters('resourceName'), parameters('diagnosticSettingName'))]",
"properties": {
"storageAccountId": "[variables('storageAccountId')]",
"logs": [
{
"category": "AppRequests",
"enabled": true
}
],
"metrics": [
{
"category": "AllMetrics",
"enabled": true
}
]
}
}
]
}
データ保有期間を設定する
次の Bicep の例では、Microsoft.OperationalInsights workspaces リソース タイプを使用します。 関連付けられているLog Analytics ワークスペースのデータ保持期間を設定します。
param workspaceName string = '<WorkspaceName>'
param azureRegion string = '<AzureRegion>'
param retentionInDays int = <RetentionInDays>
resource logAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@<ApiVersion>' = {
name: workspaceName
location: azureRegion
properties: {
retentionInDays: retentionInDays
}
}
次の ARM (JSON) の例では、Microsoft.OperationalInsights/workspaces リソース タイプを使用しています。 関連付けられているLog Analytics ワークスペースのデータ保持期間を設定します。
{
"$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": "<ApiVersion>",
"name": "[parameters('workspaceName')]",
"location": "[parameters('azureRegion')]",
"properties": {
"retentionInDays": "[parameters('retentionInDays')]"
}
}
]
}
1 日の上限を設定する
Application Insights と基になる Log Analytics ワークスペースの両方に対して、日次上限を個別に設定する必要があります。 有効な日次上限は、2 つの設定の最小値です。
注意
現時点では、Azure CLI を使用して Application Insights の日次上限を設定する方法は提供されていません。
Log Analytics:
次のAzure CLI例では、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
次のAzure PowerShell例では、Set-AzApplicationInsightsDailyCap および Set-AzOperationalInsightsWorkspace コマンドレットを使用します。
Application Insights:
次のAzure PowerShell例では、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:
次のAzure PowerShell例では、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
注意
現在、Azureでは、REST API を使用して Application Insights の日次上限を設定する方法は提供されていません。
Log Analytics:
次の REST の例では、ワークスペース REST API 操作 を 使用します。
PATCH https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}?api-version={apiVersion}
Authorization: Bearer {accessToken}
Content-Type: application/json
{
"properties": {
"workspaceCapping": {
"dailyQuotaGb": <DailyCapInGb>
}
}
}
注意
現時点では、Azure では、Bicep テンプレートを使用して Application Insights の日次上限を設定する方法は提供されていません。
Log Analytics:
次の Bicep の例では、Microsoft.OperationalInsights workspaces リソース タイプを使用します。
param workspaceName string = '<WorkspaceName>'
param azureRegion string = '<AzureRegion>'
param dailyCapInGb int
resource logAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@<ApiVersion>' = {
name: workspaceName
location: azureRegion
properties: {
workspaceCapping: {
dailyQuotaGb: dailyCapInGb
}
}
}
注意
現時点では、Azure では、ARM テンプレートを使用して Application Insights の日次上限を設定する方法は提供されていません。
Log Analytics:
次の ARM (JSON) の例では、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": "<ApiVersion>",
"name": "[parameters('workspaceName')]",
"location": "[parameters('azureRegion')]",
"properties": {
"workspaceCapping": {
"dailyQuotaGb": "[parameters('dailyCapInGb')]"
}
}
}
]
}
料金プランを設定する
Application Insights リソースの価格プランは、関連付けられている Log Analytics ワークスペースで設定できます。 使用可能な価格プランの詳細については、「 Azure Monitor ログのコストの計算とオプション」を参照してください。
注意
Application Insights で予期しない料金や高コストが表示される場合は、このガイドが役立ちます。 テレメトリの量が多い、データ インジェストの急増、サンプリングが正しく構成されていないなどの一般的な原因について説明します。 コストの急増、テレメトリボリューム、サンプリングが機能しない、データ上限、高インジェスト、または予期しない課金に関連する問題をトラブルシューティングする場合に特に便利です。 開始するには、「 Application Insights での高いデータ インジェストのトラブルシューティング」を参照してください。
次のAzure CLI例では、az monitor log-analytics workspace update コマンドを使用します。
従量課金制:
# 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
コミットメント レベル:
# 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"
次のAzure PowerShell例では、Set-AzOperationalInsightsWorkspace コマンドレットを使用します。
従量課金制:
# 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
コミットメント レベル:
# 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
次の REST の例では、 ワークスペース REST API 操作を使用します。 価格プランは、ワークスペース自体の sku プロパティに格納されます。
従量課金制:
PATCH https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}?api-version={apiVersion}
Authorization: Bearer {accessToken}
Content-Type: application/json
{
"properties": {
"sku": {
"name": "pergb2018"
}
}
}
コミットメント レベル:
PATCH https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}?api-version={apiVersion}
Authorization: Bearer {accessToken}
Content-Type: application/json
{
"properties": {
"sku": {
"name": "capacityreservation",
"capacityReservationLevel": <CapacityReservationInGb>
}
}
}
以下の Bicep の例では、Microsoft.OperationalInsights workspaces リソース タイプを使用します。
従量課金制:
param workspaceName string = '<WorkspaceName>'
param azureRegion string = '<AzureRegion>'
resource logAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@<ApiVersion>' = {
name: workspaceName
location: azureRegion
properties: {
sku: {
name: 'pergb2018'
}
}
}
コミットメント レベル:
param workspaceName string = '<WorkspaceName>'
param azureRegion string = '<AzureRegion>'
param capacityReservationInGb int
resource logAnalyticsWorkspace 'Microsoft.OperationalInsights/workspaces@<ApiVersion>' = {
name: workspaceName
location: azureRegion
properties: {
sku: {
name: 'capacityreservation'
capacityReservationLevel: capacityReservationInGb
}
}
}
次の ARM (JSON) の例では、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>"
}
},
"resources": [
{
"type": "Microsoft.OperationalInsights/workspaces",
"apiVersion": "<ApiVersion>",
"name": "[parameters('workspaceName')]",
"location": "[parameters('azureRegion')]",
"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": "<WorkspaceName>"
},
"azureRegion": {
"type": "string",
"defaultValue": "<AzureRegion>"
},
"capacityReservationInGb": {
"type": "int"
}
},
"resources": [
{
"type": "Microsoft.OperationalInsights/workspaces",
"apiVersion": "<ApiVersion>",
"name": "[parameters('workspaceName')]",
"location": "[parameters('azureRegion')]",
"properties": {
"sku": {
"name": "capacityreservation",
"capacityReservationLevel": "[parameters('capacityReservationInGb')]"
}
}
}
]
}
IP マスクを無効にする
既定では、Application Insights には IP アドレスは格納されません。 IP マスクを無効にする方法については、 位置情報と IP アドレスの処理に関するページを参照してください。
追加のリソースを作成する
可用性テストを作成する
次のAzure CLI例では、az monitor app-insights web-test create コマンドを使用します。 既定の設定で標準の可用性テストが作成されます。
# 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"
注意
Web テスト領域 (--location) は、複数を選択できる地理的な場所 (--locations、複数形に注意してください) とは異なります。
--location は Web テストが作成およびホストされる Azure リージョンを指し、 --locations は Web テストの実行元となる地理的な場所を指します。 すべての地理的な場所の完全な一覧については、 Application Insights の可用性テストに関するページを参照してください。
次のAzure PowerShell例では、New-AzApplicationInsightsWebTest コマンドレットを使用します。 既定の設定で標準の可用性テストが作成されます。
# 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
注意
Web テストリージョン (-Location) は、複数を選択できる地理的な場所 (-GeoLocation) とは異なります。
-Location は Web テストが作成およびホストされる Azure リージョンを指し、 -GeoLocation は Web テストの実行元となる地理的な場所を指します。 すべての地理的な場所の完全な一覧については、 Application Insights の可用性テストに関するページを参照してください。
次の REST の例では、 Web テスト REST API 操作を使用します。 既定の設定で標準の可用性テストが作成されます。
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/webtests/{webTestName}?api-version={apiVersion}
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" }
]
}
}
注意
Web テスト領域 (location) は、複数を選択できる地理的な場所 (Locations、複数形に注意してください) とは異なります。
location は Web テストが作成およびホストされる Azure リージョンを指し、 Locations は Web テストの実行元となる地理的な場所を指します。 すべての地理的な場所の完全な一覧については、 Application Insights の可用性テストに関するページを参照してください。
次の Bicep の例では、Microsoft.Insights webtests リソースの種類を使用します。 既定の設定で標準の可用性テストが作成されます。
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@<ApiVersion>' = {
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
}
}
}
注意
Web テストリージョン (location) は、複数を選択できる地理的な場所 (Locations) とは異なります。
location は Web テストが作成およびホストされる Azure リージョンを指し、 Locations は Web テストの実行元となる地理的な場所を指します。 すべての地理的な場所の完全な一覧については、 Application Insights の可用性テストに関するページを参照してください。
Bicep を使用した可用性テストの作成の詳細については、 Microsoft.Insights Webtests を参照してください。
次の ARM (JSON) の例では、Microsoft.Insights webtests リソース タイプを使用します。 既定の設定で標準の可用性テストが作成されます。
{
"$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": "<ApiVersion>",
"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
}
}
}
]
}
注意
Web テストリージョン (location) は、複数を選択できる地理的な場所 (Locations) とは異なります。
location は Web テストが作成およびホストされる Azure リージョンを指し、 Locations は Web テストの実行元となる地理的な場所を指します。 すべての地理的な場所の完全な一覧については、 Application Insights の可用性テストに関するページを参照してください。
メトリック アラートの追加
ヒント
各 Application Insights リソースには、すぐに使用できるメトリックが付属しています。 分離されたコンポーネントが同じ Application Insights リソースに報告している場合は、これらのメトリックでアラートを生成しても意味がない場合があります。
メトリック アラートの作成を自動化するには、「メトリック アラート テンプレート」に関する記事を参照してください。
追加で Application Insights リソースを作成する
デプロイする Application Insights リソースは何個必要ですか?
Web アプリケーションの次のバージョンを開発する際に、新しいバージョンの Application Insights テレメトリとリリース済みのバージョンのテレメトリが混在することがないように設定します。
混乱を避けるために、個別の接続文字列を使用して、異なる開発段階のテレメトリを個別の Application Insights リソースに送信します。
システムが Azure Cloud Services のインスタンスである場合は、個別の接続文字列を設定する別の方法があります。
単一の Application Insights リソースを使用するケース
以下の場合、単一の Application Insights リソースを使用します。
- 一緒にデプロイされ、通常は同じチームによって開発および管理されるアプリケーションの DevOps/ITOps 管理を合理化する。
- 既定ではダッシュボードで応答時間や失敗率などの主要業績評価指標を一元管理する。 必要に応じ、メトリック エクスプローラーでロール名ごとにセグメント化する。
- アプリケーション コンポーネント間で異なる Azure ロールベースのアクセス制御を管理する必要がない場合。
- 同じメトリック アラート条件、連続エクスポート、コンポーネント間の課金/クォータ管理で十分な場合。
- 1 つのAPI キーがすべてのコンポーネントのデータに同様にアクセスしても問題なく、10 個の API キーがすべてのコンポーネントのニーズを満たす場合。
- すべてのロールで同じスマート検出と作業項目の統合を設定することが適切な場合。
注意
複数の Application Insights リソースを統合する場合、統合後の新しい Application Insights リソースに既存のアプリケーション コンポーネントをさし向けることができます。 古いリソースに格納されているテレメトリは、新しいリソースに転送されません。 ビジネスを継続するのに十分なテレメトリが新しいリソースにある場合にのみ、古いリソースを削除するようにしてください。
その他の考慮事項
ポータル エクスペリエンスを有効化するには、カスタム コードを追加して、Cloud_RoleName 属性に意味のある値を割り当てます。 これらの値がないと、ポータル機能は機能しません。
Azure Service Fabric アプリケーションと従来のクラウド サービスについては、SDK が Azure ロール環境からこれらのサービスを読み取ることで、自動的に設定します。 他の種類のアプリの場合、通常は明示的に設定する必要があります。
ライブ メトリックは、ロール名ごとにデータを分割できません。
バージョンおよびリリースの追跡
アプリケーションの新しいバージョンを発行するときに、テレメトリを異なるビルドから分離できるようにする必要があります。
アプリケーション バージョン プロパティを設定して、検索とメトリック エクスプローラーの結果をフィルター処理できます。
[Application Version](アプリケーション バージョン) プロパティを設定するには複数の方法があります。
オプション 1: バージョンを直接設定する
OpenTelemetry ベースのインストルメンテーションの場合は、 リソース属性を使用してアプリケーション メタデータを一貫して設定します。
オプション 2:BuildInfo.configでバージョンを設定する (ASP.NET のみ)
Application Insights Web モジュールは、 BuildLabel ノードからバージョンを取得します。 このファイルをプロジェクトに追加し、ソリューション エクスプローラーで [Copy Always](常にコピーする) プロパティを設定します。
<?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 テンプレートを使用して自動化できます。 複数のリソースをまとめてパッケージ化して、1 つのデプロイで作成できます。 たとえば、可用性テスト、メトリック アラート、診断設定を使用して Application Insights リソースを作成し、テレメトリを Azure Storage アカウントに送信できます。
Azure portal でテンプレートを生成する
既存のリソースからテンプレートを生成できます。
Application Insights のみ
- Azure portal で Application Insights リソースに移動します。
- 左側のナビゲーション バーの [オートメーション] の下に一覧表示されているエクスポート テンプレートを開きます。
- (省略可能): 独自のパラメーターを使用するには、[パラメーターを 含める] をオフにします。
- テンプレート ファイルをダウンロードするか、Azure portal で直接デプロイします。
複数のリソース
- Application Insights リソースのリソース グループに移動します。
- [ 概要 ] ウィンドウで、テンプレートに含めるすべてのリソースをマークし、上部のナビゲーション バーで [ テンプレートのエクスポート ] を選択します。
- (省略可能): 独自のパラメーターを使用するには、[パラメーターを 含める] をオフにします。
- テンプレート ファイルをダウンロードするか、Azure portal で直接デプロイします。
テンプレートをゼロから作成する
ARM テンプレートを最初から作成する方法については、 ARM テンプレートのドキュメント を参照してください。このドキュメントには、 テンプレートの作成、 リソースの追加、パラメーターの 追加などのチュートリアルが含まれています。
Application Insights、可用性テスト、メトリック アラート、診断設定、およびその他のリソースで使用できるプロパティは、Azure リソースリファレンス ドキュメントの>> ノードにあります。
次のステップ