Monitorování služby Azure Key Vault

Pokud máte důležité aplikace a obchodní procesy, které se spoléhají na prostředky Azure, měli byste monitorovat dostupnost, výkon a provoz těchto prostředků. V případě služby Azure Key Vault je důležité při zahájení škálování monitorovat vaši službu, protože se zvýší počet požadavků odeslaných do trezoru klíčů. To může zvýšit latenci vašich požadavků a v extrémních případech způsobit omezování požadavků, což bude mít vliv na výkon vaší služby.

Tento článek popisuje data monitorování generovaná službou Key Vault. Key Vault používá Azure Monitor. Pokud neznáte funkce služby Azure Monitor společné pro všechny služby Azure, které ji používají, přečtěte si o monitorování prostředků Azure pomocí služby Azure Monitor.

Stránka Přehled monitorování na webu Azure Portal

Stránka Přehled na webu Azure Portal pro každý trezor klíčů obsahuje následující metriky na kartě Monitorování:

  • Celkový počet požadavků
  • Průměrná latence
  • Poměr úspěšnosti

Pokud chcete zobrazit tyto metriky, můžete vybrat další metriky (nebo kartu Metriky na levém bočním panelu pod položkou Monitorování):

  • Celková latence rozhraní API služby
  • Celková dostupnost trezoru
  • Celková sytost trezoru
  • Celkový počet přístupů k rozhraní API služby
  • Celkový počet výsledků rozhraní API služby

Přehledy služby Key Vault

Některé služby v Azure mají speciální předem připravený řídicí panel monitorování na webu Azure Portal, který poskytuje výchozí bod pro monitorování vaší služby. Tyto speciální řídicí panely se nazývají "přehledy".

Přehledy služby Key Vault poskytují komplexní monitorování trezorů klíčů tím, že poskytují jednotný přehled požadavků služby Key Vault, výkonu, selhání a latence. Úplné podrobnosti najdete v tématu Monitorování služby trezoru klíčů pomocí přehledů služby Key Vault.

Data monitorování

Key Vault shromažďuje stejné druhy dat monitorování jako jiné prostředky Azure, které jsou popsané v monitorování dat z prostředků Azure.

Podrobné informace o metrikách a protokolech vytvořených službou Key Vault najdete v referenčních informacích k datům služby Key Vault.

Shromažďování a směrování

Metriky a protokol aktivit dané platformy se shromažďují a ukládají automaticky, ale pomocí nastavení diagnostiky je možné je směrovat do jiných umístění.

Protokoly prostředků se neshromažďují a neukládají, dokud nevytvoříte nastavení diagnostiky a nenasměrujete je do jednoho nebo více umístění.

Podrobný postup vytvoření nastavení diagnostiky pomocí webu Azure Portal, rozhraní příkazového řádku nebo PowerShellu najdete v tématu Vytvoření nastavení diagnostiky pro shromažďování protokolů a metrik v Azure. Při vytváření nastavení diagnostiky určíte, které kategorie protokolů se mají shromažďovat. Kategorie služby Key Vault jsou uvedené v referenčních informacích o monitorování služby Key Vault.

Pokud chcete vytvořit nastavení diagnostiky pro trezor klíčů, přečtěte si téma Povolení protokolování služby Key Vault. Metriky a protokoly, které můžete shromažďovat, jsou popsány v následujících částech.

Analýza metrik

Metriky služby Key Vault můžete analyzovat pomocí metrik z jiných služeb Azure pomocí Průzkumníka metrik tak, že otevřete metriky z nabídky Azure Monitor . Podrobnosti o použití tohoto nástroje najdete v tématu Analýza metrik pomocí Průzkumníka metrik služby Azure Monitor.

Seznam metrik platformy shromážděných pro službu Key Vault najdete v tématu Monitorování referenčních metrik dat služby Key Vault.

Analýza protokolů

Data v protokolech služby Azure Monitor jsou uložená v tabulkách, kde každá tabulka má vlastní sadu jedinečných vlastností.

Všechny protokoly prostředků ve službě Azure Monitor mají stejná pole, za kterými následují pole specifická pro službu. Běžné schéma je uvedené ve schématu protokolu prostředků služby Azure Monitor.

Protokol aktivit je typ protokolu platformy v Azure, který poskytuje přehled o událostech na úrovni předplatného. Můžete ho zobrazit nezávisle nebo směrovat do protokolů služby Azure Monitor, kde můžete provádět mnohem složitější dotazy s využitím Log Analytics.

Seznam typů protokolů prostředků shromážděných pro službu Key Vault najdete v tématu Referenční informace o monitorování dat služby Key Vault.

Seznam tabulek používaných protokoly služby Azure Monitor a dotazovatelný službou Log Analytics najdete v tématu Monitorování referenčních informací k datům služby Key Vault.

Ukázkové dotazy Kusto

Důležité

Když vyberete protokoly z nabídky Key Vault, otevře se Log Analytics s oborem dotazu nastaveným na aktuální trezor klíčů. To znamená, že dotazy protokolu budou obsahovat pouze data z tohoto prostředku. Pokud chcete spustit dotaz, který obsahuje data z jiných trezorů klíčů nebo data z jiných služeb Azure, vyberte protokoly z nabídky Azure Monitoru . Podrobnosti najdete v tématu Rozsah dotazů protokolu a časový rozsah ve službě Azure Monitor Log Analytics .

Tady jsou některé dotazy, které můžete zadat do panelu prohledávání protokolů, abyste mohli monitorovat prostředky služby Key Vault. Tyto dotazy pracují s novým jazykem.

  • Používají starší verzi PROTOKOLU TLS (<1.2)?

    AzureDiagnostics
    | where TimeGenerated > ago(90d) 
    | where ResourceProvider =="MICROSOFT.KEYVAULT" 
    | where isnotempty(tlsVersion_s) and strcmp(tlsVersion_s,"TLS1_2") <0
    | project TimeGenerated,Resource, OperationName, requestUri_s, CallerIPAddress, OperationVersion,clientInfo_s,tlsVersion_s,todouble(tlsVersion_s)
    | sort by TimeGenerated desc
    
  • Existují nějaké pomalé požadavky?

    // List of KeyVault requests that took longer than 1sec. 
    // To create an alert for this query, click '+ New alert rule'
    let threshold=1000; // let operator defines a constant that can be further used in the query
    
    AzureDiagnostics
    | where ResourceProvider =="MICROSOFT.KEYVAULT" 
    | where DurationMs > threshold
    | summarize count() by OperationName, _ResourceId
    
  • Došlo k nějakým selháním?

    // Count of failed KeyVault requests by status code. 
    // To create an alert for this query, click '+ New alert rule'
    
    AzureDiagnostics
    | where ResourceProvider =="MICROSOFT.KEYVAULT" 
    | where httpStatusCode_d >= 300 and not(OperationName == "Authentication" and httpStatusCode_d == 401)
    | summarize count() by requestUri_s, ResultSignature, _ResourceId
    // ResultSignature contains HTTP status, e.g. "OK" or "Forbidden"
    // httpStatusCode_d contains HTTP status code returned
    
  • Chyby deserializace vstupu

    // Shows errors caused due to malformed events that could not be deserialized by the job. 
    // To create an alert for this query, click '+ New alert rule'
    
    AzureDiagnostics
    | where ResourceProvider == "MICROSOFT.KEYVAULT" and parse_json(properties_s).DataErrorType in ("InputDeserializerError.InvalidData", "InputDeserializerError.TypeConversionError", "InputDeserializerError.MissingColumns", "InputDeserializerError.InvalidHeader", "InputDeserializerError.InvalidCompressionType")
    | project TimeGenerated, Resource, Region_s, OperationName, properties_s, Level, _ResourceId
    
  • Jak aktivní byla tato služba KeyVault?

    // Line chart showing trend of KeyVault requests volume, per operation over time. 
    // KeyVault diagnostic currently stores logs in AzureDiagnostics table which stores logs for multiple services. 
    // Filter on ResourceProvider for logs specific to a service.
    
    AzureDiagnostics
    | where ResourceProvider =="MICROSOFT.KEYVAULT" 
    | summarize count() by bin(TimeGenerated, 1h), OperationName // Aggregate by hour
    | render timechart
    
    
  • Kdo volá tuto službu KeyVault?

    // List of callers identified by their IP address with their request count.  
    // KeyVault diagnostic currently stores logs in AzureDiagnostics table which stores logs for multiple services. 
    // Filter on ResourceProvider for logs specific to a service.
    
    AzureDiagnostics
    | where ResourceProvider =="MICROSOFT.KEYVAULT"
    | summarize count() by CallerIPAddress
    
  • Jak rychle tato služba KeyVault obsluhuje požadavky?

    // Line chart showing trend of request duration over time using different aggregations. 
    
    AzureDiagnostics
    | where ResourceProvider =="MICROSOFT.KEYVAULT" 
    | summarize avg(DurationMs) by requestUri_s, bin(TimeGenerated, 1h) // requestUri_s contains the URI of the request
    | render timechart
    
  • K jakým změnám došlo minulý měsíc?

    // Lists all update and patch requests from the last 30 days. 
    // KeyVault diagnostic currently stores logs in AzureDiagnostics table which stores logs for multiple services. 
    // Filter on ResourceProvider for logs specific to a service.
    
    AzureDiagnostics
    | where TimeGenerated > ago(30d) // Time range specified in the query. Overrides time picker in portal.
    | where ResourceProvider =="MICROSOFT.KEYVAULT" 
    | where OperationName == "VaultPut" or OperationName == "VaultPatch"
    | sort by TimeGenerated desc
    

Výstrahy

Výstrahy služby Azure Monitor proaktivně upozorňují na výskyt důležitých podmínek v monitorovaných datech. Umožňují vám identifikovat a řešit problémy v systému předem. Můžete nastavit upozornění na metriky, protokoly a protokol aktivit.

Pokud vytváříte nebo spouštíte aplikaci, která běží ve službě Azure Key Vault, můžou aplikace služby Azure Monitor Přehledy nabízet další typy upozornění.

Tady jsou některá běžná a doporučená pravidla upozornění pro Azure Key Vault –

  • Dostupnost služby Key Vault klesne pod 100 % (statická prahová hodnota)
  • Latence služby Key Vault je větší než 1 000 ms (statická prahová hodnota)
  • Celková sytost trezoru je větší než 75 % (statická prahová hodnota)
  • Celková sytost trezoru překračuje průměr (dynamická prahová hodnota)
  • Celkový počet chybových kódů vyšší než průměr (dynamická prahová hodnota)

Další podrobnosti najdete v tématu Upozorňování pro Azure Key Vault .

Další kroky