Sdílet prostřednictvím


Protokolování dotazů

Důležitý

Azure HDInsight v AKS byl vyřazen 31. ledna 2025. Zjistěte více z tohoto oznámení .

Abyste se vyhnuli náhlému ukončení úloh, musíte migrovat úlohy do Microsoft Fabric nebo ekvivalentního produktu Azure.

Důležitý

Tato funkce je aktuálně ve verzi Preview. Doplňkové podmínky použití pro verze Preview Microsoft Azure obsahují další právní podmínky, které se vztahují na funkce Azure v beta, v náhledu nebo které ještě nejsou uvolněny pro obecnou dostupnost. Informace o této konkrétní verzi Preview najdete v tématu Azure HDInsight ve službě AKS ve verzi Preview. Pokud máte dotazy nebo návrhy funkcí, odešlete prosím žádost na AskHDInsight s podrobnostmi a sledujte nás pro další aktualizace v komunitě Azure HDInsight .

Trino podporuje vlastní naslouchací prvky pro události, které lze použít k naslouchání událostem životního cyklu dotazů. Můžete vytvořit vlastní naslouchací procesy událostí nebo použít integrovaný modul plug-in poskytovaný službou HDInsight v AKS, který protokoluje události do služby Azure Blob Storage.

Integrované protokolování dotazů můžete povolit dvěma způsoby:

  • Integrované protokolování dotazů můžete povolit při vytváření clusteru Trino povolením katalogu Hive.

  • Integrované protokolování dotazů v clusteru můžete povolit pomocí šablony ARM.

Tento článek popisuje přidání protokolování dotazů do clusteru pomocí šablony ARM.

Požadavky

Povolení protokolování dotazů

Pokud chcete povolit integrovaný modul plug-in pro protokolování dotazů v clusteru Trino, přidejte nebo aktualizujte clusterProfile.trinoProfile.userTelemetrySpec oddíl s následujícími vlastnostmi v šabloně ARM clusteru.

Vlastnost Popis
path Plně kvalifikovaná cesta k adresáři používanému jako kořen pro zachycení různých protokolů dotazů.
hivecatalogName Tento katalog slouží k připojení externích tabulek k souborům zapsaných v účtu úložiště. Tento katalog musí být přidán do clusteru, Přidat katalog Hive.
hivecatalogSchema Modul plugin pro protokolování dotazů využívá toto schéma k připojení externí tabulky pro protokoly a vytvoří toto schéma, pokud ještě neexistuje. Výchozí hodnota – trinologs
partitionRetentionInDays Modul plug-in protokolování dotazů vyřešuje oddíly v tabulkách protokolů, které jsou starší než zadaná konfigurace. Výchozí hodnota – 365

Následující příklad ukazuje, jak je protokolování dotazu povolené v clusteru Trino. Přidejte tento ukázkový kód JSON do [*].properties.clusterProfile v šabloně ARM.

       "trinoProfile": { 
          "userTelemetrySpec": { 
          "storage": { 
              "path": "https://querylogstorageaccount.blob.core.windows.net/logs/trinoquerylogs", 
              "hivecatalogName": "hive", 
              "hivecatalogSchema": "trinologs", 
              "partitionRetentionInDays": 365 
          } 
          }
      }   

Nasaďte aktualizovanou šablonu ARM tak, aby odrážela změny v clusteru. Naučte se, jak nasadit šablonu ARM .

Poznámka

  • Plugin používá spravovanou identitu přiřazenou uživatelem (MSI) svázanou s clusterem k ověření v úložišti. Přidejte Contributor a Storage Blob Data Owner přístup k MSI, aby plugin mohl zapisovat logy do účtu úložiště.
    Název MSI přiřazený uživatelem je uvedený ve vlastnosti msiResourceId ve formátu JSON prostředku clusteru. Zjistěte, jak přiřadit roli.

  • PartitionRetentionInDays odebere pouze oddíl metadat z připojené tabulky, ale neodstraní data. Pokud už data nepotřebujete, vyčistíte je podle svých požadavků.

Správa metadat

Pokud uživatel zadá název katalogu ve vlastnosti hiveCatalogName, plug-in připojí soubory protokolů napsané v účtu úložiště jako externí tabulky a zobrazení, které je možné dotazovat prostřednictvím Trino.

Modul plug-in vytvoří tři tabulky a tři zobrazení, která lze použít k dotazování událostí životního cyklu (QueryCompletedEvent, QueryCreatedEventa SplitCompletedEVent). Tyto zobrazení & tabulek jsou vytvořeny v katalogu a schématu poskytnutém jako uživatelský vstup.

Název tabulek:

  • querycompleted: Obsahuje události QueryCompleted spuštěné nástrojem Trino.
  • querycreated: Obsahuje QueryCreatedEvents, které spustil Trino.
  • splitcompleted: Obsahuje SplitCompletedEvents, který spustil Trino.

Název zobrazení:

  • vquerycompleted
  • vquerycreated
  • vsplitcompleted

Poznámka

Uživatelům se doporučuje používat zobrazení, protože jsou imunní vůči změnám v základním schématu a umožňují práci s popsanou tabulkou.

Archivace tabulek

Plug-in podporuje archivaci (N-1). tabulky ve scénáři, kdy se uživatel rozhodne změnit path nebo externí umístění logů. V takovém případě modul plug-in přejmenuje tabulku odkazující na starou cestu jako <table_name>_archived, vytvořené zobrazení sjednocuje výsledek aktuálních a archivovaných tabulek v tomto scénáři.

Vytvořte vlastní plugin

Můžete také vytvořit vlastní modul plug-in naslouchacího procesu událostí, postupujte podle pokynů v dokumentaci , nasaďte vlastní moduly plug-in pomocí postupu nasazení modulu plug-in .