Monitorování dat ve službě Azure Cosmos DB s využitím nastavení diagnostiky v Azure

PLATÍ PRO: NoSQL MongoDB Cassandra Gremlin Tabulka

Nastavení diagnostiky v Azure slouží ke shromažďování protokolů prostředků. Prostředky generují protokoly prostředků Azure a poskytují bohaté a časté údaje o provozu tohoto prostředku. Tyto protokoly se zaznamenávají na požadavek a označují se také jako "protokoly roviny dat". Mezi příklady operací roviny dat patří odstranění, vložení a čteníFeed. Obsah těchto protokolů se liší podle typu prostředku.

Metriky platformy a protokoly aktivit se shromažďují automaticky, zatímco musíte vytvořit nastavení diagnostiky pro shromažďování protokolů prostředků nebo jejich předávání mimo Azure Monitor. Můžete zapnout nastavení diagnostiky pro účty služby Azure Cosmos DB a odesílat protokoly prostředků do následujících zdrojů:

  • Pracovní prostory Služby Log Analytics
    • Data odesílaná do Log Analytics je možné zapsat do tabulek Azure Diagnostics (starší verze) nebo tabulek specifických pro prostředky (Preview).
  • Centrum událostí
  • Účet úložiště

Poznámka:

Doporučujeme vytvořit nastavení diagnostiky v režimu specifickém pro prostředky (pro všechna rozhraní API s výjimkou rozhraní API pro tabulku) podle našich pokynů pro vytvoření nastavení diagnostiky prostřednictvím rozhraní REST API. Tato možnost poskytuje další optimalizace nákladů s vylepšeným zobrazením pro zpracování dat.

Požadavky

Vytvoření nastavení diagnostiky

Tady si projdeme proces vytváření nastavení diagnostiky pro váš účet.

  1. Přihlaste se k portálu Azure.

  2. Přejděte ke svému účtu služby Azure Cosmos DB. Otevřete podokno Nastavení diagnostiky v části Monitorování a vyberte možnost Přidat nastavení diagnostiky.

    Sreenshot of the diagnostics selection page.

    Důležité

    Může se zobrazit výzva k povolení fulltextového dotazu [...] pro podrobnější protokolování, pokud není ve vašem účtu povolená funkce fulltextového dotazu . Toto upozornění můžete bezpečně ignorovat, pokud nechcete tuto funkci povolit. Další informace najdete v tématu povolení fulltextového dotazu.

  3. V podokně Nastavení diagnostiky vyplňte formulář upřednostňovanými kategoriemi. Tady je seznam kategorií protokolů.

    Kategorie API Definice Hlavní vlastnosti
    DataPlaneRequests Doporučeno pro rozhraní API for NoSQL Protokoluje požadavky back-endu jako operace roviny dat, což jsou požadavky spouštěné za účelem vytvoření, aktualizace, odstranění nebo načtení dat v rámci účtu. Requestcharge, statusCode, clientIPaddress, , partitionIDresourceTokenPermissionIdresourceTokenPermissionMode
    MongoRequests Rozhraní API pro MongoDB Protokoluje požadavky iniciované uživatelem z front-endu a obsluhuje požadavky do služby Azure Cosmos DB pro MongoDB. Pokud tuto kategorii povolíte, nezapomeňte zakázat dataPlaneRequests. Requestcharge, opCode, , retryCountpiiCommandText
    CassandraRequests Rozhraní API pro Apache Cassandra Protokoluje požadavky iniciované uživatelem z front-endu a obsluhuje požadavky do služby Azure Cosmos DB for Cassandra. operationName, , requestChargepiiCommandText
    GremlinRequests Rozhraní API pro Apache Gremlin Protokoluje požadavky iniciované uživatelem z front-endu a obsluhuje požadavky do služby Azure Cosmos DB pro Gremlin. operationName, requestCharge, , piiCommandTextretriedDueToRateLimiting
    QueryRuntimeStatistics Rozhraní API pro NoSQL Tato tabulka podrobně popisuje operace dotazu prováděné na účtu ROZHRANÍ API pro NoSQL. Ve výchozím nastavení je text dotazu a jeho parametry obfuskované, aby se zabránilo protokolování dat persona l s protokolováním fulltextových dotazů, které jsou dostupné podle požadavku. databasename, , partitionkeyrangeidquerytext
    PartitionKeyStatistics Všechna rozhraní API Zaznamená statistiku logických klíčů oddílů tak, že představuje odhadovanou velikost úložiště (kB) klíčů oddílů. Tato tabulka je užitečná při řešení potíží se nerovnoměrnou distribucemi úložiště. Tento protokol PartitionKeyStatistics se vygeneruje pouze v případě, že platí následující podmínky: 1. Nejméně 1 % dokumentů ve fyzickém oddílu má stejný logický klíč oddílu. 2. Ze všech klíčů ve fyzickém oddílu zachytí protokol PartitionKeyStatistics první tři klíče s největší velikostí úložiště. Pokud předchozí podmínky nejsou splněné, data statistiky klíče oddílu nejsou k dispozici. Je v pořádku, pokud výše uvedené podmínky nejsou splněny pro váš účet, což obvykle znamená, že nemáte žádné nerovnoměrné rozdělení úložiště logických oddílů. Poznámka: Odhadovaná velikost klíčů oddílů se počítá pomocí metody vzorkování, která předpokládá, že dokumenty ve fyzickém oddílu mají přibližně stejnou velikost. Pokud velikost dokumentu není jednotná ve fyzickém oddílu, nemusí být odhadovaná velikost klíče oddílu přesná. subscriptionId, regionName, , partitionKeysizeKB
    PartitionKeyRUConsumption Rozhraní API pro NoSQL nebo rozhraní API pro Apache Gremlin Zaznamená agregovanou spotřebu ru/s za sekundu klíčů oddílů. Tato tabulka je užitečná pro řešení potíží s horkými oddíly. Azure Cosmos DB v současné době hlásí klíče oddílů pro účty API pro NoSQL a pouze pro operace čtení a zápisu bodů, dotazů a uložených procedur. subscriptionId, regionName, partitionKey, , requestChargepartitionKeyRangeId
    ControlPlaneRequests Všechna rozhraní API Zaznamenává podrobnosti o operacích řídicí roviny, mezi které patří vytvoření účtu, přidání nebo odebrání oblasti, aktualizace nastavení replikace účtu atd. operationName, httpstatusCode, , httpMethodregion
    Požadavky TableApiRequests Rozhraní API pro tabulku Protokoluje požadavky iniciované uživatelem z front-endu, aby sloužily žádostem do služby Azure Cosmos DB for Table. operationName, , requestChargepiiCommandText
  4. Jakmile vyberete podrobnosti o kategoriích, odešlete protokoly do preferovaného cíle. Pokud odesíláte protokoly do pracovního prostoru služby Log Analytics, nezapomeňte jako cílovou tabulku vybrat prostředek specifický .

    Screenshot of the option to enable resource-specific diagnostics.

Povolení fulltextového dotazu pro protokolování textu dotazu

Poznámka:

Povolení této funkce může vést k dalším nákladům na protokolování. Podrobnosti o cenách najdete na stránce s cenami služby Azure Monitor. Po řešení potíží doporučujeme tuto funkci zakázat.

Azure Cosmos DB poskytuje rozšířené protokolování pro podrobné řešení potíží. Povolením fulltextového dotazu můžete zobrazit deobfuscovaný dotaz pro všechny požadavky v rámci účtu služby Azure Cosmos DB. Také udělíte oprávnění ke službě Azure Cosmos DB pro přístup k datům a jejich zpřístupnění v protokolech.

  1. Pokud chcete tuto funkci povolit, přejděte na Features stránku ve svém účtu služby Azure Cosmos DB.

    Screenshot of the navigation process to the Features page.

  2. Vyberte možnost Enable. Toto nastavení se použije během několika minut. Všechny nově přijaté protokoly mají pro každý požadavek celý text nebo text PIICommand.

    Screenshot of the full-text feature being enabled.

Zadávání dotazů na data

Informace o dotazování pomocí těchto nově povolených funkcí najdete tady:

Další kroky