Verwenden der Linux Diagnostic Extension 4.0 zum Überwachen von Metriken und Protokollen

Achtung

Dieser Artikel bezieht sich auf CentOS, eine Linux-Distribution, die sich dem End-of-Life-Status (EOL) nähert. Sie sollten Ihre Nutzung entsprechend planen. Weitere Informationen finden Sie im CentOS End-of-Life-Leitfaden.

Dieser Artikel beschreibt die neuesten Versionen der Linux-Diagnoseerweiterung (Linux Diagnostic Extension, LAD).

Wichtig

Informationen zu Version 3.x finden Sie unter Verwenden der Linux-Diagnoseerweiterung 3.0 zum Überwachen von Metriken und Protokollen. Informationen zu Version 2.3 und früher finden Sie unter Überwachen der Leistungs- und Diagnosedaten eines virtuellen Linux-Computers.

Mit der Linux-Diagnoseerweiterung können Sie die Integrität von Linux-VMs in Azure überwachen. Sie verfügt über die folgenden Funktionen:

Datenquellen- Anpassungsoptionen Erforderliche Ziele Fakultative Ziele
Metriken Zähler, Aggregation, Abtastrate, Spezifizierer Azure-Tabellenspeicher EventHub, Azure Blob Storage (JSON-Format), Azure Monitor (neu in LAD 4.0)
syslog Einrichtung, Schweregrad Azure-Tabellenspeicher EventHub, Azure Blob Storage (JSON-Format)
Dateien Protokollpfad, Zieltabelle Azure-Tabellenspeicher EventHub, Azure Blob Storage (JSON-Format)

Diese Erweiterung funktioniert mit beiden Azure-Bereitstellungsmodellen: Azure Resource Manager und klassisch.

Voraussetzungen

  • Azure Linux Agent ab Version 2.2.0 oder höher. Die meisten Images des Azure-Katalogs für virtuelle Linux-Computer enthalten Version 2.2.7 oder höher. Führen Sie /usr/sbin/waagent -version aus, um die auf dem virtuellen Computer installierte Version zu überprüfen. Wenn die VM mit einer älteren Version des Gast-Agents ausgeführt wird, müssen Sie den Linux-Agent aktualisieren.
  • Azure-Befehlszeilenschnittstelle. Richten Sie Azure CLI auf dem Computer ein.
  • Der wget Befehl. Wenn Sie es noch nicht haben, installieren Sie es mit dem entsprechenden Paket-Manager.
  • Ein Azure-Abonnement und ein vorhandenes universelles Speicherkonto zum Speichern der Daten. Universelle Speicherkonten unterstützen den erforderlichen Tabellenspeicher. Ein Blobspeicherkonto funktioniert nicht.
  • Python 2.

Unterstützte Linux-Distributionen

Weitere Informationen finden Sie unter Unterstützte Agent-Betriebssysteme.

Python-Anforderung

Die Linux-Diagnoseerweiterung erfordert Python 2. Wenn Ihre VM eine Distribution verwendet, in der Python 2 nicht enthalten ist, müssen Sie die Sprache installieren.

Hinweis

Wir planen derzeit, alle Versionen der Linux-Diagnoseerweiterungen (LAD) mit dem neuen Azure Monitoring Agent zusammenzuführen, der Python 3 bereits unterstützt. Die LAD wird bis zur Ankündigung und Genehmigung als veraltet geplant.

Führen Sie zum Installieren von Python 2 einen der folgenden Beispielbefehle aus:

  • Red Hat, CentOS, Oracle: yum install -y python2
  • Ubuntu, Debian: apt-get install -y python2
  • SUSE: zypper install -y python2

Die ausführbare python2-Datei muss dem Alias python zugewiesen werden.

  1. Führen Sie den folgenden Befehl aus, um eventuell vorhandene Aliase zu entfernen.

    sudo update-alternatives --remove-all python
    
  2. Führen Sie den folgenden Befehl aus, um den Alias zu erstellen.

    sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 1
    

Installieren der Erweiterung

Sie können diese Erweiterung für Ihre VM und die VM-Skalierungsgruppe aktivieren, indem Sie Azure PowerShell-Cmdlets, Azure CLI-Skripte, Azure Resource Manager-Vorlagen (ARM-Vorlagen) oder das Azure-Portal verwenden. Weitere Informationen finden Sie unter Erweiterungen und Features für VMs für Linux.

Hinweis

Einige Komponenten der Linux Diagnostic-VM-Erweiterung werden auch mit der VM-Erweiterung für Protokollanalysen geliefert. Konflikte können auftreten, wenn beide Erweiterungen in derselben ARM-Vorlage instanziiert werden.

Um Konflikte zur Installationszeit zu vermeiden, verwenden Sie die dependsOn-Anweisung, um sicherzustellen, dass die Erweiterungen nacheinander installiert werden. Die Erweiterungen können in beliebiger Reihenfolge installiert werden.

Verwenden Sie diese Installationsanweisungen, um LAD 4.0 mithilfe einer herunterladbaren Beispielkonfiguration für Folgendes zu konfigurieren:

  • Erfassen und Speichern der gleichen Metriken wie die, die durch die LAD-Versionen 2.3 und 3.x bereitgestellt wurden.
  • Senden von Metriken an eine Azure Monitor-Senke zusammen mit der üblichen Senke an Azure Storage. Diese Funktionalität ist bei LAD 4.0 neu.
  • Erfassen eines nützlichen Satzes von Dateisystemmetriken (wie bei LAD 3.0).
  • Erfassen der Syslog-Standardsammlung, die durch LAD 2.3 aktiviert wird.
  • Aktivieren von Diagrammen und Warnungen zu VM-Metriken in der Azure-Portal-Umgebung.

Die herunterladbare Konfiguration ist nur ein Beispiel. Passen Sie es Ihren Anforderungen entsprechend an.

Installation

Sie können LAD 4.0 in der Azure CLI oder in Azure PowerShell installieren und konfigurieren.

Wenn Ihre geschützten Einstellungen in der Datei ProtectedSettings.json und Ihre öffentlichen Konfigurationsinformationen in PublicSettings.json gespeichert sind, führen Sie den folgenden Befehl aus:

az vm extension set --publisher Microsoft.Azure.Diagnostics \
  --name LinuxDiagnostic --version 4.0 --resource-group <resource_group_name> \
  --vm-name <vm_name> --protected-settings ProtectedSettings.json \
  --settings PublicSettings.json

Bei diesem Befehl wird davon ausgegangen, dass Sie den Azure-Ressourcenverwaltungsmodus der Azure CLI verwenden. Um LAD für VMs des klassischen Bereitstellungsmodells zu konfigurieren, wechseln Sie in den Dienstverwaltungs-Modus (azure config mode asm) und lassen Sie den Namen der Ressourcengruppe im Befehl weg.

Weitere Informationen finden Sie in der Dokumentation zur plattformübergreifenden Azure-Befehlszeilenschnittstelle.

Aktivieren der automatischen Aktualisierung

Es wird empfohlen, automatische Updates des Agents zu aktivieren, indem Sie das Feature Automatisches Erweiterungsupgrade aktivieren.

az vm extension set --publisher Microsoft.Azure.Diagnostics --name LinuxDiagnostic \
  --version 4.0 --resource-group <resource_group_name> --vm-name <vm_name> \
  --protected-settings ProtectedSettings.json --settings PublicSettings.json \
  --enable-auto-upgrade true

Beispielinstallation

Bei diesen Beispielen sammelt die Beispielkonfiguration eine Reihe von Standarddaten und sendet diese an den Tabellenspeicher. Die URL für die Beispielkonfiguration und ihr Inhalt können sich ändern.

Hinweis

Geben Sie vor der Ausführung des Codes bei beiden folgenden Beispielen im ersten Abschnitt die richtigen Werte für die Variablen ein.

In den meisten Fällen sollten Sie eine Kopie der JSON-Datei mit den Portaleinstellungen herunterladen und an Ihre Anforderungen anpassen. Verwenden Sie dann Vorlagen oder Ihre eigene Automatisierung, um eine benutzerdefinierte Version der Konfigurationsdatei zu verwenden, anstatt sie jedes Mal von der URL herunterzuladen.

Wenn Sie die neue Azure Monitor-Senke aktivieren, muss die vom System zugewiesene Identität für die VMs aktiviert sein, um Authentifizierungstoken der verwalteten Dienstidentität (Managed Service Identity, MSI) zu generieren. Sie können diese Einstellungen während oder nach der Erstellung des virtuellen Computers hinzufügen. Die Anweisungen für das Azure-Portal, Azure CLI, PowerShell und Azure Resource Manager finden Sie unter Konfigurieren von verwalteten Identitäten.

Installationsbeispiel – Azure CLI

# Set your Azure VM diagnostic variables.
my_subscription_id=<your_azure_subscription_id>
my_resource_group=<your_azure_resource_group_name_containing_your_azure_linux_vm>
my_linux_vm=<your_azure_linux_vm_name>
my_diagnostic_storage_account=<your_azure_storage_account_for_storing_vm_diagnostic_data>

# Login to Azure before you do anything else.
az login

# Select the subscription that contains the storage account.
az account set --subscription $my_subscription_id

# Enable system-assigned identity on the existing VM.
az vm identity assign --resource-group $my_resource_group --name $my_linux_vm

# Download the sample public settings. You could instead use curl or any web browser.
wget https://raw.githubusercontent.com/Azure/azure-linux-extensions/master/Diagnostic/tests/lad_2_3_compatible_portal_pub_settings.json -O portal_public_settings.json

# Build the VM resource ID. Replace the storage account name and resource ID in the public settings.
my_vm_resource_id=$(az vm show --resource-group $my_resource_group \
  --name $my_linux_vm --query "id" -o tsv)
sed -i "s#__DIAGNOSTIC_STORAGE_ACCOUNT__#$my_diagnostic_storage_account#g" portal_public_settings.json
sed -i "s#__VM_RESOURCE_ID__#$my_vm_resource_id#g" portal_public_settings.json

# Build the protected settings (storage account SAS token).
my_diagnostic_storage_account_sastoken=$(az storage account generate-sas \
  --account-name $my_diagnostic_storage_account --expiry 2037-12-31T23:59:00Z \
  --permissions wlacu --resource-types co --services bt -o tsv)
my_lad_protected_settings="{'storageAccountName': '$my_diagnostic_storage_account', \
  'storageAccountSasToken': '$my_diagnostic_storage_account_sastoken'}"

# Finally, tell Azure to install and enable the extension.
az vm extension set --publisher Microsoft.Azure.Diagnostics --name LinuxDiagnostic \
  --version 4.0 --resource-group $my_resource_group --vm-name $my_linux_vm \
  --protected-settings "${my_lad_protected_settings}" --settings portal_public_settings.json

Installationsbeispiel für Virtual Machine Scale Sets – Azure CLI

# Set your Azure virtual machine scale set diagnostic variables.
my_subscription_id=<your_azure_subscription_id>
my_resource_group=<your_azure_resource_group_name_containing_your_azure_linux_vm>
my_linux_vmss=<your_azure_linux_vmss_name>
my_diagnostic_storage_account=<your_azure_storage_account_for_storing_vm_diagnostic_data>

# Login to Azure before you do anything else.
az login

# Select the subscription that contains the storage account.
az account set --subscription $my_subscription_id

# Enable system-assigned identity on the existing virtual machine scale set.
az vmss identity assign --resource-group $my_resource_group --name $my_linux_vmss

# Download the sample public settings. You could also use curl or any web browser.
wget https://raw.githubusercontent.com/Azure/azure-linux-extensions/master/Diagnostic/tests/lad_2_3_compatible_portal_pub_settings.json -O portal_public_settings.json

# Build the virtual machine scale set resource ID. Replace the storage account name and resource ID in the public settings.
my_vmss_resource_id=$(az vmss show --resource-group $my_resource_group \
  --name $my_linux_vmss --query "id" -o tsv)
sed -i "s#__DIAGNOSTIC_STORAGE_ACCOUNT__#$my_diagnostic_storage_account#g" portal_public_settings.json
sed -i "s#__VM_RESOURCE_ID__#$my_vmss_resource_id#g" portal_public_settings.json

# Build the protected settings (storage account SAS token).
my_diagnostic_storage_account_sastoken=$(az storage account generate-sas \
  --account-name $my_diagnostic_storage_account --expiry 2037-12-31T23:59:00Z \
  --permissions wlacu --resource-types co --services bt -o tsv)
my_lad_protected_settings="{'storageAccountName': '$my_diagnostic_storage_account', 'storageAccountSasToken': '$my_diagnostic_storage_account_sastoken'}"

# Finally, tell Azure to install and enable the extension.
az vmss extension set --publisher Microsoft.Azure.Diagnostics --name LinuxDiagnostic
  --version 4.0 --resource-group $my_resource_group --vmss-name $my_linux_vmss \
  --protected-settings "${my_lad_protected_settings}" --settings portal_public_settings.json

Aktualisieren der Erweiterungseinstellungen

Nachdem Sie Ihre geschützten oder öffentlichen Einstellungen geändert haben, stellen Sie sie auf der VM bereit, indem Sie denselben Befehl ausführen. Wenn irgendwelche Einstellungen geändert wurden, werden die Updates an die Erweiterung gesendet. LAD lädt die Konfiguration erneut und startet sich selbst neu.

Migrieren von früheren Versionen der Erweiterung

Die aktuelle Version der Erweiterung ist Version 4.0,die aktuell als öffentliche Vorschau verfügbar ist. Ältere Versionen von 3.x werden weiterhin unterstützt. 2.x-Versionen gelten jedoch seit dem 31. Juli 2018 als veraltet.

Wichtig

Deinstallieren Sie die alte Erweiterung, um von 3.x zur neuesten Version der Erweiterung zu migrieren. Installieren Sie dann Version 4, die die aktualisierte Konfiguration für die vom System zugewiesene Identität und Senken zum Senden von Metriken an die Azure Monitor-Senke enthält.

Wenn Sie die neue Erweiterung installieren, aktivieren Sie automatische Upgrades für die Nebenversion:

  • Bei virtuellen Computern im Azure Resource Manager-Bereitstellungsmodell fügen Sie "autoUpgradeMinorVersion": true in die VM-Bereitstellungsvorlage ein.
  • Geben Sie auf klassischen Bereitstellungsmodell-VMs die Version an, 4.*wenn Sie die Erweiterung über die Azure-Befehlszeilenschnittstelle oder PowerShell installieren.

Sie können dasselbe Speicherkonto wie für LAD 3.x verwenden.

Geschützte Einstellungen

Dieser Satz von Konfigurationsinformationen enthält vertrauliche Informationen, die nicht öffentlich einsehbar sein dürfen. Sie enthält z. B. Speicheranmeldeinformationen. Die Einstellungen werden an die Erweiterung in verschlüsselter Form übertragen und von ihr gespeichert.

{
    "storageAccountName" : "the storage account to receive data",
    "storageAccountEndPoint": "the hostname suffix for the cloud for this account",
    "storageAccountSasToken": "SAS access token",
    "mdsdHttpProxy": "HTTP proxy settings",
    "sinksConfig": { ... }
}
Name Wert
storageAccountName Der Name des Speicherkontos, in dem von der Erweiterung Daten geschrieben werden.
storageAccountEndPoint (Optional) Der Endpunkt, der die Cloud mit dem Speicherkonto angibt. Wenn diese Einstellung nicht vorhanden ist, verwendet LAD standardmäßig die öffentliche Azure-Cloud https://core.windows.net. Um ein Speicherkonto in Azure Deutschland, Azure Government oder Microsoft Azure operated by 21Vianet zu verwenden, legen Sie diesen Wert den Vorgaben entsprechend fest.
storageAccountSasToken Ein Konto-SAS-Token für Blob- und Tabellendienste (ss='bt'). Dieses Token gilt für Container und Objekte (srt='co'). Es gewährt Berechtigungen zum Hinzufügen, Erstellen, Auflisten, Aktualisieren und Schreiben (sp='acluw'). Fügen Sie nicht das vorangestellte Fragezeichen (?) ein.
mdsdHttpProxy (Optional) HTTP-Proxyinformationen, die für die Erweiterung erforderlich sind, damit sie Verbindungen mit dem angegebenen Speicherkonto und dem Endpunkt herstellen kann.
sinksConfig (Optional) Details zu alternativen Zielen, an die Metriken und Ereignisse übermittelt werden können. Die folgenden Abschnitte enthalten Details zu jeder Datensenke, die von der Erweiterung unterstützt wird.

Verwenden Sie die listAccountSas-Funktion, um ein SAS-Token innerhalb einer ARM-Vorlage zu erhalten. Eine Beispielvorlage finden Sie unter Beispiel für eine Listenfunktion.

Sie können das erforderliche SAS-Token über das Azure-Portal generieren:

  1. Wählen Sie das universelle Speicherkonto aus, in das die Erweiterung schreiben soll.
  2. Wählen Sie im Menü auf der linken Seite unter Sicherheit und Netzwerk die Option Shared Access Signature aus.
  3. Treffen Sie die Auswahl wie zuvor beschrieben.
  4. Klicken Sie auf SAS und Verbindungszeichenfolge generieren.

Screenshot: Seite „Shared Access Signature“ mit der Schaltfläche „SAS generieren“ und der Verbindungszeichenfolge.

Kopieren Sie die generierte Shared Access Signature in das storageAccountSasToken-Feld. Entfernen Sie das führende Fragezeichen (?).

sinksConfig

Hinweis

Sowohl öffentliche als auch geschützte Einstellungen verfügen über einen optionalen sinksConfig Abschnitt. Der sinksConfig Abschnitt in den geschützten Einstellungen enthält nur EventHub und JsonBlobSenk-Konfigurationen, aufgrund der Einbeziehung von Geheimnissen, wie sasURLs. AzMonSink Senk-Konfigurationen können nicht in Ihren geschützten Einstellungen einbezogen werden.

"sinksConfig": {
    "sink": [
        {
            "name": "sinkname",
            "type": "sinktype",
            ...
        },
        ...
    ]
},

In diesem optionalen Abschnitt sinksConfig werden weitere Ziele definiert, an die die Erweiterung die gesammelten Informationen sendet. Das "sink"-Array enthält ein Objekt für jede zusätzliche Datensenke. Das Attribut "type" bestimmt die anderen Attribute im Objekt.

Element Wert
name Eine Zeichenfolge, die zum Verweisen auf diese Senke an anderer Stelle in der Konfiguration der Erweiterung verwendet wird
type Der Typ der Senke, die definiert wird. Bestimmt die anderen Werte in Instanzen dieses Typs (sofern vorhanden).

Die Linux-Diagnoseerweiterung 4.0 unterstützt zwei geschützte Senk-Typen: EventHub und JsonBlob.

EventHub-Senke

"sink": [
    {
        "name": "sinkname",
        "type": "EventHub",
        "sasURL": "https SAS URL"
    },
    ...
]

Der Eintrag "sasURL" enthält die vollständige URL, einschließlich des Shared Access Signature-Tokens (SAS-Token) für den Event Hub, für den die Daten veröffentlicht werden sollen. LAD erfordert eine SAS-Benennungsrichtlinie, die den Anspruch „Senden“ aktiviert. Hier sehen Sie ein Beispiel:

  • Erstellen Sie den Event Hubs-Namespace contosohub.
  • Erstellen Sie einen Event Hub im Namespace syslogmsgs.
  • Erstellen Sie auf dem Event Hub die SAS-Richtlinie writer, die den Anspruch „Senden“ aktiviert.

Wenn Sie eine SAS erstellt haben, die bis Mitternacht (UTC) am 1. Januar 2018 gültig ist, kann der sasURL-Wert wie im folgenden Beispiel aussehen.

https://contosohub.servicebus.windows.net/syslogmsgs?sr=contosohub.servicebus.windows.net%2fsyslogmsgs&sig=xxxxxxxxxxxxxxxxxxxxxxxxx&se=1514764800&skn=writer

Weitere Informationen zum Generieren von SAS-Token und Abrufen von Informationen für SAS-Token für Event Hubs finden Sie auf ein SAS-Token generieren.

JsonBlob-Senke

"sink": [
    {
        "name": "sinkname",
        "type": "JsonBlob"
    },
    ...
]

Die an die JsonBlob-Senke weitergeleiteten Daten werden in Blobs in Azure Storage gespeichert. Jede LAD-Instanz erstellt stündlich ein Blob für jeden Senkennamen. Jedes Blob enthält immer ein syntaktisch gültiges JSON-Array von Objekten. Neue Einträge werden dem Array automatisch hinzugefügt.

Blobs werden in einem Container mit dem gleichen Namen wie die Senke gespeichert. Die Azure Storage-Regeln für Blob-Containernamen gelten auch für die Namen von JsonBlob-Senken. Namen müssen zwischen 3 und 63 alphanumerische ASCII-Zeichen in Kleinbuchstaben oder Bindestriche enthalten.

Öffentliche Einstellungen

Diese Struktur der öffentlichen Einstellungen enthält verschiedene Blöcke von Einstellungen zur Steuerung der von der Erweiterung gesammelten Informationen. Jede Einstellung (mit Ausnahme von ladCfg) ist optional. Wenn Sie die Metrikerfassung oder Syslog-Erfassung in ladCfg angeben, müssen Sie auch StorageAccount angeben. Sie müssen das sinksConfig-Element angeben, um die Azure Monitor für Metriken aus LAD 4.0 zu aktivieren.

{
    "ladCfg":  { ... },
    "fileLogs": { ... },
    "StorageAccount": "the storage account to receive data",
    "sinksConfig": { ... },
    "mdsdHttpProxy" : ""
}
Element Wert
StorageAccount Der Name des Speicherkontos, in dem von der Erweiterung Daten geschrieben werden. Muss mit dem Namen übereinstimmen, der in den geschützten Einstellungen festgelegt wurde.
mdsdHttpProxy (Optional) Der in den geschützten Einstellungen angegebene Proxy. Wenn der private Wert festgelegt ist, wird der öffentliche Wert überschrieben. Nehmen Sie Proxyeinstellungen, die ein Geheimnis (z. B. ein Kennwort) enthalten, in den geschützten Einstellungen vor.

Die folgenden Abschnitte enthalten weitere Informationen über die verbleibenden Elemente.

ladCfg

"ladCfg": {
    "diagnosticMonitorConfiguration": {
        "eventVolume": "Medium",
        "metrics": { ... },
        "performanceCounters": { ... },
        "syslogEvents": { ... }
    },
    "sampleRateInSeconds": 15
}

Die ladCfg-Struktur steuert das Sammeln von Metriken und Protokollen für die Übermittlung an den Azure Monitor-Metrikdienst und andere Datensenken. Geben Sie performanceCounters und/oder syslogEvents an. Geben Sie auch die metrics-Struktur an.

Wenn Sie die Syslog- oder Metriksammlung nicht aktivieren möchten, geben Sie eine leere Struktur für das ladCfg-Element an:

"ladCfg": {
    "diagnosticMonitorConfiguration": {}
}
Element Wert
eventVolume (Optional) Steuert die Anzahl der Partitionen, die innerhalb der Speichertabelle erstellt werden. Der Wert muss "Large", "Medium", oder "Small" sein. Der Standardwert ist "Medium".
sampleRateInSeconds (Optional) Das Standardintervall zwischen der Erfassung von unformatierten (d. h. nicht aggregierten) Metriken. Die kleinste unterstützte Erfassungsrate beträgt 15 Sekunden. Der Standardwert ist 15.

metrics

"metrics": {
    "resourceId": "/subscriptions/...",
    "metricAggregation" : [
        { "scheduledTransferPeriod" : "PT1H" },
        { "scheduledTransferPeriod" : "PT5M" }
    ]
}
Element Wert
resourceId Die Azure Resource Manager-Ressourcen-ID der VM oder der VM-Skalierungsgruppe, zu der die VM gehört. Geben Sie diese Einstellung auch an, wenn die Konfiguration eine JsonBlob-Senke verwendet.
scheduledTransferPeriod Die Häufigkeit, mit der aggregierte Metriken berechnet und an den Azure Monitor-Metrikendienst übertragen werden. Die Häufigkeit wird als IS 8601-Zeitintervall ausgedrückt. Das kleinste Übertragungsintervall ist 60 Sekunden, d.h. PT1M. Geben Sie mindestens ein scheduledTransferPeriod an.

Die Werte für die Metriken, die im performanceCounters-Abschnitt angegeben wurden, werden alle 15 Sekunden oder in der explizit für den Leistungsindikator festgelegten Häufigkeit erfasst. Wenn mehrere scheduledTransferPeriod-Werte (wie im Beispiel) angegeben wurden, wird jede Aggregation unabhängig von den anderen berechnet.

performanceCounters

"performanceCounters": {
    "sinks": "",
    "performanceCounterConfiguration": [
        {
            "type": "builtin",
            "class": "Processor",
            "counter": "PercentIdleTime",
            "counterSpecifier": "/builtin/Processor/PercentIdleTime",
            "condition": "IsAggregate=TRUE",
            "sampleRate": "PT15S",
            "unit": "Percent",
            "annotation": [
                {
                    "displayName" : "cpu idle time",
                    "locale" : "en-us"
                }
            ]
        }
    ]
}

Mit dem optionalen performanceCounters-Abschnitt wird die Erfassung von Metriken gesteuert. Die unformatierten Daten werden für jede scheduledTransferPeriod aggregiert, um diese Werte zu generieren:

  • Mittelwert
  • Minimum
  • Maximum
  • Letzter erfasster Wert
  • Anzahl der unformatierten Daten für die Aggregatberechnung
Element Wert
sinks (Optional) Eine durch Trennzeichen getrennte Liste der Namen der Senken, an die LAD die aggregierten Metrikergebnisse übermittelt. Alle aggregierten Metriken werden an jede aufgeführte Senke veröffentlicht. Beispiel: "MyEventHubSink, MyJsonSink, MyAzMonSink". Weitere Informationen finden Sie unter sinksConfig (geschützte Einstellungen) und sinksConfig (öffentliche Einstellungen).
type Gibt den tatsächlichen Anbieter der Metrik an.
class Gibt zusammen mit "counter" die jeweilige Metrik im Namespace des Anbieters an.
Zähler Gibt zusammen mit "class" die jeweilige Metrik im Namespace des Anbieters an. Eine Liste der verfügbaren Zähler anzeigen.
counterSpecifier Gibt die Metrik im Azure Monitor-Metrikennamespace an.
condition (Optional) Wählt eine bestimmte Instanz des Objekts aus, für die die Metrik gilt. Oder sie wählt die Aggregation für alle Instanzen dieses Objekts aus.
sampleRate Das ISO-8601-Intervall, das die Häufigkeit festlegt, mit der unformatierte Daten für diese Metrik gesammelt werden. Wenn der Wert nicht festgelegt ist, legt der Wert sampleRateInSeconds das Erfassungsintervall fest. Die kleinste unterstützte Erfassungsrate beträgt 15 Sekunden (PT15S).
unit Definiert die Einheit für die Metrik. Sollte eine der folgenden Zeichenfolgen sein: "Count", "Bytes", "Seconds", "Percent", "CountPerSecond", "BytesPerSecond", "Millisecond". Consumer der gesammelten Daten erwarten, dass die gesammelten Datenwerte diesen Einheiten entsprechen. LAD ignoriert dieses Feld.
displayName Die Bezeichnung, die an die Daten in Azure Monitor Metrics bei der Anzeige im Guest (classic)-Metrikennamespace angefügt werden soll. Diese Bezeichnung ist in der Sprache, die durch die zugeordnete Locale-Einstellung angegeben wird. LAD ignoriert dieses Feld. Hinweis: Wenn die gleiche Metrik im azure.vm.linux.guestmetrics-Metrikennamespace angezeigt wird (verfügbar, wenn AzMonSink konfiguriert ist), hängt der Anzeigename vollständig vom Zähler ab. Informationen zum Ermitteln der Zuordnung zwischen Zählern und Namen finden Sie unter Vom integrierten Anbieter unterstützte Metriken.

counterSpecifier ist ein beliebiger Bezeichner. Consumer von Metriken, etwa das Feature für Diagramme und Warnungen im Azure-Portal, verwenden counterSpecifier als „Schlüssel“, der eine Metrik oder eine Instanz einer Metrik identifiziert.

Für builtin-Metriken empfehlen wir counterSpecifier-Werte, die mit /builtin/ beginnen. Um eine bestimmte Instanz einer Metrik zu erfassen, fügen Sie den Bezeichner der Instanz an den counterSpecifier-Wert an. Hier einige Beispiele:

  • /builtin/Processor/PercentIdleTime. Leerlaufzeit (Durchschnitt für alle vCPUs)
  • /builtin/Disk/FreeSpace(/mnt). Freier Speicherplatz für das /mnt-Dateisystem
  • /builtin/Disk/FreeSpace. Freier Speicherplatz (Durchschnitt für alle eingebundenen Dateisysteme)

LAD und das Azure-Portal erwarten nicht, dass der counterSpecifier-Wert irgendeinem Muster entspricht. Seien Sie beim Erstellen von counterSpecifier-Werten konsistent.

Bei Angabe von performanceCounters schreibt LAD Daten immer in eine Tabelle in Azure Storage. Die gleichen Daten können in JSON-Blobs geschrieben oder Event Hubs oder beides geschrieben werden. Sie können das Speichern von Daten in einer Tabelle nicht deaktivieren.

Alle LAD-Instanzen, die denselben Speicherkontonamen und Endpunkts verwenden, fügen ihre Metriken und Protokolle derselben Tabelle hinzu. Wenn zu viele virtuelle Computer in dieselbe Tabellenpartition schreiben, kann Azure Schreibvorgänge in dieser Partition drosseln.

Die eventVolume-Einstellung bewirkt, dass Einträge auf 1 (Small), 10 (Medium) oder 100 (Large) Partitionen aufgeteilt werden. In der Regel reichen mittlere Partitionen aus, um eine Drosselung des Datenverkehrs zu vermeiden.

Das Azure Monitor-Metrikenfeature im Azure-Portal verwendet die Daten in dieser Tabelle, um Graphen zu erstellen oder Warnungen auszulösen. Der Tabellenname ist eine Verkettung dieser Zeichenfolgen:

  • WADMetrics
  • Der "scheduledTransferPeriod" für die aggregierten Werte, die in der Tabelle gespeichert sind
  • P10DV2S
  • Ein Datum im Format JJJJMMTT, das sich alle 10 Tage ändert.

Beispiele sind WADMetricsPT1HP10DV2S20170410 und WADMetricsPT1MP10DV2S20170609.

syslogEvents

"syslogEvents": {
    "sinks": "",
    "syslogEventConfiguration": {
        "facilityName1": "minSeverity",
        "facilityName2": "minSeverity",
        ...
    }
}

Mit dem optionalen syslogEvents-Abschnitt wird die Erfassung von Protokollereignissen von Syslog gesteuert. Wenn dieser Abschnitt ausgelassen wird, werden Syslog-Ereignisse überhaupt nicht erfasst.

Die syslogEventConfiguration-Sammlung enthält einen Eintrag für jede gewünschte Syslog-Funktion. Wenn minSeverity für eine bestimmte Funktion "NONE" lautet oder wenn diese Funktion im Element nicht enthalten ist, werden keine Ereignisse von dieser Funktion erfasst.

Element Wert
sinks Eine durch Trennzeichen getrennte Liste der Namen von Senken, an die einzelne Protokollereignisse veröffentlicht werden. Alle Protokollereignisse, die den Einschränkungen in syslogEventConfiguration entsprechen, werden an alle aufgeführten Senken veröffentlicht. Beispiel: "EHforsyslog"
facilityName Ein Syslog-Facility-Name, z. B. "LOG_USER" oder "LOG_LOCAL0". Weitere Informationen finden Sie unter Werte für die Einrichtung auf der syslog-Handbuchseite.
minSeverity Ein Syslog-Schweregrad, z. B. "LOG_ERR" oder "LOG_INFO". Weitere Informationen finden Sie unter Werte für die Ebene auf der syslog-Handbuchseite. Die Erweiterung erfasst Ereignisse ab dem angegebenen Grad, die an die Funktion gesendet werden.

Bei Angabe von syslogEvents schreibt LAD Daten immer in eine Tabelle in Azure Storage. Die gleichen Daten können in JSON-Blobs geschrieben oder Event Hubs oder beides geschrieben werden. Sie können das Speichern von Daten in einer Tabelle nicht deaktivieren.

Die Partitionierung für diese Tabelle entspricht der Beschreibung für performanceCounters. Der Tabellenname ist eine Verkettung dieser Zeichenfolgen:

  • LinuxSyslog
  • Ein Datum im Format JJJJMMTT, das sich alle 10 Tage ändert.

Beispiele sind LinuxSyslog20170410 und LinuxSyslog20170609.

sinksConfig

Der optionale öffentliche Abschnitt sinksConfig ermöglicht das Senden von Metriken an die Azure Monitor-Senke zusätzlich zum Speicherkonto und der standardmäßigen Ansicht „Guest Metrics“.

Hinweis

Sowohl öffentliche als auch geschützte Einstellungen verfügen über einen optionalen sinksConfig Abschnitt. Der sinksConfig Abschnitt in den öffentlichen Einstellungen enthält lediglich die AzMonSink Senken-Konfiguration. EventHub und die JsonBlobSenken-Konfigurationen können nicht in Ihren öffentlichen Einstellungen einbezogen werden.

Hinweis

Für den sinksConfig-Abschnitt muss die vom System zugewiesene Identität auf den virtuellen Computern oder in der VM-Skalierunggruppe aktiviert sein. Sie können die vom System zugewiesene Identität über Azure-Portal, CLI, PowerShell oder Azure Resource Manager aktivieren. Befolgen Sie die ausführlichen Anweisungen oder sehen Sie sich die vorherigen Installationsbeispiele in diesem Artikel an.

  "sinksConfig": {
    "sink": [
      {
        "name": "AzMonSink",
        "type": "AzMonSink",
        "AzureMonitor": {}
      }
    ]
  },

fileLogs

Der fileLogs-Abschnitt steuert die Erfassung von Protokolldateien. LAD erfasst neue Textzeilen, wenn sie in die Datei geschrieben werden. Sie werden in Tabellenzeilen und angegebene Senken geschrieben (z. B. JsonBlob oder EventHub).

Hinweis

fileLogs werden durch eine Unterkomponente von LAD namens omsagent erfasst. Stellen Sie zum Erfassen fileLogs von sicher, dass der omsagent-Benutzer über Leseberechtigungen für die von Ihnen angegebenen Dateien verfügt. Er muss außerdem über Ausführungsberechtigungen für alle Verzeichnisse im Pfad zu dieser Datei verfügen. Führen Sie sudo su omsagent -c 'cat /path/to/file' nach der Installation von LAD aus, um die Berechtigungen zu überprüfen.

"fileLogs": [
    {
        "file": "/var/log/mydaemonlog",
        "table": "MyDaemonEvents",
        "sinks": ""
    }
]
Element Wert
file Der vollständige Pfadname der Protokolldatei, die überwacht und erfasst werden soll. Der Pfad darf kein Verzeichnis angeben und keine Platzhalterzeichen enthalten. Das omsagent-Benutzerkonto muss über Lesezugriff auf den Dateipfad verfügen.
table (Optional) Die Azure Storage-Tabelle, in die neue Zeilen aus dem „Ende“ der Datei geschrieben werden. Die Tabelle muss im angegebenen Speicherkonto wie in der geschützten Konfiguration angegeben werden.
sinks (Optional) Eine durch Trennzeichen getrennte Liste der Namen weiterer Senken, an die Protokollzeilen gesendet werden.

Es müssen entweder "table" oder "sinks" oder beide angegeben werden.

Metriken, die vom integrierten Anbieter unterstützt werden

Die von LAD unterstützten Standardmetriken werden über alle Dateisysteme, Datenträger oder Dateinamen hinweg aggregiert. Für nicht aggregierte Metriken verwenden Sie die Unterstützung für neuere Azure Monitor-Senkenmetriken.

Hinweis

Die Anzeigenamen für jede Metrik unterscheiden sich je nach Metrikennamespace, zu dem sie gehört:

  • Guest (classic) (von Ihrem Speicherkonto mit Daten aufgefüllt): der im Abschnitt performanceCounters angegebene displayName oder der Standardanzeigename aus dem Azure-Portal. Wählen Sie für die VM unter Überwachung>Diagnoseeinstellungen die Registerkarte Metriken aus.
  • azure.vm.linux.guestmetrics (aus AzMonSink mit Daten aufgefüllt, wenn konfiguriert): Der „azure.vm.linux.guestmetrics-Anzeigename“, der in den folgenden Tabellen angegeben wird.

Die Metrikwerte unterscheiden sich zwischen den Guest (classic)- und azure.vm.linux.guestmetrics-Versionen. Während bei den klassischen Metriken bestimmte Aggregationen im Agenten angewendet wurden, handelt es sich bei den neuen Metriken um nicht-aggregierte Zähler, die dem Kunden die Flexibilität verleihen, zum Zeitpunkt der Anzeige/Benachrichtigung nach Belieben zu aggregieren.

Der builtin-Metrikanbieter ist eine Quelle von Metriken, die für eine Vielzahl von Benutzern von Interesse sind. Diese Metriken werden in fünf Klassen unterteilt:

  • Prozessor
  • Arbeitsspeicher
  • Netzwerk
  • Dateisystem
  • Datenträger

Integrierte Metriken der Prozessorklasse

Die Prozessorklasse von Metriken bietet Informationen zur Prozessorauslastung auf dem virtuellen Computer. Beim Aggregieren von Prozentsätzen ist das Ergebnis der Durchschnitt für alle CPUs.

Wenn eine vCPU auf einem virtuellen Computer mit zwei vCPU zu 100 Prozent ausgelastet ist und die andere zu 100 Prozent im Leerlauf ist, beträgt die gemeldete PercentIdleTime 50. Wenn jede vCPU im gleichen Zeitraum zu 50 % ausgelastet ist, lautet das gemeldete Ergebnis ebenfalls 50. Wenn auf einem virtuellen Computer mit vier vCPUs eine vCPU zu 100 Prozent ausgelastet ist und die anderen sich im Leerlauf befinden, wird PercentIdleTime gleich 75 gemeldet.

Leistungsindikator Anzeigename von azure.vm.linux.guestmetrics Bedeutung
PercentIdleTime cpu idle time Prozentsatz der Zeit während des Aggregationszeitraums, in der die Prozessoren die Kernel-Leerlaufschleife ausgeführt haben
PercentProcessorTime cpu percentage guest os Prozentsatz der Zeit für die Ausführung eines Threads, der nicht im Leerlauf ist
PercentIOWaitTime cpu io wait time Prozentsatz der Zeit für das Warten auf den Abschluss von E/A-Vorgängen
PercentInterruptTime cpu interrupt time Prozentsatz der Zeit für die Ausführung von Hardware- oder Softwareinterrupts und DPCs (Deferred Procedure Calls, zurückgestellte Prozeduraufrufe)
PercentUserTime cpu user time Prozentsatz der Zeit, die während des Aggregationszeitfensters nicht im Leerlauf verbracht wurde, sondern im Benutzermodus mit normaler Priorität
PercentNiceTime cpu nice time Prozentsatz der Zeit, die nicht im Leerlauf verbracht wurde, mit geringerer Priorität (Nice)
PercentPrivilegedTime cpu privileged time Prozentsatz der Zeit, die nicht im Leerlauf verbracht wurde, im privilegierten Modus (Kernelmodus)

Die ersten vier Leistungsindikatoren sollten in der Summe 100 Prozent ergeben. Die letzten drei Leistungsindikatoren sollten sich ebenfalls auf 100 Prozent summieren. Diese drei Leistungsindikatoren unterteilen die Summe von PercentProcessorTime, PercentIOWaitTime und PercentInterruptTime.

Integrierte Metriken der Arbeitsspeicherklasse

Die Arbeitsspeicherklasse der Metriken bietet Informationen zur Speicherauslastung, zum Paging und zum Swapping.

Leistungsindikator Anzeigename von azure.vm.linux.guestmetrics Bedeutung
AvailableMemory memory available Verfügbarer physischer Speicher in MB
PercentAvailableMemory mem. percent available Verfügbarer physischer Speicher als Prozentsatz des gesamten Arbeitsspeichers
UsedMemory memory used Verwendeter physischer Speicher (MB)
PercentUsedMemory memory percentage Verwendeter physischer Speicher als Prozentsatz des gesamten Arbeitsspeichers
PagesPerSec pages Paging insgesamt (Lesen/Schreiben)
PagesReadPerSec page reads Aus dem Hintergrundspeicher gelesene Seiten, z. B. Auslagerungsdatei, Programmdatei und im Speicher abgebildete Datei
PagesWrittenPerSec page writes Seiten, die in den Hintergrundspeicher geschrieben werden, z. B. Auslagerungsdatei und im Speicher abgebildete Datei
AvailableSwap swap available Nicht verwendeter Auslagerungsbereich (MB)
PercentAvailableSwap swap percent available Nicht verwendeter Auslagerungsbereich als Prozentsatz des gesamten Auslagerungsbereichs
UsedSwap swap used Verwendeter Auslagerungsbereich (MB)
PercentUsedSwap swap percent used Verwendeter Auslagerungsbereich als Prozentsatz des gesamten Auslagerungsbereichs

Diese Klasse von Metriken hat nur eine Instanz. Das "condition"-Attribut weist keine nützlichen Einstellungen auf und sollte ausgelassen werden.

Integrierte Metriken der Netzwerkklasse

Die Netzwerkklasse von Metriken liefert Informationen zur Netzwerkaktivität für eine einzelne Netzwerkschnittstelle seit dem Startup.

LAD macht keine Bandbreitenmetriken verfügbar. Sie können diese Metriken aus Hostmetriken abrufen.

Leistungsindikator Anzeigename von azure.vm.linux.guestmetrics Bedeutung
BytesTransmitted network out guest os Gesamtanzahl der seit dem Startup gesendeten Bytes
BytesReceived network in guest os Gesamtanzahl der seit dem Startup empfangenen Bytes
BytesTotal network total bytes Gesamtanzahl der seit dem Startup gesendeten und empfangenen Bytes
PacketsTransmitted packets sent Gesamtanzahl der seit dem Startup gesendeten Pakete
PacketsReceived packets received Gesamtanzahl der seit dem Startup empfangenen Pakete
TotalRxErrors packets received errors Anzahl der Empfangsfehler seit dem Startup
TotalTxErrors packets sent errors Anzahl der Übertragungsfehler seit dem Startup
TotalCollisions network collisions Anzahl der Konflikte, die seit dem Startup von Netzwerkports gemeldet wurden

Integrierte Metriken der Dateisystemklasse

Die Dateisystemklasse von Metriken liefert Informationen zur Nutzung des Dateisystems. Absolute und prozentuale Werte werden so erfasst, wie sie einem normalen Benutzer (nicht root) angezeigt werden würden.

Leistungsindikator Anzeigename von azure.vm.linux.guestmetrics Bedeutung
FreeSpace filesystem free space Verfügbarer Speicherplatz in Byte
UsedSpace filesystem used space Verwendeter Speicherplatz in Byte
PercentFreeSpace filesystem % free space Prozentwert des freien Speicherplatzes
PercentUsedSpace filesystem % used space Prozentwert des belegten Speicherplatzes
PercentFreeInodes filesystem % free inodes Prozentwert der nicht verwendeten Indexknoten (I-Knoten)
PercentUsedInodes filesystem % used inodes Prozentwert der zugeordneten (verwendeten) I-Knoten als Summe aus sämtlichen Dateisystemen
BytesReadPerSecond filesystem read bytes/sec Pro Sekunde gelesene Bytes
BytesWrittenPerSecond filesystem write bytes/sec Pro Sekunde geschriebene Bytes
Bytes pro Sekunde filesystem bytes/sec Pro Sekunde gelesene und geschriebene Bytes
ReadsPerSecond filesystem reads/sec Lesevorgänge pro Sekunde
WritesPerSecond filesystem writes/sec Schreibvorgänge pro Sekunde
TransfersPerSecond filesystem transfers/sec Lese- oder Schreibvorgänge pro Sekunde

Integrierte Metriken der Datenträgerklasse

Die Datenträgerklasse von Metriken liefert Informationen zur Nutzung von Datenträgergeräten. Diese Statistiken gelten für das gesamte Laufwerk.

Wenn ein Gerät mehrere Dateisysteme enthält, sind die Leistungsindikatoren für das Gerät effektiv über alle Dateisysteme aggregiert.

Leistungsindikator Anzeigename von azure.vm.linux.guestmetrics Bedeutung
ReadsPerSecond disk reads Lesevorgänge pro Sekunde
WritesPerSecond disk writes Schreibvorgänge pro Sekunde
TransfersPerSecond disk transfers Vorgänge gesamt pro Sekunde
AverageReadTime disk read time Durchschnittliche Anzahl von Sekunden pro Lesevorgang
AverageWriteTime disk write time Durchschnittliche Anzahl von Sekunden pro Schreibvorgang
AverageTransferTime disk transfer time Durchschnittliche Anzahl von Sekunden pro Vorgang
AverageDiskQueueLength disk queue length Durchschnittliche Anzahl von Datenträgervorgängen in der Warteschlange
ReadBytesPerSecond disk read guest os Anzahl von pro Sekunde gelesenen Bytes
WriteBytesPerSecond disk write guest os Anzahl von pro Sekunde geschriebenen Bytes
Bytes pro Sekunde disk total bytes Anzahl von pro Sekunde gelesenen und geschriebenen Bytes

Beispielkonfiguration für LAD 4.0

Die folgende Beispielkonfiguration für LAD 4.0 mit einigen Erläuterungen in diesem Abschnitt basiert auf den oben angegebenen Definitionen. Verwenden Sie Ihren eigenen Speicherkontonamen, SAS-Kontotoken und Event Hubs-SAS-Token, um dieses Beispiel anzuwenden.

Hinweis

Die Methode zum Bereitstellen von öffentlichen und geschützten Einstellungen unterscheidet sich abhängig davon, ob Sie LAD über die Azure CLI oder mithilfe von Azure PowerShell installieren:

  • Speichern Sie bei Verwendung der Azure-Befehlszeilenschnittstelle die folgenden Einstellungen in ProtectedSettings.json und PublicSettings.json für die Verwendung mit dem genannten Beispielbefehl.
  • Wenn Sie PowerShell verwenden, führen Sie $protectedSettings = '{ ... }' und $publicSettings = '{ ... }' aus, um die folgenden Einstellungen in $protectedSettings und $publicSettings zu speichern.

Konfiguration geschützter Einstellungen

Durch die geschützten Einstellungen wird Folgendes konfiguriert:

  • Ein Speicherkonto.
  • Ein übereinstimmendes SAS-Token für das Konto.
  • Mehrere Senken: JsonBlob oder EventHub mit SAS-Token.
{
  "storageAccountName": "yourdiagstgacct",
  "storageAccountSasToken": "sv=xxxx-xx-xx&ss=bt&srt=co&sp=wlacu&st=yyyy-yy-yyT21%3A22%3A00Z&se=zzzz-zz-zzT21%3A22%3A00Z&sig=fake_signature",
  "sinksConfig": {
    "sink": [
      {
        "name": "SyslogJsonBlob",
        "type": "JsonBlob"
      },
      {
        "name": "FilelogJsonBlob",
        "type": "JsonBlob"
      },
      {
        "name": "LinuxCpuJsonBlob",
        "type": "JsonBlob"
      },
      {
        "name": "MyJsonMetricsBlob",
        "type": "JsonBlob"
      },
      {
        "name": "LinuxCpuEventHub",
        "type": "EventHub",
        "sasURL": "https://youreventhubnamespace.servicebus.windows.net/youreventhubpublisher?sr=https%3a%2f%2fyoureventhubnamespace.servicebus.windows.net%2fyoureventhubpublisher%2f&sig=fake_signature&se=1808096361&skn=yourehpolicy"
      },
      {
        "name": "MyMetricEventHub",
        "type": "EventHub",
        "sasURL": "https://youreventhubnamespace.servicebus.windows.net/youreventhubpublisher?sr=https%3a%2f%2fyoureventhubnamespace.servicebus.windows.net%2fyoureventhubpublisher%2f&sig=yourehpolicy&skn=yourehpolicy"
      },
      {
        "name": "LoggingEventHub",
        "type": "EventHub",
        "sasURL": "https://youreventhubnamespace.servicebus.windows.net/youreventhubpublisher?sr=https%3a%2f%2fyoureventhubnamespace.servicebus.windows.net%2fyoureventhubpublisher%2f&sig=yourehpolicy&se=1808096361&skn=yourehpolicy"
      }
    ]
  }
}

Konfiguration der öffentlichen Einstellungen

Die öffentlichen Einstellungen weisen LAD zu Folgendem an:

  • Hochladen von Metriken zur prozentualen Prozessorzeit und zum verwendeten Speicherplatz in die Tabelle WADMetrics*.
  • Hochladen von Benachrichtigungen der Syslog-Funktion "user" mit dem Schweregrad "info" in die Tabelle LinuxSyslog*.
  • Hochladen von angefügten Zeilen in der Datei /var/log/myladtestlog in die Tabelle MyLadTestLog.

In jedem Fall werden außerdem Daten hochgeladen nach:

  • „Azure Blob Storage“. Der Containername entspricht der Definition in der JsonBlob-Senke.
  • Der Event Hubs-Endpunkt, wie in der EventHub-Senke angegeben.
{
  "StorageAccount": "yourdiagstgacct",
  "ladCfg": {
    "sampleRateInSeconds": 15,
    "diagnosticMonitorConfiguration": {
      "performanceCounters": {
        "sinks": "MyMetricEventHub,MyJsonMetricsBlob",
        "performanceCounterConfiguration": [
          {
            "unit": "Percent",
            "type": "builtin",
            "counter": "PercentProcessorTime",
            "counterSpecifier": "/builtin/Processor/PercentProcessorTime",
            "annotation": [
              {
                "locale": "en-us",
                "displayName": "cpu percentage guest os"
              }
            ],
            "condition": "IsAggregate=TRUE",
            "class": "Processor"
          },
          {
            "unit": "Bytes",
            "type": "builtin",
            "counter": "UsedSpace",
            "counterSpecifier": "/builtin/FileSystem/UsedSpace",
            "annotation": [
              {
                "locale": "en-us",
                "displayName": "Used disfilesystem used space"
              }
            ],
            "condition": "Name=\"/\"",
            "class": "Filesystem"
          }
        ]
      },
      "metrics": {
        "metricAggregation": [
          {
            "scheduledTransferPeriod": "PT1H"
          },
          {
            "scheduledTransferPeriod": "PT1M"
          }
        ],
        "resourceId": "/subscriptions/your_azure_subscription_id/resourceGroups/your_resource_group_name/providers/Microsoft.Compute/virtualMachines/your_vm_name"
      },
      "eventVolume": "Large",
      "syslogEvents": {
        "sinks": "SyslogJsonBlob,LoggingEventHub",
        "syslogEventConfiguration": {
          "LOG_USER": "LOG_INFO"
        }
      }
    }
  },
  "sinksConfig": {
    "sink": [
      {
        "name": "AzMonSink",
        "type": "AzMonSink",
        "AzureMonitor": {}
      }
    ]
  },
  "fileLogs": [
    {
      "file": "/var/log/myladtestlog",
      "table": "MyLadTestLog",
      "sinks": "FilelogJsonBlob,LoggingEventHub"
    }
  ]
}

Die resourceId in der Konfiguration muss mit der ID der VM oder der VM-Skalierungsgruppe übereinstimmen.

  • Die Funktion für Diagramme und Warnungen zu Azure-Plattformmetriken kennt die resourceId des virtuellen Computers, mit dem Sie arbeiten. Sie geht davon aus, die Daten zu Ihrer VM mithilfe der resourceId als Lookupschlüssel zu finden.
  • Bei Verwendung der automatischen Skalierung von Azure muss die resourceId in der Konfiguration für die automatische Skalierung mit der von LAD verwendeten resourceId übereinstimmen.
  • Die resourceId ist in die Namen von JSON-Blobs integriert, die von LAD geschrieben wurden.

Prüfen der Daten

Sie verwenden das Azure-Portal, um die Leistungsdaten anzuzeigen oder Warnungen festzulegen:

Screenshot: Seite „Metriken“ im Azure-Portal und ausgewählte Verfügbarkeit.

Die performanceCounters-Daten werden immer in einer Azure Storage-Tabelle gespeichert. Azure Storage-APIs sind für viele Sprachen und Plattformen verfügbar.

Die an JsonBlob-Senken gesendeten Daten werden in Blobs in dem Speicherkonto gespeichert, das in den geschützten Einstellungen angegeben wurde. Sie können die Blobdaten in beliebigen Azure Blob Storage-APIs verwenden.

Sie können auch folgende Tools mit grafischer Benutzeroberfläche für den Zugriff auf Daten in Azure Storage verwenden:

Der folgende Screenshot einer Sitzung im Microsoft Azure Storage-Explorer zeigt die generierten Azure Storage-Tabellen und -Container einer ordnungsgemäß konfigurierten LAD 4.0-Erweiterung auf einem virtuellen Testcomputer. Das Bild stimmt nicht genau mit der LAD 4.0-Beispielkonfiguration überein.

Screenshot des Azure Storage-Explorer.

Weitere Informationen zum Nutzen von Nachrichten, die an einem Event Hubs-Endpunkt veröffentlicht werden, finden Sie in der entsprechenden Event Hubs-Dokumentation.

Nächste Schritte