Caricare log in Monitoraggio di Azure
Periodicamente, è possibile esportare i log e quindi caricarli in Azure. L'esportazione e il caricamento dei log creano e aggiornano anche il controller dei dati, l'istanza gestita di SQL e le risorse del server PostgreSQL in Azure.
Operazioni preliminari
Prima di poter caricare i log, è necessario:
- Creare un'area di lavoro Log Analytics
- Assegnare un ID e una chiave condivisa alle variabili di ambiente
Gli esempi in questo articolo usano parentesi angolari < ... >
per identificare i valori che è necessario sostituire prima di eseguire lo script. Sostituire le parentesi quadre e i valori all'interno delle parentesi quadre.
Creare un'area di lavoro Log Analytics
Per creare un'area di lavoro Log Analytics, eseguire questi comandi per creare l'area di lavoro Log Analytics e impostare le informazioni di accesso nelle variabili di ambiente.
Nota
Ignorare questo passaggio se si dispone già di un'area di lavoro.
az monitor log-analytics workspace create --resource-group <resource group name> --workspace-name <some name you choose>
Output di esempio:
{
"customerId": "00000000-0000-0000-0000-000000000000",
"eTag": null,
"id": "/subscriptions/<Subscription ID>/resourcegroups/user-arc-demo/providers/microsoft.operationalinsights/workspaces/user-logworkspace",
"location": "eastus",
"name": "user-logworkspace",
"portalUrl": null,
"provisioningState": "Succeeded",
"resourceGroup": "user-arc-demo",
"retentionInDays": 30,
"sku": {
"lastSkuUpdate": "Thu, 30 Jul 2020 22:37:53 GMT",
"maxCapacityReservationLevel": 3000,
"name": "pergb2018"
},
"source": "Azure",
"tags": null,
"type": "Microsoft.OperationalInsights/workspaces"
}
Assegnare un ID e una chiave condivisa alle variabili di ambiente
Salvare customerId
dell'area di lavoro Log Analytics come variabile di ambiente da usare in un secondo momento:
SET WORKSPACE_ID=<customerId>
Questo comando restituisce le chiavi di accesso necessarie per connettersi all'area di lavoro Log Analytics:
az monitor log-analytics workspace get-shared-keys --resource-group MyResourceGroup --workspace-name MyLogsWorkpace
Output di esempio:
{
"primarySharedKey": "<primarySharedKey>==",
"secondarySharedKey": "<secondarySharedKey>=="
}
Salvare la chiave primaria in una variabile di ambiente da usare in un secondo momento:
SET WORKSPACE_SHARED_KEY=<primarySharedKey>
Verificare le variabili di ambiente
Verificare che tutte le variabili di ambiente necessarie siano impostate:
echo %WORKSPACE_ID%
echo %WORKSPACE_SHARED_KEY%
Con le variabili di ambiente impostate, è possibile caricare i log nell'area di lavoro Log Analytics.
Configurare il caricamento automatico dei log nell'area di lavoro Log Analytics di Azure in modalità diretta tramite l'interfaccia della riga di comando az
Nella modalità diretta connessa, il caricamento dei log può essere configurato solo in modalità automatica. Questo caricamento automatico delle metriche può essere configurato durante o dopo la distribuzione del controller dei dati di Azure Arc.
Abilitare il caricamento automatico dei log nell'area di lavoro Log Analytics di Azure
Se il caricamento automatico dei log è stato disabilitato durante la distribuzione del controller dei dati di Azure Arc, eseguire il comando seguente per abilitare il caricamento automatico dei log.
az arcdata dc update --name <name of datacontroller> --resource-group <resource group> --auto-upload-logs true
#Example
az arcdata dc update --name arcdc --resource-group <myresourcegroup> --auto-upload-logs true
Abilitare il caricamento automatico dei log nell'area di lavoro Log Analytics di Azure
Se il caricamento automatico dei log è stato abilitato durante la distribuzione del controller dei dati di Azure Arc, eseguire il comando seguente per disabilitare il caricamento automatico dei log.
az arcdata dc update --name <name of datacontroller> --resource-group <resource group> --auto-upload-logs false
#Example
az arcdata dc update --name arcdc --resource-group <myresourcegroup> --auto-upload-logs false
Configurare il caricamento automatico dei log nell'area di lavoro Log Analytics di Azure in modalità diretta tramite l'interfaccia della riga di comando kubectl
Abilitare il caricamento automatico dei log nell'area di lavoro Log Analytics di Azure
Per configurare il caricamento automatico dei log tramite kubectl
:
- assicurarsi che l'area di lavoro Log Analytics venga creata come descritto nella sezione precedente
- creare un segreto Kubernetes per l'area di lavoro Log Analytics usando
WorkspaceID
eSharedAccessKey
come indicato di seguito:
apiVersion: v1
data:
primaryKey: <base64 encoding of Azure Log Analytics workspace primary key>
workspaceId: <base64 encoding of Azure Log Analytics workspace Id>
kind: Secret
metadata:
name: log-workspace-secret
namespace: <your datacontroller namespace>
type: Opaque
Per creare il segreto, eseguire:
kubectl apply -f <myLogAnalyticssecret.yaml> --namespace <mynamespace>
Per aprire le impostazioni come file yaml nell'editor predefinito, eseguire:
kubectl edit datacontroller <DC name> --name <namespace>
aggiornare la proprietà autoUploadLogs impostandola su
"true"
e salvare il file
Abilitare il caricamento automatico dei log nell'area di lavoro Log Analytics di Azure
Per disabilitare il caricamento automatico dei log, eseguire:
kubectl edit datacontroller <DC name> --name <namespace>
- aggiornare la proprietà autoUploadLogs impostandola su
"false"
e salvare il file
Caricare i log in Monitoraggio di Azure in modalità indiretta
Per caricare i log per il servizio Istanza gestita di SQL abilitato da Azure Arc e i server PostgreSQL abilitati per Azure Arc, eseguire i comandi dell'interfaccia della riga di comando seguenti:
Esportare tutti i log nel file specificato:
Nota
L'esportazione di informazioni di utilizzo/fatturazione, metriche e log usando il comando
az arcdata dc export
al momento richiede di ignorare la verifica SSL. Verrà richiesto di ignorare la verifica SSL oppure impostare la variabile di ambienteAZDATA_VERIFY_SSL=no
per evitare la richiesta. Attualmente non è possibile configurare un certificato SSL per l'API di esportazione del controller dei dati.az arcdata dc export --type logs --path logs.json --k8s-namespace arc
Caricare i log in un'area di lavoro Log Analytics di Monitoraggio di Azure:
az arcdata dc upload --path logs.json
Visualizzare i log nel portale di Azure
Dopo aver caricato i log, dovrebbe essere possibile eseguire una query su di essi usando la finestra di esplorazione delle query sui log nel modo seguente:
- Aprire il portale di Azure, cercare l'area di lavoro in base al nome nella barra di ricerca della parte superiore e selezionarla.
- Selezionare Log nel riquadro a sinistra.
- Fare clic su Informazioni di base oppure sui collegamenti nella pagina Informazioni di base per altre informazioni su Log Analytics se non si ha familiarità con questo strumento.
- Seguire l'esercitazione per altre informazioni su Log Analytics se lo si usa per la prima volta.
- Espandere i log personalizzati nella parte inferiore dell'elenco delle tabelle; viene visualizzata una tabella denominata "sql_instance_logs_CL" o "postgresInstances_postgresql_logs_CL".
- Selezionare l'icona a forma di occhio accanto al nome della tabella.
- Selezionare il pulsante "Visualizza in editor di query".
- A questo punto, nell'editor di query viene visualizzata una query che mostra i 10 eventi più recenti nel log.
- Da qui è possibile provare a eseguire query sui log usando l'editor di query, impostare gli avvisi e così via.
Automazione dei caricamenti (facoltativo)
Per caricare metriche e log in base a una pianificazione, è possibile creare uno script ed eseguirlo in un timer ogni pochi minuti. Di seguito è riportato un esempio di automazione dei caricamenti usando uno script della shell Linux.
Nell'editor di testo/codice preferito aggiungere lo script seguente al file e salvare come file di script eseguibile, ad esempio .sh
(Linux/Mac), .cmd
, .bat
o .ps1
(Windows).
az arcdata dc export --type logs --path logs.json --force --k8s-namespace arc
az arcdata dc upload --path logs.json
Rendere eseguibile il file di script
chmod +x myuploadscript.sh
Eseguire lo script ogni 20 minuti:
watch -n 1200 ./myuploadscript.sh
È anche possibile usare un'utilità di pianificazione dei processi come Cron o Utilità di pianificazione di Windows o un agente di orchestrazione come Ansible, Puppet o Chef.
Contenuto correlato
Caricare metriche e log in Monitoraggio di Azure
Caricare dati di utilizzo, metriche e log in Monitoraggio di Azure
Caricare i dati di fatturazione in Azure e visualizzarli nel portale di Azure
Visualizzare la risorsa del controller dei dati di Azure Arc nel portale di Azure