Udostępnij za pośrednictwem


Migrowanie z interfejsu API modułu zbierającego dane HTTP do interfejsu API pozyskiwania dzienników w celu wysyłania danych do dzienników usługi Azure Monitor

Interfejs API pozyskiwania dzienników usługi Azure Monitor zapewnia większą moc obliczeniową i większą elastyczność pozyskiwania dzienników i zarządzania tabelami niż starszy interfejs API modułu zbierającego dane HTTP. W tym artykule opisano różnice między interfejsem API modułu zbierającego dane a interfejsem API pozyskiwania dzienników oraz przedstawiono wskazówki i najlepsze rozwiązania dotyczące migracji do nowego interfejsu API pozyskiwania dzienników.

Uwaga

Jako MVP firmy Microsoft Morten Waltorp Knudsen przyczynił się do tego artykułu i przekazał do tego artykułu materiałową opinię. Aby zapoznać się z przykładem automatyzowania konfiguracji i ciągłego korzystania z interfejsu API pozyskiwania dzienników, zobacz publicznie dostępny moduł AzLogDcrIngestPS programu PowerShell firmy Morten.

Zalety interfejsu API pozyskiwania dzienników

Interfejs API pozyskiwania dzienników zapewnia następujące korzyści w porównaniu z interfejsem API modułu zbierającego dane:

  • Obsługuje przekształcenia, które umożliwiają modyfikowanie danych przed ich pozyskiwaniem do tabeli docelowej, w tym filtrowaniem i manipulowaniem danymi.
  • Umożliwia wysyłanie danych do wielu miejsc docelowych.
  • Umożliwia zarządzanie schematem tabeli docelowej, w tym nazwami kolumn, oraz dodawanie nowych kolumn do tabeli docelowej po zmianie schematu danych źródłowych.

Wymagania wstępne

Procedura migracji opisana w tym artykule zakłada, że masz następujące założenia:

Wymagane uprawnienia

Akcja Wymagane uprawnienia
Utwórz punkt końcowy zbierania danych. Microsoft.Insights/dataCollectionEndpoints/write uprawnienia udostępniane przez wbudowaną rolę Współautor monitorowania, na przykład.
Utwórz lub zmodyfikuj regułę zbierania danych. Microsoft.Insights/DataCollectionRules/Write uprawnienia udostępniane przez wbudowaną rolę Współautor monitorowania, na przykład.
Przekonwertuj tabelę, która używa interfejsu API modułu zbierającego dane do reguł zbierania danych i interfejsu API pozyskiwania dzienników. Microsoft.OperationalInsights/workspaces/tables/migrate/actionuprawnienia udostępniane przez wbudowaną rolę współautora usługi Log Analytics, na przykład.
Utwórz nowe tabele lub zmodyfikuj schematy tabel. microsoft.operationalinsights/workspaces/tables/writeuprawnienia udostępniane przez wbudowaną rolę współautora usługi Log Analytics, na przykład.
Wywołaj interfejs API pozyskiwania dzienników. Zobacz Przypisywanie uprawnień do kontrolera domeny.

Tworzenie nowych zasobów wymaganych dla interfejsu API pozyskiwania dzienników

Interfejs API pozyskiwania dzienników wymaga utworzenia dwóch nowych typów zasobów, których interfejs API modułu zbierającego dane HTTP nie wymaga:

  • Punkty końcowe zbierania danych, z których zbierane dane są pozyskiwane do potoku na potrzeby przetwarzania.
  • Reguły zbierania danych, które definiują przekształcenia danych i tabelę docelową, do której są pozyskiwane dane.

Migrowanie istniejących tabel niestandardowych lub tworzenie nowych tabel

Jeśli masz istniejącą tabelę niestandardową, do której obecnie wysyłasz dane przy użyciu interfejsu API modułu zbierającego dane, możesz:

  • Przeprowadź migrację tabeli, aby kontynuować pozyskiwanie danych do tej samej tabeli przy użyciu interfejsu API pozyskiwania dzienników.

  • Zachowaj istniejącą tabelę i dane i skonfiguruj nową tabelę, w której pozyskiwane są dane przy użyciu interfejsu API pozyskiwania dzienników. Następnie możesz usunąć starą tabelę, gdy wszystko będzie gotowe.

    Jest to preferowana opcja, zwłaszcza jeśli musisz wprowadzić zmiany w istniejącej tabeli. Zmiany istniejących typów danych i wiele zmian schematu w istniejących tabelach niestandardowych interfejsu API modułu zbierającego dane mogą prowadzić do błędów.

Napiwek

Aby określić, które tabele używają interfejsu API modułu zbierającego dane, wyświetl właściwości tabeli. Właściwość Type tabel korzystających z interfejsu API modułu zbierającego dane jest ustawiona na wartość Tabela niestandardowa (klasyczna). Należy pamiętać, że tabele pozyskające dane przy użyciu starszego agenta usługi Log Analytics (MMA) mają również właściwość Type ustawioną na tabelę niestandardową (klasyczną). Przed przekonwertowaniem tabel MMA pamiętaj, aby przeprowadzić migrację z agenta usługi Log Analytics do agenta usługi Azure Monitor. W przeciwnym razie po konwersji tabeli zatrzymasz pozyskiwanie danych do pól niestandardowych w tych tabelach.

Ta tabela zawiera podsumowanie zagadnień, które należy wziąć pod uwagę dla każdej opcji:

Migracja tabel Implementacja równoległa
Nazewnictwo tabel i kolumn Użyj ponownie istniejącej nazwy tabeli.
Opcje nazewnictwa kolumn:
— Użyj nowych nazw kolumn i zdefiniuj przekształcenie, aby skierować dane przychodzące do nowo nazwanej kolumny.
- Kontynuuj używanie starych nazw.
Ustaw bezpłatnie nazwę nowej tabeli.
Przed przełączeniem do nowej tabeli należy dostosować integracje, pulpity nawigacyjne i alerty.
Procedura migracji Migracja jednorazowej tabeli. Nie można wycofać zmigrowanej tabeli. Migrację można przeprowadzić stopniowo na tabelę.
Po migracji Możesz nadal pozyskiwać dane przy użyciu interfejsu API modułu zbierającego dane HTTP z istniejącymi kolumnami, z wyjątkiem kolumn niestandardowych.
Pozyskiwanie danych do nowych kolumn przy użyciu tylko interfejsu API pozyskiwania dzienników.
Dane w starej tabeli są dostępne do końca okresu przechowywania.
Po pierwszym skonfigurowaniu nowej tabeli lub wprowadzeniu zmian schematu może upłynąć od 10 do 15 minut, aby zmiany danych zaczęły pojawiać się w tabeli docelowej.

Aby przekonwertować tabelę, która używa interfejsu API modułu zbierającego dane do reguł zbierania danych i interfejsu API pozyskiwania dzienników, należy wydać to wywołanie interfejsu API względem tabeli:

POST https://management.azure.com/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/tables/{tableName}/migrate?api-version=2021-12-01-preview

To wywołanie jest idempotentne, więc nie ma wpływu, jeśli tabela została już przekonwertowana.

Wywołanie interfejsu API umożliwia korzystanie ze wszystkich funkcji dzienników niestandardowych opartych na kontrolerze domeny w tabeli. Interfejs API modułu zbierającego dane będzie nadal pozyskiwać dane do istniejących kolumn, ale nie utworzy żadnych nowych kolumn. Wszystkie wcześniej zdefiniowane pola niestandardowe nie będą nadal wypełniane. Innym sposobem migracji istniejącej tabeli do używania reguł zbierania danych, ale niekoniecznie interfejs API pozyskiwania dzienników stosuje przekształcenie obszaru roboczego do tabeli.

Ważne

  • Nazwy kolumn muszą zaczynać się literą i mogą składać się z maksymalnie 45 znaków alfanumerycznych i podkreśleń (_).
  • _ResourceId, , id_SubscriptionIdTenantIdType_ResourceIdUniqueId, i Title są zastrzeżonymi nazwami kolumn.
  • Kolumny niestandardowe dodawane do tabeli platformy Azure muszą mieć sufiks _CF.
  • Jeśli zaktualizujesz schemat tabeli w obszarze roboczym usługi Log Analytics, musisz również zaktualizować definicję strumienia wejściowego w regule zbierania danych, aby pozyskiwać dane do nowych lub zmodyfikowanych kolumn.

Wywoływanie interfejsu API pozyskiwania dzienników

Interfejs API pozyskiwania dzienników umożliwia wysyłanie do 1 MB skompresowanych lub nieskompresowanych danych na wywołanie. Jeśli chcesz wysłać więcej niż 1 MB danych, możesz wysłać wiele wywołań równolegle. Jest to zmiana interfejsu API modułu zbierającego dane, która umożliwia wysyłanie do 32 MB danych na wywołanie.

Aby uzyskać informacje na temat wywoływania interfejsu API pozyskiwania dzienników, zobacz Wywołanie interfejsu API REST pozyskiwania dzienników.

Modyfikowanie schematów tabel i reguł zbierania danych na podstawie zmian w obiekcie danych źródłowych

Interfejs API modułu zbierającego dane automatycznie dostosowuje schemat tabeli docelowej po zmianie schematu obiektu danych źródłowych, a interfejs API pozyskiwania dzienników nie. Dzięki temu nie zbierasz nowych danych w kolumnach, które nie zamierzasz tworzyć.

Gdy schemat danych źródłowych ulegnie zmianie, możesz:

  • Zmodyfikuj schematy tabeli docelowej i reguły zbierania danych, aby dostosować je do zmian schematu danych źródłowych.
  • Zdefiniuj przekształcenie w regule zbierania danych, aby wysłać nowe dane do istniejących kolumn w tabeli docelowej.
  • Pozostaw tabelę docelową i regułę zbierania danych bez zmian. W takim przypadku nie pozyskujesz nowych danych.

Uwaga

Nie można ponownie użyć nazwy kolumny z typem danych, który różni się od oryginalnego typu danych zdefiniowanego dla kolumny.

Następne kroki