Configuratieschemaversies en -geschiedenis van Windows Azure Diagnostics-extensie (WAD)

Dit artikel bevat de versiegeschiedenis van de Azure Diagnostics-extensie voor Windows-schemaversies (WAD) die worden verzonden als onderdeel van de Microsoft Azure SDK.

Verzendgrafiek voor Azure SDK en diagnostische versies

Azure SDK-versie Diagnostische extensieversie Model
1.x 1.0 Plug-in
2.0 - 2.4 1.0 Plug-in
2,5 1.2 extensie
2,6 1.3 "
2.7 1.4 "
2.8 1.5 "
2.9 1.6 "
2.96 1,7 "
2.96 1.8 "
2.96 1.8.1 "
2.96 1,9 "
2.96 1.11 "
2.96 1.21 "

Azure Diagnostics versie 1.0 is voor het eerst geleverd in een invoegtoepassingsmodel. Dit betekent dat u bij de installatie van de Azure SDK de versie van Azure Diagnostics hebt ontvangen.

Vanaf SDK 2.5 (diagnostische versie 1.2) is Azure Diagnostics overgegaan naar een extensiemodel. De hulpprogramma's voor het gebruik van nieuwe functies waren alleen beschikbaar in nieuwere Azure SDK's, maar elke service die gebruikmaakt van Diagnostische gegevens van Azure, zou de nieuwste verzendversie rechtstreeks van Azure ophalen. Iedereen die nog gebruikmaakt van SDK 2.5 laadt bijvoorbeeld de nieuwste versie die in de vorige tabel wordt weergegeven, ongeacht of ze de nieuwere functies gebruiken.

Schema-index

Verschillende versies van Azure Diagnostics gebruiken verschillende configuratieschema's. Schema 1.0 en 1.2 zijn afgeschaft. Zie Diagnostische gegevens 1.3 en hoger voor meer informatie over versie 1.3 en hoger.

Versiegeschiedenis

Diagnostische extensie 1.11

Ondersteuning toegevoegd voor de Azure Monitor-sink. Deze sink is alleen van toepassing op prestatiemeteritems. Hiermee kunt u prestatiemeteritems die zijn verzameld op uw VM, VMSS of cloudservice naar Azure Monitor verzenden als aangepaste metrische gegevens. De Azure Monitor-sink ondersteunt:

  • Het ophalen van alle prestatiemeteritems die naar Azure Monitor zijn verzonden via de API's voor metrische gegevens van Azure Monitor.
  • Waarschuwingen voor alle prestatiemeteritems die naar Azure Monitor worden verzonden via de nieuwe geïntegreerde waarschuwingservaring in Azure Monitor
  • De jokertekenoperator in prestatiemeteritems behandelen als de dimensie Exemplaar in uw metrische gegevens. Als u bijvoorbeeld de teller 'LogicalDisk(*)/DiskWrites/sec' hebt verzameld, kunt u filteren en splitsen op de dimensie Exemplaar om de schijfschrijfbewerkingen per seconde te tekenen of te waarschuwen voor elke logische schijf (C:, D:, enzovoort)

Azure Monitor definiëren als een nieuwe sink in de configuratie van uw diagnostische extensie

"SinksConfig": {
    "Sink": [
        {
            "name": "AzureMonitorSink",
            "AzureMonitor": {}
        },
    ]
}
<SinksConfig>  
  <Sink name="AzureMonitorSink">
      <AzureMonitor/>
  </Sink>
</SinksConfig>

Notitie

Voor het configureren van de Azure Monitor-sink voor klassieke VM's en klassieke CLoud-service moeten er meer parameters worden gedefinieerd in de persoonlijke configuratie van de diagnostische extensie.

Raadpleeg de gedetailleerde documentatie voor het extensieschema voor diagnostische gegevens voor meer informatie.

Vervolgens kunt u uw prestatiemeteritems configureren om te worden gerouteerd naar de Azure Monitor-sink.

"PerformanceCounters": {
    "scheduledTransferPeriod": "PT1M",
    "sinks": "AzureMonitorSink",
    "PerformanceCounterConfiguration": [
        {
            "counterSpecifier": "\\Processor(_Total)\\% Processor Time",
            "sampleRate": "PT1M",
            "unit": "percent"
        }
    ]
},
<PerformanceCounters scheduledTransferPeriod="PT1M", sinks="AzureMonitorSink">  
  <PerformanceCounterConfiguration counterSpecifier="\Processor(_Total)\% Processor Time" sampleRate="PT1M" unit="percent" />  
</PerformanceCounters>

Diagnostische extensie 1.9

Docker-ondersteuning toegevoegd.

Diagnostische extensie 1.8.1

Kan een SAS-token opgeven in plaats van een opslagaccountsleutel in de privéconfiguratie. Als er een SAS-token wordt opgegeven, wordt de sleutel van het opslagaccount genegeerd.

{
    "storageAccountName": "diagstorageaccount",
    "storageAccountEndPoint": "https://core.windows.net",
    "storageAccountSasToken": "{sas token}",
    "SecondaryStorageAccounts": {
        "StorageAccount": [
            {
                "name": "secondarydiagstorageaccount",
                "endpoint": "https://core.windows.net",
                "sasToken": "{sas token}"
            }
        ]
    }
}
<PrivateConfig>
    <StorageAccount name="diagstorageaccount" endpoint="https://core.windows.net" sasToken="{sas token}" />
    <SecondaryStorageAccounts>
        <StorageAccount name="secondarydiagstorageaccount" endpoint="https://core.windows.net" sasToken="{sas token}" />
    </SecondaryStorageAccounts>
</PrivateConfig>

Diagnostische extensie 1.8

Opslagtype toegevoegd aan PublicConfig. StorageType kan Table, Blob, TableAndBlob zijn. Tabel is de standaardinstelling.

{
    "WadCfg": {
    },
    "StorageAccount": "diagstorageaccount",
    "StorageType": "TableAndBlob"
}
<PublicConfig>
    <WadCfg />
    <StorageAccount>diagstorageaccount</StorageAccount>
    <StorageType>TableAndBlob</StorageType>
</PublicConfig>

Diagnostische extensie 1.7

De mogelijkheid om te routeren naar EventHub is toegevoegd.

Diagnostische extensie 1.5

Het element sinks is toegevoegd en de mogelijkheid om diagnostische gegevens naar Application Insights te verzenden, waardoor het eenvoudiger is om problemen in uw toepassing en op systeem- en infrastructuurniveau vast te stellen.

Azure SDK 2.6 en diagnostische extensie 1.3

Voor Cloud Service-projecten in Visual Studio zijn de volgende wijzigingen aangebracht. (Deze wijzigingen zijn ook van toepassing op latere versies van Azure SDK.)

  • De lokale emulator ondersteunt nu diagnostische gegevens. Deze wijziging betekent dat u diagnostische gegevens kunt verzamelen en ervoor kunt zorgen dat uw toepassing de juiste traceringen maakt terwijl u in Visual Studio ontwikkelt en test. Met de connection string UseDevelopmentStorage=true kunt u diagnostische gegevens verzamelen terwijl u uw cloudserviceproject uitvoert in Visual Studio met behulp van de Azure Storage Emulator. Alle diagnostische gegevens worden verzameld in het opslagaccount (Development Storage).
  • Het opslagaccount voor diagnostische gegevens connection string (Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString) wordt opnieuw opgeslagen in het serviceconfiguratiebestand (.cscfg). In Azure SDK 2.5 is het opslagaccount voor diagnostische gegevens opgegeven in het bestand diagnostics.wadcfgx.

Er zijn enkele belangrijke verschillen tussen hoe de connection string werkte in Azure SDK 2.4 en eerder en hoe het werkt in Azure SDK 2.6 en hoger.

  • In Azure SDK 2.4 en eerder werd de connection string tijdens runtime gebruikt door de invoegtoepassing voor diagnostische gegevens om de opslagaccountgegevens voor het overdragen van diagnostische logboeken op te halen.
  • In Azure SDK 2.6 en hoger gebruikt Visual Studio de diagnostische connection string om de diagnostische extensie te configureren met de juiste opslagaccountgegevens tijdens het publiceren. Met de connection string kunt u verschillende opslagaccounts definiëren voor verschillende serviceconfiguraties die Visual Studio gebruikt bij het publiceren. Omdat de invoegtoepassing voor diagnostische gegevens echter niet meer beschikbaar is (na Azure SDK 2.5), kan het .cscfg-bestand zelf de diagnostische extensie niet inschakelen. U moet de extensie afzonderlijk inschakelen via hulpprogramma's zoals Visual Studio of PowerShell.
  • Om het proces voor het configureren van de diagnostische extensie met PowerShell te vereenvoudigen, bevat de pakketuitvoer van Visual Studio ook de openbare configuratie-XML voor de diagnostische extensie voor elke rol. Visual Studio gebruikt de diagnostische connection string om de opslagaccountgegevens in te vullen die aanwezig zijn in de openbare configuratie. De openbare configuratiebestanden worden gemaakt in de map Extensies en volgen het patroon PaaSDiagnostics.<RoleName>.PubConfig.xml. Implementaties op basis van PowerShell kunnen dit patroon gebruiken om elke configuratie toe te wijzen aan een rol.
  • De connection string in het .cscfg-bestand wordt ook gebruikt door de Azure Portal om toegang te krijgen tot de diagnostische gegevens, zodat deze kunnen worden weergegeven op het tabblad Bewaking. De connection string is nodig om de service zo te configureren dat uitgebreide bewakingsgegevens in de portal worden weergegeven.

Projecten migreren naar Azure SDK 2.6 en hoger

Wanneer u migreert van Azure SDK 2.5 naar Azure SDK 2.6 of hoger en u een opslagaccount voor diagnostische gegevens hebt opgegeven in het wadcfgx-bestand, blijft dit daar. Als u wilt profiteren van de flexibiliteit van het gebruik van verschillende opslagaccounts voor verschillende opslagconfiguraties, moet u de connection string handmatig toevoegen aan uw project. Als u een project migreert van Azure SDK 2.4 of eerder naar Azure SDK 2.6, blijven de diagnostische verbindingsreeksen behouden. Let echter op de wijzigingen in de behandeling van verbindingsreeksen in Azure SDK 2.6, zoals opgegeven in de vorige sectie.

Hoe Visual Studio het opslagaccount voor diagnostische gegevens bepaalt

  • Als een diagnostische connection string is opgegeven in het .cscfg-bestand, gebruikt Visual Studio deze om de diagnostische extensie te configureren bij het publiceren en bij het genereren van de xml-bestanden met de openbare configuratie tijdens het verpakken.
  • Als er geen diagnostische connection string is opgegeven in het .cscfg-bestand, valt Visual Studio terug op het gebruik van het opslagaccount dat is opgegeven in het wadcfgx-bestand om de diagnostische extensie te configureren bij het publiceren en het genereren van de openbare xml-configuratiebestanden bij het verpakken.
  • De diagnostische connection string in het .cscfg-bestand heeft voorrang op het opslagaccount in het .wadcfgx-bestand. Als een diagnostische connection string is opgegeven in het .cscfg-bestand, gebruikt Visual Studio dat en negeert het opslagaccount in .wadcfgx.

Wat doet de 'Opslagverbindingsreeksen voor ontwikkeling bijwerken...' selectievakje doen?

Het selectievakje voor Opslagverbindingsreeksen voor ontwikkeling bijwerken voor diagnostische gegevens en opslaan in cache met microsoft Azure-opslagaccountreferenties bij publiceren naar Microsoft Azure biedt u een handige manier om verbindingsreeksen voor ontwikkelopslagaccounts bij te werken met het Azure-opslagaccount dat is opgegeven tijdens het publiceren.

Stel dat u dit selectievakje inschakelt en dat de diagnostische connection string opgeeftUseDevelopmentStorage=true. Wanneer u het project naar Azure publiceert, worden de diagnostische connection string door Visual Studio automatisch bijgewerkt met het opslagaccount dat u hebt opgegeven in de wizard Publiceren. Als echter een echt opslagaccount is opgegeven als de diagnostische connection string, wordt in plaats daarvan dat account gebruikt.

Verschillen in diagnostische functionaliteit tussen Azure SDK 2.4 en eerder en Azure SDK 2.5 en hoger

Als u uw project upgradet van Azure SDK 2.4 naar Azure SDK 2.5 of hoger, moet u rekening houden met de volgende diagnostische functionaliteitsverschillen.

  • Configuratie-API's zijn afgeschaft : programmatische configuratie van diagnostische gegevens is beschikbaar in Azure SDK 2.4 of eerdere versies, maar is afgeschaft in Azure SDK 2.5 en hoger. Als uw diagnostische configuratie momenteel is gedefinieerd in code, moet u deze instellingen helemaal opnieuw configureren in het gemigreerde project om ervoor te zorgen dat de diagnostische gegevens blijven werken. Het configuratiebestand voor diagnostische gegevens voor Azure SDK 2.4 is diagnostics.wadcfg en diagnostics.wadcfgx voor Azure SDK 2.5 en hoger.
  • Diagnostische gegevens voor cloudservicetoepassingen kunnen alleen worden geconfigureerd op rolniveau, niet op exemplaarniveau.
  • Telkens wanneer u uw app implementeert, wordt de configuratie van diagnostische gegevens bijgewerkt. Dit kan pariteitsproblemen veroorzaken als u de diagnostische configuratie vanuit Server Explorer wijzigt en vervolgens uw app opnieuw implementeert.
  • In Azure SDK 2.5 en hoger worden crashdumps geconfigureerd in het configuratiebestand voor diagnostische gegevens, niet in code . Als u crashdumps hebt geconfigureerd in code, moet u de configuratie handmatig overdragen van de code naar het configuratiebestand, omdat de crashdumps niet worden overgedragen tijdens de migratie naar Azure SDK 2.6.