Raccolta di log e metriche per i servizi di Azure da usare in Log AnalyticsCollect Azure service logs and metrics for use in Log Analytics

Esistono quattro diversi modi per raccogliere log e metriche per i servizi di Azure:There are four different ways of collecting logs and metrics for Azure services:

  1. Da Diagnostica di Azure direttamente a Log Analytics (Diagnostica nella tabella seguente)Azure diagnostics direct to Log Analytics (Diagnostics in the following table)
  2. Da Diagnostica di Azure ad Archiviazione di Azure a Log Analytics (Archiviazione nella tabella seguente)Azure diagnostics to Azure storage to Log Analytics (Storage in the following table)
  3. Connettori per i servizi di Azure (Connettori nella tabella seguente)Connectors for Azure services (Connectors in the following table)
  4. Script per raccogliere e inviare i dati a Log Analytics (spazi vuoti nella tabella seguente e per i servizi non elencati)Scripts to collect and then post data into Log Analytics (blanks in the following table and for services that are not listed)
ServiceService Tipo di risorsaResource Type LogLogs MetricaMetrics SoluzioneSolution
Gateway di applicazioneApplication gateways Microsoft.Network/applicationGatewaysMicrosoft.Network/applicationGateways DiagnosticaDiagnostics DiagnosticaDiagnostics Analisi dei gateway applicazione di AzureAzure Application Gateway Analytics
Application InsightsApplication insights ConnettoreConnector ConnettoreConnector Application Insights Connector (anteprima)Application Insights Connector (Preview)
Account di AutomazioneAutomation accounts Microsoft.Automation/AutomationAccountsMicrosoft.Automation/AutomationAccounts DiagnosticaDiagnostics Altre informazioniMore information
Account BatchBatch accounts Microsoft.Batch/batchAccountsMicrosoft.Batch/batchAccounts DiagnosticaDiagnostics DiagnosticaDiagnostics
Servizi cloud classiciClassic cloud services ArchiviazioneStorage Altre informazioniMore information
Servizi cognitiviCognitive services Microsoft.CognitiveServices/accountsMicrosoft.CognitiveServices/accounts DiagnosticaDiagnostics
Data Lake AnalyticsData Lake analytics Microsoft.DataLakeAnalytics/accountsMicrosoft.DataLakeAnalytics/accounts DiagnosticaDiagnostics
Data Lake StoreData Lake store Microsoft.DataLakeStore/accountsMicrosoft.DataLakeStore/accounts DiagnosticaDiagnostics
Spazio dei nomi dell'hub eventiEvent Hub namespace Microsoft.EventHub/namespacesMicrosoft.EventHub/namespaces DiagnosticaDiagnostics DiagnosticaDiagnostics
Hub IoTIoT Hubs Microsoft.Devices/IotHubsMicrosoft.Devices/IotHubs DiagnosticaDiagnostics
Insieme di credenziali delle chiaviKey Vault Microsoft.KeyVault/vaultsMicrosoft.KeyVault/vaults DiagnosticaDiagnostics KeyVault AnalyticsKeyVault Analytics
Servizi di bilanciamento del caricoLoad Balancers Microsoft.Network/loadBalancersMicrosoft.Network/loadBalancers DiagnosticaDiagnostics
App per la logicaLogic Apps Microsoft.Logic/workflowsMicrosoft.Logic/workflows
Microsoft.Logic/integrationAccountsMicrosoft.Logic/integrationAccounts
DiagnosticaDiagnostics DiagnosticaDiagnostics
Gruppi di sicurezza di reteNetwork Security Groups Microsoft.Network/networksecuritygroupsMicrosoft.Network/networksecuritygroups DiagnosticaDiagnostics Analisi del gruppo di sicurezza di rete di AzureAzure Network Security Group Analytics
Insiemi di credenziali di ripristinoRecovery vaults Microsoft.RecoveryServices/vaultsMicrosoft.RecoveryServices/vaults Azure Recovery Services Analytics (Anteprima)Azure Recovery Services Analytics (Preview)
Servizi di ricercaSearch services Microsoft.Search/searchServicesMicrosoft.Search/searchServices DiagnosticaDiagnostics DiagnosticaDiagnostics
Spazio dei nomi del bus di servizioService Bus namespace Microsoft.ServiceBus/namespacesMicrosoft.ServiceBus/namespaces DiagnosticaDiagnostics DiagnosticaDiagnostics Service Bus Analytics (Anteprima)Service Bus Analytics (Preview)
Service FabricService Fabric ArchiviazioneStorage Service Fabric Analytics (anteprima)Service Fabric Analytics (Preview)
SQL (versione 12)SQL (v12) Microsoft.Sql/servers/databasesMicrosoft.Sql/servers/databases
Microsoft.Sql/servers/elasticPoolsMicrosoft.Sql/servers/elasticPools
DiagnosticaDiagnostics Azure SQL Analytics (Anteprima)Azure SQL Analytics (Preview)
ArchiviazioneStorage ScriptScript Azure Storage Analytics (Anteprima)Azure Storage Analytics (Preview)
Macchine virtualiVirtual Machines Microsoft.Compute/virtualMachinesMicrosoft.Compute/virtualMachines EstensioneExtension EstensioneExtension
DiagnosticaDiagnostics
Set di scalabilità di macchine virtualiVirtual Machines scale sets Microsoft.Compute/virtualMachinesMicrosoft.Compute/virtualMachines
Microsoft.Compute/virtualMachineScaleSets/virtualMachinesMicrosoft.Compute/virtualMachineScaleSets/virtualMachines
DiagnosticaDiagnostics
Server farm WebWeb Server farms Microsoft.Web/serverfarmsMicrosoft.Web/serverfarms DiagnosticaDiagnostics
Microsoft AzureWeb Sites Microsoft.Web/sitesMicrosoft.Web/sites
Microsoft.Web/sites/slotsMicrosoft.Web/sites/slots
DiagnosticaDiagnostics Azure Web Apps Analytics (Anteprima)Azure Web Apps Analytics (Preview)

Nota

Per monitorare le macchine virtuali di Azure (sia Linux che Windows), è consigliabile installare l'estensione macchina virtuale di Log Analytics.For monitoring Azure virtual machines (both Linux and Windows), we recommend installing the Log Analytics VM extension. L'agente fornisce informazioni dettagliate raccolte all'interno delle macchine virtuali.The agent provides you with insights collected from within your virtual machines. È anche possibile usare l'estensione per i set di scalabilità di macchine virtuali.You can also use the extension for Virtual machine scale sets.

Da Diagnostica di Azure direttamente a Log AnalyticsAzure diagnostics direct to Log Analytics

Molte risorse di Azure sono in grado di scrivere i log di diagnostica e le metriche direttamente in Log Analytics e questo è il modo migliore per raccogliere i dati per l'analisi.Many Azure resources are able to write diagnostic logs and metrics directly to Log Analytics and this is the preferred way of collecting the data for analysis. Quando si usa Diagnostica di Azure, i dati vengono scritti immediatamente in Log Analytics e non occorre scriverli prima nell'archiviazione.When using Azure diagnostics, data is written immediately to Log Analytics and there is no need to first write the data to storage.

Le risorse di Azure che supportano Monitoraggio di Azure possono inviare i log e le metriche direttamente a Log Analytics.Azure resources that support Azure monitor can send their logs and metrics directly to Log Analytics.

Abilitare la diagnostica con PowerShellEnable diagnostics with PowerShell

È necessaria la versione di novembre 2016 (2.3.0) o versione successiva di Azure PowerShell.You need the November 2016 (v2.3.0) or later release of Azure PowerShell.

L'esempio di PowerShell seguente mostra come usare Set-AzureRmDiagnosticSetting per abilitare la diagnostica in un gruppo di sicurezza di rete.The following PowerShell example shows how to use Set-AzureRmDiagnosticSetting to enable diagnostics on a network security group. Lo stesso approccio funziona per tutte le risorse supportate. Impostare $resourceId sull'ID della risorsa per cui si vuole abilitare la diagnostica.The same approach works for all supported resources - set $resourceId to the resource id of the resource you want to enable diagnostics for.

$workspaceId = "/subscriptions/d2e37fee-1234-40b2-5678-0b2199de3b50/resourcegroups/oi-default-east-us/providers/microsoft.operationalinsights/workspaces/rollingbaskets"

$resourceId = "/SUBSCRIPTIONS/ec11ca60-1234-491e-5678-0ea07feae25c/RESOURCEGROUPS/DEMO/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUPS/DEMO"

Set-AzureRmDiagnosticSetting -ResourceId $ResourceId  -WorkspaceId $workspaceId -Enabled $true

Abilitare la diagnostica con modelli di Resource ManagerEnable diagnostics with Resource Manager templates

Per abilitare la diagnostica per una risorsa al momento della creazione e inviare i dati di diagnostica all'area di lavoro di Log Analytics, è possibile usare un modello simile al seguente.To enable diagnostics on a resource when it is created, and have the diagnostics sent to your Log Analytics workspace you can use a template similar to the one below. Questo esempio è riferito a un account di Automazione, ma funziona per tutti i tipi di risorse supportati.This example is for an Automation account but works for all supported resource types.

        {
            "type": "Microsoft.Automation/automationAccounts/providers/diagnosticSettings",
            "name": "[concat(parameters('omsAutomationAccountName'), '/', 'Microsoft.Insights/service')]",
            "apiVersion": "2015-07-01",
            "dependsOn": [
                "[concat('Microsoft.Automation/automationAccounts/', parameters('omsAutomationAccountName'))]",
                "[concat('Microsoft.OperationalInsights/workspaces/', parameters('omsWorkspaceName'))]"
            ],
            "properties": {
                "workspaceId": "[resourceId('Microsoft.OperationalInsights/workspaces', parameters('omsWorkspaceName'))]",
                "logs": [
                    {
                        "category": "JobLogs",
                        "enabled": true
                    },
                    {
                        "category": "JobStreams",
                        "enabled": true
                    }
                ]
            }
        }

Risolvere i problemi relativi a Diagnostica di AzureTroubleshoot Azure Diagnostics

Se viene visualizzato il messaggio di errore seguente, il provider di risorse Microsoft.insights non è registrato:If you receive the following error message, the Microsoft.insights resource provider is not registered:

Failed to update diagnostics for 'resource'. {"code":"Forbidden","message":"Please register the subscription 'subscription id' with Microsoft.Insights."}

Per registrare il provider di risorse, seguire questa procedura nel portale di Azure:To register the resource provider, perform the following steps in the Azure portal:

  1. Nel pannello di navigazione a sinistra fare clic su Sottoscrizioni.In the navigation pane on the left, click Subscriptions
  2. Selezionare la sottoscrizione identificata nel messaggio di errore.Select the subscription identified in the error message
  3. Fare clic su Provider di risorse.Click Resource Providers
  4. Trovare il provider Microsoft.insights.Find the Microsoft.insights provider
  5. Fare clic sul collegamento Registra.Click the Register link

Registrare il provider di risorse Microsoft.insights

Dopo aver registrato il provider di risorse Microsoft.insights, provare di nuovo a configurare la diagnostica.Once the Microsoft.insights resource provider is registered, retry configuring diagnostics.

Se in PowerShell viene visualizzato il messaggio di errore seguente è necessario aggiornare la versione di PowerShell:In PowerShell, if you receive the following error message, you need to update your version of PowerShell:

Set-AzureRmDiagnosticSetting : A parameter cannot be found that matches parameter name 'WorkspaceId'.

Aggiornare PowerShell alla versione di novembre 2016 (v2.3.0) o successiva usando le istruzioni disponibili nell'articolo Get started with Azure PowerShell cmdlets (Introduzione ai cmdlet di Azure PowerShell).Update your version of PowerShell to the November 2016 (v2.3.0), or later, release using the instructions in the Get started with Azure PowerShell cmdlets article.

Da Diagnostica di Azure ad Archiviazione di Azure e poi a Log AnalyticsAzure diagnostics to storage then to Log Analytics

Per raccogliere i log da alcune risorse, è possibile inviare i log ad Archiviazione di Azure e quindi configurare Log Analytics per leggere i log dall'archiviazione.For collecting logs from within some resources, it is possible to send the logs to Azure storage and then configure Log Analytics to read the logs from storage.

Log Analytics può usare questo approccio per raccogliere i dati di diagnostica da Archiviazione di Azure per le risorse e i log seguenti:Log Analytics can use this approach to collect diagnostics from Azure storage for the following resources and logs:

RisorsaResource LogLogs
Service FabricService Fabric ETWEventETWEvent
Evento operativoOperational Event
Evento Reliable ActorReliable Actor Event
Evento Reliable ServiceReliable Service Event
Macchine virtualiVirtual Machines Syslog LinuxLinux Syslog
Evento WindowsWindows Event
Log IISIIS Log
ETWEvent WindowsWindows ETWEvent
Ruoli WebWeb Roles
Ruoli di lavoroWorker Roles
Syslog LinuxLinux Syslog
Evento WindowsWindows Event
Log IISIIS Log
ETWEvent WindowsWindows ETWEvent

Nota

Quando si inviano dati di diagnostica a un account di archiviazione e quando Log Analytics legge i dati da tale account, vengono addebitate le normali tariffe dati di Azure per l'archiviazione e le transazioni.You are charged normal Azure data rates for storage and transactions when you send diagnostics to a storage account and for when Log Analytics reads the data from your storage account.

Vedere Uso dell'archivio BLOB per IIS e dell'archivio tabelle per gli eventi per altre informazioni sulle modalità di raccolta di questi log in Log Analytics.See Use blob storage for IIS and table storage for events to learn more about how Log Analytics can collect these logs.

Connettori per i servizi di AzureConnectors for Azure services

Esiste un connettore per Application Insights, che consente di inviare i dati raccolti da Application Insights a Log Analytics.There is a connector for Application Insights, which allows data collected by Application Insights to be sent to Log Analytics.

Altre informazioni sul connettore Application Insights.Learn more about the Application Insights connector.

Script per raccogliere i dati e inviarli a Log AnalyticsScripts to collect and post data to Log Analytics

Per i servizi di Azure che non forniscono un modo diretto per inviare i log e le metriche a Log Analytics, è possibile usare uno script di Automazione di Azure per raccogliere i log e le metriche.For Azure services that do not provide a direct way to send logs and metrics to Log Analytics you can use an Azure Automation script to collect the log and metrics. Lo script può quindi inviare i dati a Log Analytics tramite l'API di raccolta datiThe script can then send the data to Log Analytics using the data collector API

La raccolta di modelli di Azure include esempi dell'uso di Automazione di Azure per raccogliere dati dai servizi e inviarli a Log Analytics.The Azure template gallery has examples of using Azure Automation to collect data from services and sending it to Log Analytics.

Passaggi successiviNext steps