Share via


Monitoraggio di Azure Key Vault

Quando si usano applicazioni e processi aziendali critici basati sulle risorse di Azure, è consigliabile monitorare tali risorse per verificarne disponibilità, prestazioni e funzionamento. Per Azure Key Vault, è importante monitorare il servizio quando le dimensioni iniziano ad aumentare, perché il numero di richieste inviate all'insieme di credenziali delle chiavi aumenterà. Di conseguenza, può aumentare anche la latenza delle richieste e, in casi estremi, le richieste possono venire limitate, con un impatto sulle prestazioni del servizio.

Questo articolo descrive i dati di monitoraggio generati da Key Vault. Key Vault usa Monitoraggio di Azure. Se non si ha familiarità con le funzionalità di Monitoraggio di Azure comuni a tutti i servizi di Azure che le usano, vedere Monitoraggio delle risorse di Azure con Monitoraggio di Azure.

Pagina di panoramica del monitoraggio nel portale di Azure

La pagina Panoramica nel portale di Azure per ogni insieme di credenziali delle chiavi include le metriche seguenti nella scheda "Monitoraggio":

  • Totale richieste
  • Latenza media
  • Percentuale di operazioni riuscite

È anche possibile selezionare "metriche aggiuntive" (o la scheda "Metriche" sulla barra laterale sinistra, in "Monitoraggio") per visualizzare queste metriche:

  • Latenza complessiva dell'API del servizio
  • Disponibilità complessiva dell'insieme di credenziali
  • Saturazione complessiva dell'insieme di credenziali
  • Totale di accessi all'API del servizio
  • Totale dei risultati dell'API del servizio

Informazioni dettagliate di Key Vault

Per alcuni servizi di Azure, nel portale di Azure è disponibile uno speciale dashboard di monitoraggio predefinito che fornisce un punto di partenza per il monitoraggio del servizio. Questi dashboard speciali forniscono informazioni dettagliate.

Le informazioni dettagliate di Key Vault offrono il monitoraggio completo degli insiemi di credenziali delle chiavi tramite una vista unificata di richieste, prestazioni, errori e latenza di Key Vault. Per informazioni dettagliate, vedere Monitoraggio del servizio dell'insieme di credenziali delle chiavi con le informazioni dettagliate di Key Vault.

Dati di monitoraggio

Key Vault raccoglie gli stessi tipi di dati di monitoraggio di altre risorse di Azure, descritti in Dati di monitoraggio delle risorse di Azure.

Per informazioni dettagliate sulle metriche e i log creati da Key Vault, vedere Informazioni di riferimento sui dati di monitoraggio di Key Vault.

Raccolta e routing

Le metriche della piattaforma e il log attività vengono raccolti e archiviati automaticamente, ma possono essere instradati ad altre posizioni usando un'impostazione di diagnostica.

I log delle risorse non vengono raccolti e archiviati fino a quando non si crea un'impostazione di diagnostica e vengono instradati a una o più posizioni.

Per consentire al processo di creare un'impostazione di diagnostica usando il portale di Azure, l'interfaccia della riga di comando di Azure o PowerShell, vedere Creare un'impostazione di diagnostica per raccogliere i log e le metriche della piattaforma in Azure. Quando si crea un'impostazione di diagnostica, si specificano quali categorie di log raccogliere. Le categorie per Key Vault sono elencate in Informazioni di riferimento sui dati di monitoraggio di Key Vault.

Per creare un'impostazione di diagnostica per l'insieme di credenziali delle chiavi, vedere Abilitare la registrazione di Key Vault. Le metriche e i log che è possibile raccogliere sono descritti nelle sezioni seguenti.

Analisi delle metriche

È possibile analizzare le metriche per Key Vault con le metriche di altri servizi di Azure usando Esplora metriche: aprire Metriche nel menu Monitoraggio di Azure. Per informazioni dettagliate sull'uso di questo strumento, vedere Analizzare le metriche con Esplora metriche di Monitoraggio di Azure.

Per un elenco delle metriche della piattaforma raccolte per Key Vault, vedere Metriche nelle informazioni di riferimento sui dati di monitoraggio di Key Vault

Analisi dei log

I dati nei log di Monitoraggio di Azure vengono archiviati in tabelle, ognuna delle quali ha un proprio set di proprietà univoche.

Tutti i log delle risorse in Monitoraggio di Azure hanno gli stessi campi seguiti da campi specifici del servizio. Lo schema comune è descritto in Schema dei log delle risorse di Monitoraggio di Azure

Il log attività è un tipo di log della piattaforma presente in Azure che contiene informazioni sugli eventi a livello di sottoscrizione. È possibile visualizzarlo in modo indipendente o instradarlo ai log di Monitoraggio di Azure, in cui è possibile eseguire query molto più complesse usando Log Analytics.

Per un elenco dei log delle risorse raccolte per Key Vault, vedere Informazioni di riferimento sui dati di monitoraggio di Key Vault

Per un elenco delle tabelle usate dai log di Monitoraggio di Azure e su cui è possibile eseguire query con Log Analytics, vedere Informazioni di riferimento sui dati di monitoraggio di Key Vault

Query Kusto di esempio

Importante

Quando si seleziona Log nel menu per Key Vault, Log Analytics viene aperto con l'ambito di query impostato sull'insieme di credenziali delle chiavi corrente. Ciò significa che le query di log includeranno solo i dati di tale risorsa. Se si vuole eseguire una query che includa dati di altri insiemi di credenziali delle chiavi di altri servizi di Azure, selezionare Log nel menu Monitoraggio di Azure. Per i dettagli, vedere Ambito e intervallo di tempo delle query su log in Log Analytics di Monitoraggio di Azure.

Ecco alcune query che è possibile immettere nella barra Ricerca log per monitorare le risorse di Key Vault. Queste query usano il nuovo linguaggio.

  • Esistono client che usano la versione precedente di 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
    
  • Sono presenti richieste lente?

    // 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
    
  • Sono presenti errori?

    // 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
    
  • Errori di deserializzazione dell'input

    // 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
    
  • Quanto è stata attiva questa istanza di 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
    
    
  • Chi sta chiamando questa istanza di 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
    
  • Quanto è veloce questa istanza di KeyVault nel gestire le richieste?

    // 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
    
  • Quali modifiche sono state apportate l'ultimo mese?

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

Avvisi

Gli avvisi di Monitoraggio di Azure notificano in modo proattivo quando vengono riscontrate importanti condizioni nei dati di monitoraggio. Consentono di identificare e risolvere i problemi del sistema in modo preventivo. È possibile impostare avvisi su metriche, log e log attività.

Se crea o si esegue un'applicazione in Azure Key Vault, Application Insights di Monitoraggio di Azure può offrire altri tipi di avvisi.

Ecco alcune regole di avviso comuni e consigliate per Azure Key Vault:

  • La disponibilità di Key Vault scende al di sotto del 100% (soglia statica)
  • La latenza di Key Vault è maggiore di 1000 ms (soglia statica)
  • La saturazione complessiva dell'insieme di credenziali è maggiore del 75% (soglia statica)
  • La saturazione complessiva dell'insieme di credenziali supera la media (soglia dinamica)
  • Codici di errore totali superiori alla media (soglia dinamica)

Per altri dettagli, vedere Avvisi per Azure Key Vault.

Passaggi successivi