Teljesítményfigyelés a Windows Azure Diagnostics bővítménnyel
Ez a dokumentum a teljesítményszámlálók Windows Azure Diagnostics (WAD) bővítményen keresztüli beállításához szükséges lépéseket ismerteti a Windows-fürtökhöz. Linux-fürtök esetén állítsa be a Log Analytics-ügynököt a csomópontok teljesítményszámlálóinak gyűjtéséhez.
Megjegyzés
A WAD-bővítményt üzembe kell helyezni a fürtön, hogy ezek a lépések működjenek. Ha nincs beállítva, lépjen az Eseményösszesítés és -gyűjtemény elemre a Windows Azure Diagnostics használatával.
Megjegyzés
Javasoljuk, hogy az Azure Az PowerShell-modullal kommunikáljon az Azure-ral. Az első lépésekhez tekintse meg az Azure PowerShell telepítését ismertető szakaszt. Az Az PowerShell-modulra történő migrálás részleteiről lásd: Az Azure PowerShell migrálása az AzureRM modulból az Az modulba.
Teljesítményszámlálók gyűjtése a WadCfg használatával
A teljesítményszámlálók WAD-on keresztüli gyűjtéséhez megfelelően módosítania kell a konfigurációt a fürt Resource Manager sablonjában. Az alábbi lépéseket követve adjon hozzá egy teljesítményszámlálót, amelyet be szeretne gyűjteni a sablonba, és futtasson egy Resource Manager erőforrás-frissítést.
Keresse meg a WAD-konfigurációt a fürt sablonjában – keresse meg a következőt
WadCfg
: . A alatt összegyűjtendő teljesítményszámlálókat fog hozzáadni.DiagnosticMonitorConfiguration
Állítsa be a konfigurációt, hogy teljesítményszámlálókat gyűjtsön a következő szakasz hozzáadásával.
DiagnosticMonitorConfiguration
"PerformanceCounters": { "scheduledTransferPeriod": "PT1M", "PerformanceCounterConfiguration": [] }
A
scheduledTransferPeriod
határozza meg, hogy a rendszer milyen gyakran továbbítja az összegyűjtött számlálók értékeit az Azure Storage-táblába és a konfigurált fogadóba.Adja hozzá azokat a teljesítményszámlálókat, amelyeket be szeretne gyűjteni az
PerformanceCounterConfiguration
előző lépésben deklarált teljesítményszámlálókhoz. Minden összegyűjteni kívánt számláló egycounterSpecifier
,sampleRate
,unit
,annotation
és minden relevánssinks
számlálóval van definiálva.
Íme egy példa egy konfigurációra, amelyben a számláló a teljes processzoridőt (a processzor feldolgozási műveletekhez használt idejét) és a Service Fabric-aktor metódushívásait másodpercenként, a Service Fabric egyéni teljesítményszámlálóinak egyikét tartalmazza. A Service Fabric egyéni teljesítményszámlálóinak teljes listájáért tekintse meg a Reliable Aktor teljesítményszámlálóit és a Reliable Service Performance Counters (Megbízható szolgáltatásteljesítmény-számlálók ) című témakört.
"WadCfg": {
"DiagnosticMonitorConfiguration": {
"overallQuotaInMB": "50000",
"EtwProviders": {
"EtwEventSourceProviderConfiguration": [
{
"provider": "Microsoft-ServiceFabric-Actors",
"scheduledTransferKeywordFilter": "1",
"scheduledTransferPeriod": "PT5M",
"DefaultEvents": {
"eventDestination": "ServiceFabricReliableActorEventTable"
}
},
{
"provider": "Microsoft-ServiceFabric-Services",
"scheduledTransferPeriod": "PT5M",
"DefaultEvents": {
"eventDestination": "ServiceFabricReliableServiceEventTable"
}
}
],
"EtwManifestProviderConfiguration": [
{
"provider": "cbd93bc2-71e5-4566-b3a7-595d8eeca6e8",
"scheduledTransferLogLevelFilter": "Information",
"scheduledTransferKeywordFilter": "4611686018427387904",
"scheduledTransferPeriod": "PT5M",
"DefaultEvents": {
"eventDestination": "ServiceFabricSystemEventTable"
}
}
]
},
"PerformanceCounters": {
"scheduledTransferPeriod": "PT1M",
"PerformanceCounterConfiguration": [
{
"counterSpecifier": "\\Processor(_Total)\\% Processor Time",
"sampleRate": "PT1M",
"unit": "Percent",
"annotation": [
],
"sinks": ""
},
{
"counterSpecifier": "\\Service Fabric Actor Method(*)\\Invocations/Sec",
"sampleRate": "PT1M",
}
]
}
}
},
A számláló mintasebessége az igényeinek megfelelően módosítható. A formátuma PT<time><unit>
, ezért ha azt szeretné, hogy a számláló másodpercenként legyen összegyűjtve, állítsa be a értéket "sampleRate": "PT15S"
.
Az ARM-sablonban változókat is használhat a teljesítményszámlálók tömbjének gyűjtéséhez, ami hasznos lehet, ha folyamatonként gyűjt teljesítményszámlálókat. Az alábbi példában folyamatonként gyűjtjük a processzoridőt és a szemétgyűjtő időt, majd maguk a csomópontokon 2 teljesítményszámlálót használunk változók használatával.
"variables": {
"copy": [
{
"name": "processorTimeCounters",
"count": "[length(parameters('monitoredProcesses'))]",
"input": {
"counterSpecifier": "\\Process([parameters('monitoredProcesses')[copyIndex('processorTimeCounters')]])\\% Processor Time",
"sampleRate": "PT1M",
"unit": "Percent",
"sinks": "applicationInsights",
"annotation": [
{
"displayName": "[concat(parameters('monitoredProcesses')[copyIndex('processorTimeCounters')],' Processor Time')]",
"locale": "en-us"
}
]
}
},
{
"name": "gcTimeCounters",
"count": "[length(parameters('monitoredProcesses'))]",
"input": {
"counterSpecifier": "\\.NET CLR Memory([parameters('monitoredProcesses')[copyIndex('gcTimeCounters')]])\\% Time in GC",
"sampleRate": "PT1M",
"unit": "Percent",
"sinks": "applicationInsights",
"annotation": [
{
"displayName": "[concat(parameters('monitoredProcesses')[copyIndex('gcTimeCounters')],' Time in GC')]",
"locale": "en-us"
}
]
}
}
],
"machineCounters": [
{
"counterSpecifier": "\\Memory\\Available Bytes",
"sampleRate": "PT1M",
"unit": "KB",
"sinks": "applicationInsights",
"annotation": [
{
"displayName": "Memory Available Kb",
"locale": "en-us"
}
]
},
{
"counterSpecifier": "\\Memory\\% Committed Bytes In Use",
"sampleRate": "PT15S",
"unit": "percent",
"annotation": [
{
"displayName": "Memory usage",
"locale": "en-us"
}
]
}
]
}
....
"WadCfg": {
"DiagnosticMonitorConfiguration": {
"overallQuotaInMB": "50000",
"Metrics": {
"metricAggregation": [
{
"scheduledTransferPeriod": "PT1M"
}
],
"resourceId": "[resourceId('Microsoft.Compute/virtualMachineScaleSets', variables('vmNodeTypeApp2Name'))]"
},
"PerformanceCounters": {
"scheduledTransferPeriod": "PT1M",
"PerformanceCounterConfiguration": "[concat(variables ('processorTimeCounters'), variables('gcTimeCounters'), variables('machineCounters'))]"
},
....
Miután hozzáadta a összegyűjtendő megfelelő teljesítményszámlálókat, frissítenie kell a fürterőforrást, hogy ezek a módosítások megjelenjenek a futó fürtben. Mentse a módosított fájlt
template.json
, és nyissa meg a PowerShellt. A fürt frissítéséhez használja a következőtNew-AzResourceGroupDeployment
: . A híváshoz szükség van az erőforráscsoport nevére, a frissített sablonfájlra és a paraméterfájlra, és megkéri Resource Manager, hogy végezze el a frissített erőforrások megfelelő módosítását. Miután bejelentkezett a fiókjába, és a megfelelő előfizetésben van, futtassa a következő parancsot a frissítés futtatásához:New-AzResourceGroupDeployment -ResourceGroupName <ResourceGroup> -TemplateFile <PathToTemplateFile> -TemplateParameterFile <PathToParametersFile> -Verbose
A frissítés bevezetése után (attól függően, hogy ez az első üzemelő példány és az erőforráscsoport mérete 15–45 percet vesz igénybe), a WAD-nak be kell gyűjtenie a teljesítményszámlálókat, és el kell küldenie őket a fürthöz társított tárfiók WADPerformanceCountersTable nevű táblájába. A teljesítményszámlálók megtekintéséhez vegye fel az AI-fogadót a Resource Manager sablonba az Application Insightsban.
Következő lépések
- Gyűjtsön össze további teljesítményszámlálókat a fürthöz. A gyűjtendő számlálók listáját a Teljesítménymetrikák című témakörben találja.
- Windows rendszerű virtuális géppel és Azure Resource Manager-sablonokkal végzett monitorozással és diagnosztika használatával további módosításokat végezhet a
WadCfg
rendszeren, beleértve a további tárfiókok konfigurálását is a diagnosztikai adatok elküldéséhez. - Látogasson el a WadCfg szerkesztőbe , és hozzon létre egy sablont az alapoktól, és ellenőrizze, hogy helyes-e a szintaxisa. (https://azure.github.io/azure-diagnostics-tools/config-builder/) sablon létrehozása az alapoktól, és győződjön meg arról, hogy a szintaxis helyes.