Przykłady szablonów usługi Resource Manager dla zapytań dzienników w usłudze Azure Monitor
Ten artykuł zawiera przykładowe szablony usługi Azure Resource Manager do tworzenia i konfigurowania zapytań dzienników w usłudze Azure Monitor. Każdy przykład zawiera plik szablonu i plik parametrów z przykładowymi wartościami, które mają być udostępniane szablonowi.
Uwaga
Zobacz Przykłady usługi Azure Resource Manager dla usługi Azure Monitor, aby uzyskać listę dostępnych przykładów i wskazówki dotyczące wdrażania ich w ramach subskrypcji platformy Azure.
Odwołania do szablonów
Proste zapytanie dziennika
Poniższy przykład dodaje zapytanie dziennika do obszaru roboczego usługi Log Analytics.
Plik szablonu
@description('The name of the workspace.')
param workspaceName string
@description('The location of the resources.')
param location string = resourceGroup().location
resource workspace 'Microsoft.OperationalInsights/workspaces@2021-12-01-preview' = {
name: workspaceName
location: location
}
resource savedSearch 'Microsoft.OperationalInsights/workspaces/savedSearches@2020-08-01' = {
parent: workspace
name: 'VMSS query'
properties: {
etag: '*'
displayName: 'VMSS Instance Count'
category: 'VMSS'
query: 'Event | where Source == "ServiceFabricNodeBootstrapAgent" | summarize AggregatedValue = count() by Computer'
version: 1
}
}
Plik parametrów
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"workspaceName": {
"value": "MyWorkspace"
},
"location": {
"value": "eastus"
}
}
}
Zapytanie dziennika jako funkcja
Poniższy przykład dodaje zapytanie dziennika jako funkcję do obszaru roboczego usługi Log Analytics.
Plik szablonu
@description('The name of the workspace.')
param workspaceName string
@description('The location of the resources.')
param location string = resourceGroup().location
resource workspace 'Microsoft.OperationalInsights/workspaces@2021-12-01-preview' = {
name: workspaceName
location: location
}
resource savedSearch 'Microsoft.OperationalInsights/workspaces/savedSearches@2020-08-01' = {
parent: workspace
name: 'VMSS query'
properties: {
etag: '*'
displayName: 'VMSS Instance Count'
category: 'VMSS'
query: 'Event | where Source == "ServiceFabricNodeBootstrapAgent" | summarize AggregatedValue = count() by Computer'
version: 1
}
}
Plik parametrów
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"workspaceName": {
"value": "MyWorkspace"
},
"location": {
"value": "eastus"
}
}
}
Funkcja sparametryzowana
Poniższy przykład dodaje zapytanie dziennika jako funkcję, która używa parametru do obszaru roboczego usługi Log Analytics. Dołączone jest drugie zapytanie dziennika, które używa sparametryzowanej funkcji.
Uwaga
Szablon zasobu jest obecnie jedyną metodą, która może służyć do sparametryzowanych funkcji. Każde zapytanie dziennika może używać funkcji po zainstalowaniu jej w obszarze roboczym.
Plik szablonu
param workspaceName string
param location string
resource workspace 'Microsoft.OperationalInsights/workspaces@2021-12-01-preview' = {
name: workspaceName
location: location
}
resource parameterizedFunctionSavedSearch 'Microsoft.OperationalInsights/workspaces/savedSearches@2020-08-01' = {
parent: workspace
name: 'Parameterized function'
properties: {
etag: '*'
displayName: 'Unavailable computers function'
category: 'Samples'
functionAlias: 'UnavailableComputers'
functionParameters: 'argSpan: timespan'
query: ' Heartbeat | summarize LastHeartbeat=max(TimeGenerated) by Computer| where LastHeartbeat < ago(argSpan)'
}
}
resource queryUsingFunctionSavedSearch 'Microsoft.OperationalInsights/workspaces/savedSearches@2020-08-01' = {
parent: workspace
name: 'Query using function'
properties: {
etag: '*'
displayName: 'Unavailable computers'
category: 'Samples'
query: 'UnavailableComputers(7days)'
}
}
Plik parametrów
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"workspaceName": {
"value": "MyWorkspace"
},
"location": {
"value": "eastus"
}
}
}