Samouczek: dodawanie przekształcenia w regule zbierania danych obszaru roboczego przy użyciu witryny Azure Portal

W tym samouczku przedstawiono konfigurację przykładowej transformacji w regule zbierania danych obszaru roboczego (DCR) przy użyciu witryny Azure Portal. Przekształcenia w usłudze Azure Monitor umożliwiają filtrowanie lub modyfikowanie danych przychodzących przed wysłaniem ich do miejsca docelowego. Przekształcenia obszarów roboczych zapewniają obsługę przekształceń czasu pozyskiwania dla przepływów pracy, które nie korzystają jeszcze z potoku pozyskiwania danych usługi Azure Monitor.

Przekształcenia obszaru roboczego są przechowywane razem w jednym kontrolerze domeny dla obszaru roboczego, który jest nazywany dcR obszaru roboczego. Każde przekształcenie jest skojarzone z określoną tabelą. Przekształcenie zostanie zastosowane do wszystkich danych wysyłanych do tej tabeli z dowolnego przepływu pracy, który nie korzysta z kontrolera DCR.

Uwaga

W tym samouczku do konfigurowania przekształcenia obszaru roboczego jest używana witryna Azure Portal. Aby zapoznać się z tym samym samouczkiem przy użyciu szablonów usługi Azure Resource Manager i interfejsu API REST, zobacz Samouczek: dodawanie transformacji w regule zbierania danych obszaru roboczego do usługi Azure Monitor przy użyciu szablonów usługi Resource Manager.

Z tego samouczka dowiesz się, jak wykonywać następujące czynności:

  • Konfigurowanie przekształcenia obszaru roboczego dla tabeli w obszarze roboczym usługi Log Analytics.
  • Napisz zapytanie dziennika dotyczące przekształcenia obszaru roboczego.

Wymagania wstępne

Do ukończenia tego samouczka niezbędne są następujące elementy:

Omówienie samouczka

W tym samouczku zmniejszysz wymagania dotyczące magazynu dla LAQueryLogs tabeli, filtrując niektóre rekordy. Usuniesz również zawartość kolumny podczas analizowania danych kolumny w celu przechowywania fragmentu danych w kolumnie niestandardowej. Tabela LAQueryLogs jest tworzona podczas włączania inspekcji zapytań dzienników w obszarze roboczym. Ten sam podstawowy proces umożliwia utworzenie przekształcenia dla dowolnej obsługiwanej tabeli w obszarze roboczym usługi Log Analytics.

W tym samouczku użyto witryny Azure Portal, która udostępnia kreatora, który przeprowadzi Cię przez proces tworzenia transformacji czasu pozyskiwania. Po zakończeniu kroków zobaczysz, że kreator:

  • Aktualizacje schemat tabeli z innymi kolumnami z zapytania.
  • Tworzy kontroler WorkspaceTransforms domeny i łączy go z obszarem roboczym, jeśli domyślny kontroler domeny nie jest jeszcze połączony z obszarem roboczym.
  • Tworzy transformację czasu pozyskiwania i dodaje ją do modułu DCR.

Włączanie dzienników inspekcji zapytań

Należy włączyć inspekcję zapytań dla obszaru roboczego, aby utworzyć tabelę LAQueryLogs , z którą będziesz pracować. Ten krok nie jest wymagany dla wszystkich przekształceń czasu pozyskiwania. Wystarczy wygenerować przykładowe dane, z którymi będziemy pracować.

  1. W menu Obszary robocze usługi Log Analytics w witrynie Azure Portal wybierz pozycję Ustawienia>diagnostyczne Dodaj ustawienie diagnostyczne.

    Zrzut ekranu przedstawiający ustawienia diagnostyczne.

  2. Wprowadź nazwę ustawień diagnostyki. Wybierz obszar roboczy, aby dane inspekcji są przechowywane w tym samym obszarze roboczym. Wybierz kategorię Inspekcja, a następnie wybierz pozycję Zapisz, aby zapisać ustawienie diagnostyczne i zamknąć stronę Ustawienia diagnostyczne.

    Zrzut ekranu przedstawiający nowe ustawienie diagnostyczne.

  3. Wybierz pozycję Dzienniki , a następnie uruchom kilka zapytań, aby wypełnić LAQueryLogs niektóre dane. Te zapytania nie muszą zwracać danych, które mają zostać dodane do dziennika inspekcji.

    Zrzut ekranu przedstawiający przykładowe zapytania dziennika.

Dodawanie przekształcenia do tabeli

Po utworzeniu tabeli możesz utworzyć dla niej przekształcenie.

  1. W menu Obszary robocze usługi Log Analytics w witrynie Azure Portal wybierz pozycję Tabele. Znajdź tabelę LAQueryLogs i wybierz pozycję Utwórz przekształcenie.

    Zrzut ekranu przedstawiający tworzenie nowej transformacji.

  2. Ponieważ ta transformacja jest pierwszą w obszarze roboczym, musisz utworzyć przekształcenie obszaru roboczego DCR. Jeśli utworzysz przekształcenia dla innych tabel w tym samym obszarze roboczym, będą one przechowywane w tym samym kontrolerze domeny. Wybierz pozycję Utwórz nową regułę zbierania danych. Subskrypcja i grupa zasobów zostaną już wypełnione dla obszaru roboczego. Wprowadź nazwę kontrolera domeny i wybierz pozycję Gotowe.

    Zrzut ekranu przedstawiający tworzenie nowej reguły zbierania danych.

  3. Wybierz pozycję Dalej , aby wyświetlić przykładowe dane z tabeli. Podczas definiowania przekształcenia wynik zostanie zastosowany do przykładowych danych. Z tego powodu można ocenić wyniki przed zastosowaniem ich do rzeczywistych danych. Wybierz pozycję Edytor przekształceń, aby zdefiniować przekształcenie.

    Zrzut ekranu przedstawiający przykładowe dane z tabeli dziennika.

  4. W edytorze przekształceń można zobaczyć przekształcenie, które zostanie zastosowane do danych przed ich pozyskiwaniem do tabeli. Dane przychodzące są reprezentowane przez tabelę wirtualną o nazwie source, która ma ten sam zestaw kolumn co sama tabela docelowa. Przekształcenie początkowo zawiera proste zapytanie, które zwraca tabelę source bez zmian.

  5. Zmodyfikuj zapytanie w następującym przykładzie:

    source
    | where QueryText !contains 'LAQueryLogs'
    | extend Context = parse_json(RequestContext)
    | extend Workspace_CF = tostring(Context['workspaces'][0])
    | project-away RequestContext, Context
    

    Modyfikacja wprowadza następujące zmiany:

    • Wiersze związane z wykonywaniem zapytań względem samej tabeli zostały porzucone w LAQueryLogs celu zaoszczędzenia miejsca, ponieważ te wpisy dziennika nie są przydatne.
    • Dodano kolumnę dla nazwy obszaru roboczego, do którego przeprowadzono zapytanie.
    • Dane z kolumny zostały usunięte w RequestContext celu zaoszczędzenia miejsca.

    Uwaga

    W witrynie Azure Portal dane wyjściowe przekształcenia zainicjują zmiany w schemacie tabeli, jeśli jest to wymagane. Kolumny zostaną dodane w celu dopasowania danych wyjściowych przekształcenia, jeśli jeszcze nie istnieją. Upewnij się, że dane wyjściowe nie zawierają żadnych kolumn, których nie chcesz dodawać do tabeli. Jeśli dane wyjściowe nie zawierają kolumn, które znajdują się już w tabeli, te kolumny nie zostaną usunięte, ale dane nie zostaną dodane.

    Wszystkie kolumny niestandardowe dodane do wbudowanej tabeli muszą kończyć się ciągiem _CF. Kolumny dodane do tabeli niestandardowej nie muszą mieć tego sufiksu. Tabela niestandardowa ma nazwę, która kończy się na ._CL

  6. Skopiuj zapytanie do edytora przekształceń i wybierz pozycję Uruchom , aby wyświetlić wyniki z przykładowych danych. Możesz sprawdzić, czy nowa Workspace_CF kolumna znajduje się w zapytaniu.

    Zrzut ekranu przedstawiający edytor przekształceń.

  7. Wybierz pozycję Zastosuj , aby zapisać przekształcenie, a następnie wybierz przycisk Dalej , aby przejrzeć konfigurację. Wybierz pozycję Utwórz , aby zaktualizować kontroler domeny przy użyciu nowej transformacji.

    Zrzut ekranu przedstawiający zapisywanie przekształcenia.

Testowanie przekształcenia

Poczekaj około 30 minut na zastosowanie przekształcenia, a następnie przetestuj je, uruchamiając zapytanie względem tabeli. Dotyczy to tylko danych wysyłanych do tabeli po zastosowaniu przekształcenia.

Na potrzeby tego samouczka uruchom kilka przykładowych zapytań, aby wysłać dane do LAQueryLogs tabeli. Uwzględnij niektóre zapytania, LAQueryLogs aby sprawdzić, czy przekształcenia filtruje te rekordy. Teraz dane wyjściowe zawierają nową Workspace_CF kolumnę i nie ma żadnych rekordów dla elementu LAQueryLogs.

Rozwiązywanie problemów

W tej sekcji opisano różne warunki błędu, które mogą zostać odebrane i jak je poprawić.

Funkcja IntelliSense w usłudze Log Analytics nie rozpoznaje nowych kolumn w tabeli

Aktualizacja pamięci podręcznej obsługującej funkcję IntelliSense może potrwać do 24 godzin.

Przekształcanie w kolumnie dynamicznej nie działa

Znany problem dotyczy obecnie kolumn dynamicznych. Tymczasowe obejście polega na jawnym analizowaniu danych kolumn dynamicznych przy użyciu parse_json() polecenia przed wykonaniem jakichkolwiek operacji na nich.

Następne kroki