Condividi tramite


Esercitazione: Sostituire campi personalizzati nell'area di lavoro Log Analytics con colonne personalizzate basate su KQL

I campi personalizzati sono una funzionalità di Monitoraggio di Azure che consente di estrarre in una colonna separata dati da una colonna di testo diversa della stessa tabella. La creazione di nuovi campi personalizzati verrà disabilitata a partire dal 31 marzo 2023. Le funzionalità dei campi personalizzati saranno deprecate e i campi personalizzati esistenti smetteranno di funzionare il 31 marzo 2026.

Esistono diversi vantaggi per l'uso delle trasformazioni in fase di inserimento basate su DCR per ottenere lo stesso risultato:

  • È possibile applicare un set completo di funzioni stringa per modellare le colonne personalizzate.
  • È possibile applicare più operazioni agli stessi dati. Ad esempio, estrarre una parte di un valore in una colonna separata e rimuovere la colonna originale.
  • È possibile usare le trasformazioni in fase di inserimento nei modelli ARM per distribuire colonne personalizzate su larga scala.

Con l'introduzione delle regole di raccolta dati (DCR), le trasformazioni basate su KQL sono il metodo standard di personalizzazione della tabella, sostituendo i campi personalizzati legacy.

In questa esercitazione si apprenderà come:

  • Individuare campi personalizzati che richiedono la sostituzione
  • Informazioni sul contenuto dei campi personalizzati
  • Configurare la trasformazione in fase di inserimento per sostituire i campi personalizzati all'interno della tabella

Prerequisiti

  • Area di lavoro Log Analytics con una tabella contenente campi personalizzati
  • Privilegi di account sufficienti per creare e modificare le regole di raccolta dati

Individuare i campi personalizzati per la sostituzione

Iniziare individuando campi personalizzati da sostituire. Se si conoscono già i campi personalizzati da sostituire, procedere con il passaggio successivo.

  1. Passare all'area di lavoro Log Analytics in cui si trova la tabella con campi personalizzati.

  2. Nel menu laterale selezionare Tabelle. Selezionare Gestisci tabella dal menu contestuale per la tabella.

    Screenshot che mostra l'opzione di gestione tabella per una tabella in un'area di lavoro Log Analytics

  3. Si noti se le regole di raccolta dati (DCR) sono associate a una determinata tabella.

    • Se nella sezione corrispondente sono presenti controller di dominio, significa che tutti i campi personalizzati preesistenti sono già stati implementati all'interno di tali controller di dominio o abbandonati al momento della creazione del record di dominio. Esaminerai il contenuto dei campi personalizzati nel passaggio successivo di questo tutorial e determinerai se sono necessari altri aggiornamenti ai DCR.
    • Se alla tabella non sono associate regole di raccolta dati, tutte le colonne di una determinata tabella con nomi che terminano con "_CF" saranno campi personalizzati soggetti alla sostituzione.

    Screenshot che mostra le proprietà di una tabella, incluse le regole di raccolta dati associate alla tabella

  4. Chiudere la finestra di dialogo delle proprietà della tabella e selezionare Modifica schema dal menu di scelta rapida della tabella. Scorrere fino alla fine della pagina in cui sono elencate le colonne personalizzate. Queste colonne terminano con _CF.

    Screenshot che mostra l'elenco di colonne per una tabella che include tutte le colonne personalizzate

  5. Si notino i nomi di queste colonne perché si determinerà il relativo contenuto nel passaggio successivo.

Informazioni sul contenuto del campo personalizzato

Poiché non è possibile esaminare direttamente la definizione del campo personalizzato, è necessario eseguire una query sulla tabella per determinare la formula del campo personalizzato.

  1. Selezionare Log nel menu laterale ed eseguire una query per ottenere un esempio di dati dalla tabella.

    Schermata di Log Analytics con query che restituisce dati di esempio

  2. Individuare le colonne annotate nel passaggio precedente ed esaminarne il contenuto.

    • Se la colonna non è vuota e ci sono DCR associati alla tabella, la logica del campo personalizzata è già stata implementata con la trasformazione. Non è necessaria alcuna azione
    • Se la colonna è vuota (o non è presente nei risultati della query) e ci sono record di controllo di dominio associati alla tabella, la logica del campo personalizzato non è stata implementata con il record di controllo di dominio. Aggiungere una trasformazione al flusso di dati nel DCR esistente.
    • Se la colonna non è vuota e non ci sono DCR associati alla tabella, la logica del campo personalizzato deve essere implementata come trasformazione nel DCR dell'area di lavoro.
  3. Esaminare il contenuto del campo personalizzato e determinare la logica in cui viene calcolata. I campi personalizzati in genere calcolano le sottostringhe di altre colonne nella stessa tabella. Determinare la colonna da cui provengono i dati e la parte della stringa da cui estrae.

Creare una trasformazione

È ora possibile creare il frammento di codice KQL necessario e aggiungerlo a un DCR. Questa logica viene applicata a ogni record durante l'inserimento nell'area di lavoro.

  1. Modificare la query per la tabella usando KQL per replicare la logica del campo personalizzato. Se sono presenti più campi personalizzati da sostituire, è possibile combinarne la logica di calcolo in una singola istruzione.

    • Usare l'operatore parse per la ricerca basata su criteri di una sottostringa all'interno di una stringa.
    • Usare la funzione extract() per la ricerca di sottostringa basata su regex.
    • Le funzioni stringa come split(),substring()e molte altre possono essere utili.

    Screenshot di Log Analytics con una query che restituisce dati utilizzando una query di trasformazione

  2. Determinare dove deve essere inserita la nuova definizione KQL della colonna personalizzata.

Domande frequenti

Come si effettua la migrazione di campi personalizzati per un log di testo raccolto con il vecchio agente Log Analytics (MMA)?

Considerare la migrazione all'Azure Monitor Agent (AMA). L'agente di Log Analytics sta raggiungendo la fine del supporto ed è consigliabile eseguire la migrazione all'agente di Monitoraggio di Azure. I log di testo raccolti con AMA usano la logica di analisi dei log definita sotto forma di trasformazioni KQL dall'inizio. I campi personalizzati non sono necessari e non sono supportati nei log di testo raccolti dall'agente di Monitoraggio di Azure.

La migrazione dei campi personalizzati a KQL è obbligatoria?

No, è necessario eseguire la migrazione dei campi personalizzati solo se si desidera che le colonne personalizzate vengano popolate. Se non si esegue la migrazione dei campi personalizzati, le colonne corrispondenti smetteranno di essere popolate al termine del supporto dei campi personalizzati. I dati già elaborati e archiviati nella tabella non saranno interessati e rimarranno utilizzabili.

Se non si esegue la migrazione dei campi personalizzati, si perderanno i dati esistenti nelle colonne corrispondenti?

No, i campi personalizzati vengono calcolati al momento dell'inserimento dati. L'eliminazione della definizione del campo o la loro mancata migrazione nel tempo non influisce sui dati inseriti in precedenza.

Passaggi successivi