Sdílet prostřednictvím


Protokolování dotazů

Poznámka:

Azure HDInsight vyřadíme ze služby AKS 31. ledna 2025. Před 31. lednem 2025 budete muset migrovat úlohy do Microsoft Fabric nebo ekvivalentního produktu Azure, abyste se vyhnuli náhlému ukončení úloh. Zbývající clustery ve vašem předplatném se zastaví a odeberou z hostitele.

Do data vyřazení bude k dispozici pouze základní podpora.

Důležité

Tato funkce je aktuálně dostupná jako ukázková verze. Doplňkové podmínky použití pro Microsoft Azure Preview obsahují další právní podmínky, které se vztahují na funkce Azure, které jsou v beta verzi, ve verzi Preview nebo ještě nejsou vydány v obecné dostupnosti. Informace o této konkrétní verzi Preview najdete v tématu Azure HDInsight o 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 o dalších aktualizacích v komunitě Azure HDInsight.

Trino podporuje vlastní naslouchací procesy událostí, 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:

  • Předdefinované 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 a přidat katalog Hive.
hivecatalogSchema Modul plug-in protokolování dotazů používá toto schéma k připojení externí tabulky pro protokoly, modul plug-in 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 šablony 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. Zjistěte, jak nasadit šablonu ARM.

Poznámka:

  • Modul plug-in používá spravovanou identitu přiřazenou uživatelem (MSI) svázanou s clusterem k ověření v úložišti, přidejte Contributor do MSI přístup a Storage Blob Data Owner ujistěte se, že modul plug-in může zapisovat protokoly do účtu úložiště.
    Název MSI přiřazený uživatelem msiResourceId je uvedený ve vlastnosti 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 hiveCatalogName vlastnosti, modul 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 (QueryCompletedEventQueryCreatedEventa SplitCompletedEVent). Tyto tabulky a zobrazení se vytvářejí v katalogu a schématu zadaném jako uživatelský vstup.

Název tabulek:

  • querycompleted: Obsahuje QueryCompleted události aktivované trino.
  • querycreated: Obsahuje QueryCreatedEvents vyhozené trino.
  • splitcompleted: Obsahuje SplitCompletedEvents vyhozené 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 základního schématu a účtu pro popsanou tabulku.

Archivace tabulek

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

Vytvoření vlastního modulu plug-in

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í kroků pro nasazení modulu plug-in.