Wysyłanie danych z rozszerzenia diagnostyki platformy Windows Azure do usługi Azure Event Hubs
Rozszerzenie diagnostyki platformy Azure to agent w usłudze Azure Monitor, który zbiera dane monitorowania z systemu operacyjnego gościa i obciążeń maszyn wirtualnych platformy Azure i innych zasobów obliczeniowych. W tym artykule opisano sposób wysyłania danych z rozszerzenia Diagnostyka platformy Windows Azure (WAD) do usługi Azure Event Hubs , dzięki czemu można przekazywać dalej do lokalizacji spoza platformy Azure.
Obsługiwane dane
Dane zebrane z systemu operacyjnego gościa, które można wysłać do usługi Event Hubs, obejmują następujące elementy. Inne źródła danych zebrane przez wad, w tym dzienniki usług IIS i zrzuty awaryjne, nie mogą być wysyłane do usługi Event Hubs.
- Zdarzenia funkcji Śledzenie zdarzeń systemu Windows (ETW)
- Liczniki wydajności
- Dzienniki zdarzeń systemu Windows, w tym dzienniki aplikacji w dzienniku zdarzeń systemu Windows
- Dzienniki infrastruktury diagnostyki Azure
Wymagania wstępne
- Rozszerzenie diagnostyki systemu Windows w wersji 1.6 lub nowszej. Zobacz Diagnostyka Azure wersje schematu konfiguracji rozszerzenia i historię historii wersji oraz omówienie rozszerzenia Diagnostyka Azure dla obsługiwanych zasobów.
- Przestrzeń nazw usługi Event Hubs musi być zawsze aprowizowana. Aby uzyskać szczegółowe informacje, zobacz Wprowadzenie do usługi Event Hubs .
- Centrum zdarzeń musi być co najmniej warstwą Standardowa. Warstwa Podstawowa nie jest obsługiwana.
Schemat konfiguracji
Zobacz Instalowanie i konfigurowanie rozszerzenia diagnostyki platformy Windows Azure (WAD) dla różnych opcji włączania i konfigurowania rozszerzenia diagnostyki oraz schematu konfiguracji Diagnostyka Azure, aby uzyskać informacje o schemacie konfiguracji. W pozostałej części tego artykułu opisano sposób używania tej konfiguracji do wysyłania danych do centrum zdarzeń.
Diagnostyka Azure zawsze wysyła dzienniki i metryki do konta usługi Azure Storage. Można skonfigurować co najmniej jeden ujścia danych, który wysyła dane do dodatkowych lokalizacji. Każdy ujście jest definiowany w elemecie SinksConfig konfiguracji publicznej z poufnymi informacjami w konfiguracji prywatnej. Ta konfiguracja dla centrów zdarzeń używa wartości w poniższej tabeli.
Właściwości | Opis |
---|---|
Nazwa/nazwisko | Opisowa nazwa ujścia. Służy do określania źródeł danych, które mają być wysyłane do ujścia. |
Url | Adres URL centrum zdarzeń w postaci <event-hubs-namespace.servicebus.windows.net/>< event-hub-name>. |
SharedAccessKeyName | Nazwa zasad dostępu współdzielonego dla centrum zdarzeń, które ma co najmniej urząd Wysyłania . |
SharedAccessKey | Klucz podstawowy lub pomocniczy z zasad dostępu współdzielonego dla centrum zdarzeń. |
Poniżej przedstawiono przykładowe konfiguracje publiczne i prywatne. Jest to minimalna konfiguracja z pojedynczym licznikiem wydajności i dziennikiem zdarzeń, aby zilustrować sposób konfigurowania i używania ujścia danych centrum zdarzeń. Aby uzyskać bardziej złożony przykład, zobacz Diagnostyka Azure schemat konfiguracji.
Konfiguracja publiczna
{
"WadCfg": {
"DiagnosticMonitorConfiguration": {
"overallQuotaInMB": 5120,
"PerformanceCounters": {
"scheduledTransferPeriod": "PT1M",
"sinks": "myEventHub",
"PerformanceCounterConfiguration": [
{
"counterSpecifier": "\\Processor(_Total)\\% Processor Time",
"sampleRate": "PT3M"
}
]
},
"WindowsEventLog": {
"scheduledTransferPeriod": "PT1M",
"sinks": "myEventHub",
"DataSource": [
{
"name": "Application!*[System[(Level=1 or Level=2 or Level=3)]]"
}
]
}
},
"SinksConfig": {
"Sink": [
{
"name": "myEventHub",
"EventHub": {
"Url": "https://diags-mycompany-ns.servicebus.windows.net/diageventhub",
"SharedAccessKeyName": "SendRule"
}
}
]
}
},
"StorageAccount": "mystorageaccount",
}
Konfiguracja prywatna
{
"storageAccountName": "mystorageaccount",
"storageAccountKey": "{base64 encoded key}",
"storageAccountEndPoint": "https://core.windows.net",
"EventHub": {
"Url": "https://diags-mycompany-ns.servicebus.windows.net/diageventhub",
"SharedAccessKeyName": "SendRule",
"SharedAccessKey": "{base64 encoded key}"
}
}
Opcje konfiguracji
Aby wysłać dane do ujścia danych, należy określić atrybut ujścia w węźle źródła danych. Gdzie umieszczasz atrybut ujścia określa zakres przypisania. W poniższym przykładzie atrybut ujścia jest zdefiniowany w węźle PerformanceCounters, co spowoduje wysłanie wszystkich podrzędnych liczników wydajności do centrum zdarzeń.
"PerformanceCounters": {
"scheduledTransferPeriod": "PT1M",
"sinks": "MyEventHub",
"PerformanceCounterConfiguration": [
{
"counterSpecifier": "\\Processor(_Total)\\% Processor Time",
"sampleRate": "PT3M"
},
{
"counterSpecifier": "\\Memory\\Available MBytes",
"sampleRate": "PT3M"
},
{
"counterSpecifier": "\\Web Service(_Total)\\ISAPI Extension Requests/sec",
"sampleRate": "PT3M"
}
]
}
W poniższym przykładzie atrybut ujścia jest stosowany bezpośrednio do trzech liczników, co spowoduje wysłanie tylko tych liczników wydajności do centrum zdarzeń.
"PerformanceCounters": {
"scheduledTransferPeriod": "PT1M",
"PerformanceCounterConfiguration": [
{
"counterSpecifier": "\\Processor(_Total)\\% Processor Time",
"sampleRate": "PT3M",
"sinks": "MyEventHub"
},
{
"counterSpecifier": "\\Memory\\Available MBytes",
"sampleRate": "PT3M"
},
{
"counterSpecifier": "\\Web Service(_Total)\\ISAPI Extension Requests/sec",
"sampleRate": "PT3M"
},
{
"counterSpecifier": "\\ASP.NET\\Requests Rejected",
"sampleRate": "PT3M",
"sinks": "MyEventHub"
},
{
"counterSpecifier": "\\ASP.NET\\Requests Queued",
"sampleRate": "PT3M",
"sinks": "MyEventHub"
}
]
}
Weryfikowanie konfiguracji
Do sprawdzania, czy dane są wysyłane do centrum zdarzeń, można użyć różnych metod. Jedną z prostych metod jest użycie funkcji przechwytywania usługi Event Hubs zgodnie z opisem w artykule Przechwytywanie zdarzeń za pośrednictwem usługi Azure Event Hubs w usłudze Azure Blob Storage lub Azure Data Lake Storage.
Rozwiązywanie problemów z ujściami usługi Event Hubs
Zapoznaj się z tabelą usługi Azure Storage WADDiagnosticInfrastructureLogsTable zawierającą dzienniki i błędy dla samego Diagnostyka Azure. Jedną z opcji jest użycie narzędzia, takiego jak Eksplorator usługi Azure Storage, aby nawiązać połączenie z tym kontem magazynu, wyświetlić tę tabelę i dodać zapytanie dotyczące znacznika czasu w ciągu ostatnich 24 godzin. Za pomocą narzędzia można wyeksportować plik .csv i otworzyć go w aplikacji, takiej jak Microsoft Excel. Program Excel ułatwia wyszukiwanie ciągów karty wywołującej, takich jak EventHubs, aby zobaczyć, jaki błąd jest zgłaszany.
Sprawdź, czy centrum zdarzeń zostało pomyślnie aprowidowane. Wszystkie informacje o połączeniu w sekcji PrivateConfig konfiguracji muszą być zgodne z wartościami zasobu, jak pokazano w portalu. Upewnij się, że masz zdefiniowane zasady sygnatury dostępu współdzielonego (SendRule w przykładzie) w portalu i że udzielono uprawnień Wyślij .