Övervaka Azure Key Vault

När du har kritiska appar och affärsprocesser som använder Azure-resurser är det bra att övervaka resursernas tillgänglighet, prestanda och drift. För Azure Key Vault är det viktigt att övervaka din tjänst när du börjar skala, eftersom antalet begäranden som skickas till ditt nyckelvalv ökar. Detta kan öka svarstiden för dina begäranden och i extrema fall leda till att dina begäranden begränsas, vilket påverkar tjänstens prestanda.

I den här artikeln beskrivs övervakningsdata som genereras av Key Vault. Key Vault använder Azure Monitor. Om du inte känner till funktionerna i Azure Monitor som är gemensamma för alla Azure-tjänster som använder den läser du Övervaka Azure-resurser med Azure Monitor.

Översiktssida för övervakning i Azure-portalen

Sidan Översikt i Azure-portalen för varje nyckelvalv innehåller följande mått på fliken "Övervakning":

  • Totala begäranden
  • Genomsnittlig svarstid
  • Framgångsförhållande

Du kan välja "ytterligare mått" (eller fliken Mått i sidofältet till vänster under "Övervakning") för att även visa dessa mått:

  • Övergripande svarstid för tjänst-API
  • Övergripande valvtillgänglighet
  • Övergripande valvmättnad
  • Totalt antal service-API:et träffar
  • Totalt antal api-resultat för tjänsten

Key Vault-insikter

Vissa tjänster i Azure har en specialfokuserad fördefinierad övervakningsinstrumentpanel i Azure-portalen som är en startpunkt för övervakning av din tjänst. Dessa särskilda instrumentpaneler kallas "insikter".

Key Vault-insikter ger omfattande övervakning av dina nyckelvalv genom att leverera en enhetlig vy över dina Key Vault-begäranden, prestanda, fel och svarstider. Fullständig information finns i Övervaka din key vault-tjänst med Key Vault-insikter.

Övervaka data

Key Vault samlar in samma typer av övervakningsdata som andra Azure-resurser som beskrivs i Övervaka data från Azure-resurser.

Se Övervaka Key Vault-datareferens för detaljerad information om mått och loggmått som skapats av Key Vault.

Samling och routning

Plattformsmått och aktivitetsloggen samlas in och lagras automatiskt, men kan skickas till andra platser med hjälp av en diagnostikinställning.

Resursloggar samlas inte in och lagras förrän du skapar en diagnostikinställning och skickar dem till en eller flera platser.

Se Skapa diagnostikinställning för att samla in plattformsloggar och mått i Azure för detaljerad information om hur du skapar en diagnostikinställning med hjälp av Azure-portalen, CLI eller PowerShell. När du skapar en diagnostikinställning anger du vilka kategorier av loggar som ska samlas in. Kategorierna för Key Vault visas i referensen för Key Vault-övervakningsdata.

Information om hur du skapar en diagnostikinställning för ditt nyckelvalv finns i Aktivera Key Vault-loggning. De mått och loggar som du kan samla in beskrivs i följande avsnitt.

Analysera mått

Du kan analysera mått för Key Vault med mått från andra Azure-tjänster med hjälp av Metrics Explorer genom att öppna Mått från Azure Monitor-menyn . Mer information om hur du använder det här verktyget finns i Analysera mått med Azure Monitor Metrics Explorer .

En lista över de plattformsmått som samlats in för Key Vault finns i Övervaka referensmått för Key Vault-data

Analysera loggar

Data i Azure Monitor-loggar lagras i tabeller där varje tabell har en egen uppsättning unika egenskaper.

Alla resursloggar i Azure Monitor har samma fält följt av tjänstspecifika fält. Det vanliga schemat beskrivs i Azure Monitor-resursloggschemat

Aktivitetsloggen är en typ av plattformslogg i Azure som ger insikter om händelser på prenumerationsnivå. Du kan visa den separat eller dirigera den till Azure Monitor-loggar, där du kan göra mycket mer komplexa frågor med Log Analytics.

En lista över de typer av resursloggar som samlats in för Key Vault finns i Övervaka Key Vault-datareferens

En lista över de tabeller som används av Azure Monitor-loggar och som kan frågas av Log Analytics finns i Övervaka Key Vault-datareferens

Exempel på Kusto-frågor

Viktigt!

När du väljer Loggar på Key Vault-menyn öppnas Log Analytics med frågeomfånget inställt på det aktuella nyckelvalvet. Det innebär att loggfrågor endast innehåller data från den resursen. Om du vill köra en fråga som innehåller data från andra nyckelvalv eller data från andra Azure-tjänster väljer du LoggarAzure Monitor-menyn . Mer information finns i Log query scope and time range in Azure Monitor Log Analytics (Loggfrågeomfång och tidsintervall i Azure Monitor Log Analytics ).

Här följer några frågor som du kan ange i loggsökningsfältet som hjälper dig att övervaka dina Key Vault-resurser. Dessa frågor fungerar med det nya språket.

  • Finns det några klienter som använder den gamla TLS-versionen (<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
    
  • Finns det några långsamma begäranden?

    // 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
    
  • Finns det några fel?

    // 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
    
  • Indatadeserialiseringsfel

    // 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
    
  • Hur aktiv har keyVault varit?

    // 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
    
    
  • Vem anropar den här 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
    
  • Hur snabbt betjänar den här KeyVault-begäranden?

    // 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
    
  • Vilka ändringar inträffade förra månaden?

    // 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
    

Aviseringar

Med Azure Monitor-aviseringar meddelas du proaktivt när viktiga tillstånd hittas i dina övervakningsdata. De gör att du kan identifiera och åtgärda problem i systemet förebyggande. Du kan ange aviseringar för mått, loggar och aktivitetsloggen.

Om du skapar eller kör ett program som körs i Azure Key Vault kan Azure Monitor Application Insights erbjuda ytterligare typer av aviseringar.

Här följer några vanliga och rekommenderade aviseringsregler för Azure Key Vault –

  • Key Vault-tillgängligheten sjunker under 100 % (statiskt tröskelvärde)
  • Key Vault-svarstiden är större än 1 000 ms (statiskt tröskelvärde)
  • Övergripande valvmättnad är större än 75 % (statiskt tröskelvärde)
  • Total valvmättnad överskrider genomsnittet (dynamiskt tröskelvärde)
  • Totalt antal felkoder som är högre än genomsnittet (dynamiskt tröskelvärde)

Mer information finns i Aviseringar för Azure Key Vault .

Nästa steg