Kurz: Nahrazení vlastních polí v pracovním prostoru služby Log Analytics vlastními sloupci založenými na KQL
Vlastní pole je funkce služby Azure Monitor, která umožňuje extrahovat data samostatných sloupců z jiného textového sloupce stejné tabulky. Vytváření nových vlastních polí bude zakázáno od 31. března 2023. Funkce vlastních polí bude zastaralá a stávající vlastní pole přestanou fungovat 31. března 2026.
Existuje několik výhod použití transformací ingestování dat založených na DCR k dosažení stejného výsledku:
- Úplnou sadu řetězcových funkcí můžete použít k tvarování vlastních sloupců.
- Na stejná data můžete použít více operací. Extrahujte například část hodnoty do samostatného sloupce a odeberte původní sloupec.
- Pomocí transformací doby příjmu dat v šablonách ARM můžete nasadit vlastní sloupce ve velkém měřítku.
Se zavedením pravidel shromažďování dat (DCR) jsou transformace založené na jazyce KQL standardní metodou přizpůsobení tabulky a nahrazením starších vlastních polí.
V tomto kurzu se naučíte:
- Vyhledání vlastních polí vyžadujících nahrazení
- Vysvětlení obsahu vlastních polí
- Nastavení transformace doby příjmu dat pro nahrazení vlastních polí v tabulce
Požadavky
- Pracovní prostor služby Log Analytics s tabulkou obsahující vlastní pole
- Dostatečná oprávnění účtu k vytvoření a úpravě pravidel shromažďování dat (DCR)
Vyhledání vlastních polí pro nahrazení
Začněte vyhledáním vlastních polí, která chcete nahradit. Pokud už znáte vlastní pole, která chcete nahradit, přejděte k dalšímu kroku.
Přejděte do pracovního prostoru služby Log Analytics, kde se nachází tabulka s vlastními poli.
V boční nabídce vyberte Tabulky. V místní nabídce tabulky vyberte Spravovat tabulku .
Všimněte si, jestli jsou k dané tabulce přidružená nějaká pravidla shromažďování dat (DCR).
- Pokud jsou v příslušné části k dispozici nějaké žádosti DCR, znamená to, že všechna existující vlastní pole už byla v rámci těchto řadičů domény implementována nebo při vytváření řadiče domény zrušena. V dalším kroku tohoto kurzu prozkoumáte obsah vlastních polí a určíte, jestli jsou potřeba další aktualizace řadičů domény.
- Pokud nejsou k tabulce přidružená žádná pravidla shromažďování dat, budou všechny sloupce v dané tabulce s názvy končícími na "_CF" vlastními poli, která budou nahrazena.
Zavřete dialogové okno vlastností tabulky a v místní nabídce tabulky vyberte Upravit schéma . Posuňte se na konec stránky, kde jsou uvedeny vlastní sloupce. Tyto sloupce končí _CF.
Všimněte si názvů těchto sloupců, protože jejich obsah určíte v dalším kroku.
Principy vlastního obsahu polí
Vzhledem k tomu, že neexistuje žádný způsob, jak přímo prozkoumat definici vlastního pole, je nutné zadat dotaz na tabulku, abyste určili vzorec vlastního pole.
V boční nabídce vyberte Protokoly a spuštěním dotazu získejte ukázku dat z tabulky.
Vyhledejte sloupce, které jste si poznamenali v předchozím kroku, a prozkoumejte jejich obsah.
- Pokud sloupec není prázdný a tabulka obsahuje přidružené řadiče domény, logika vlastního pole už byla implementována s transformací. Nevyžaduje se žádná akce.
- Pokud je sloupec prázdný (nebo není k dispozici ve výsledcích dotazu) a k tabulce jsou přidružené řadiče domény, logika vlastního pole se neimplementovala s řadičem domény. Přidejte do toku dat v existujícím dcR transformaci.
- Pokud sloupec není prázdný a k tabulce nejsou přidružené žádné řadiče domény, musí se logika vlastního pole implementovat jako transformace v řadiči domény pracovního prostoru.
Prozkoumejte obsah vlastního pole a určete logiku, jak se počítá. Vlastní pole obvykle počítají podřetěžce jiných sloupců ve stejné tabulce. Určete, ze kterého sloupce data pocházejí, a část řetězce, ze kterého se extrahuje.
Vytvoření transformace
Teď jste připraveni vytvořit požadovaný fragment kódu KQL a přidat ho do dcR. Tato logika se použije u každého záznamu, který se ingestuje do pracovního prostoru.
Upravte dotaz pro tabulku pomocí KQL a replikujte logiku vlastního pole. Pokud máte k nahrazení více vlastních polí, můžete jejich logiku výpočtu zkombinovat do jednoho příkazu.
- Operátor parse slouží k hledání podřetězce v řetězci na základě vzoru.
- Pro hledání podřetětěc založený na regulárním výrazu použijte funkci extract().
- Řetězcové funkce jako split(), substring() a mnoho dalších může být také užitečné.
Určete, kam je potřeba umístit novou definici jazyka KQL vlastního sloupce.
- V případě protokolů shromážděných pomocí agenta Služby Azure Monitor (AMA) upravte data shromažďování dat pro tabulku přidáním transformace. Příklad najdete v tématu Osvědčené postupy a ukázky pro transformace ve službě Azure Monitor. Transformační dotaz je definován v elementu
transformKql
. - U protokolů prostředků shromážděných s nastavením diagnostiky přidejte transformaci do výchozího řadiče domény pracovního prostoru. Tabulka musí podporovat transformace.
- V případě protokolů shromážděných pomocí agenta Služby Azure Monitor (AMA) upravte data shromažďování dat pro tabulku přidáním transformace. Příklad najdete v tématu Osvědčené postupy a ukázky pro transformace ve službě Azure Monitor. Transformační dotaz je definován v elementu
Nejčastější dotazy
Návody migrovat vlastní pole pro textový protokol shromážděný pomocí starší verze agenta Log Analytics (MMA)?
Zvažte migraci na agenta služby Azure Monitor (AMA). Agent Log Analytics se blíží konci podpory a měli byste migrovat na agenta služby Azure Monitor (AMA). Textové protokoly shromážděné pomocí AMA používají logiku analýzy protokolů definovanou ve formě transformací KQL od začátku. Vlastní pole nejsou povinná a nepodporují se v textových protokolech shromážděných agentem Služby Azure Monitor.
Je migrace vlastních polí na KQL povinná?
Ne, vlastní pole musíte migrovat jenom v případě, že chcete, aby se vlastní sloupce naplnily. Pokud vlastní pole nemigrujete, po ukončení podpory vlastních polí se odpovídající sloupce přestanou vyplňovat. Data, která už byla zpracována a uložená v tabulce, nebudou ovlivněna a zůstanou použitelná.
Ztratím stávající data v odpovídajících sloupcích, pokud migruji vlastní pole včas?
Ne, vlastní pole se počítají v době příjmu dat. Odstranění definice pole nebo jejich migrace v čase neovlivní žádná data, která jste dříve ingestovali.