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.

  1. 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

  2. Á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.

  3. 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ó egy counterSpecifier, sampleRate, unit, annotationés minden releváns sinksszá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'))]"
      },
....
  1. 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őt New-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
    
  2. 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