Monitorare Istanza gestita di Azure per Apache Cassandra usando Monitoraggio di Azure

Azure Istanza gestita per Apache Cassandra fornisce metriche e registrazione diagnostica tramite Monitoraggio di Azure.

Metriche di Azure Istanza gestita per Apache Cassandra

È possibile visualizzare le metriche per Azure Istanza gestita per Apache Cassandra nel portale di Azure passando alla risorsa cluster e selezionando Metriche. È quindi possibile scegliere tra le metriche e le aggregazioni disponibili.

Screenshot that shows the Metrics pane in the Azure portal.

Impostazioni di diagnostica in Azure

Monitoraggio di Azure usa le impostazioni di diagnostica per raccogliere i log delle risorse, detti anche log del piano dati. Una risorsa di Azure genera log delle risorse per fornire dati completi e frequenti sulle operazioni. Monitoraggio di Azure acquisisce questi log per ogni richiesta. Esempi di operazioni del piano dati includono eliminazione, inserimento e readFeed. Il contenuto di questi log varia in base al tipo di risorsa.

Le metriche della piattaforma e i log attività vengono raccolti automaticamente, mentre è necessario creare un'impostazione di diagnostica per raccogliere i log delle risorse o inoltrarli all'esterno di Monitoraggio di Azure. È possibile attivare le impostazioni di diagnostica per azure Istanza gestita per le risorse del cluster Apache Cassandra e inviare i log delle risorse alle origini seguenti:

  • Area di lavoro Log Analytics. I dati inviati alle aree di lavoro Log Analytics vengono scritti in tabelle Diagnostica di Azure (legacy) o specifiche delle risorse (anteprima).
  • Hub eventi.
  • Account di archiviazione.

Nota

È consigliabile creare l'impostazione di diagnostica in modalità specifica della risorsa.

Creare impostazioni di diagnostica tramite il portale di Azure

  1. Accedere al portale di Azure.

  2. Passare alla risorsa del cluster Azure Istanza gestita for Apache Cassandra.

    Screenshot that shows selecting a cluster from a list of resources.

  3. Selezionare Impostazioni di diagnostica nella sezione Monitoraggio e quindi selezionare Aggiungi impostazione di diagnostica.

    Screenshot that shows the pane for diagnostic settings and the button for adding a diagnostic setting.

  4. Nel riquadro Impostazioni di diagnostica scegliere un nome per l'impostazione.

    Quindi, in Dettagli categoria selezionare le categorie. La categoria CassandraLogs registra le operazioni del server Cassandra. La categoria CassandraAudit registra le operazioni di controllo e CQL (Cassandra Query Language).

    In Dettagli destinazione scegliere la destinazione preferita per i log. Se si inviano log a un'area di lavoro Log Analytics, assicurarsi di selezionare Specifica risorsa come tabella di destinazione.

    Screenshot that shows selections for a diagnostic setting.

    Nota

    Se si inviano log a un'area di lavoro Log Analytics, possono essere necessari fino a 20 minuti. Fino ad allora, le tabelle specifiche delle risorse (illustrate in Azure Istanza gestita per Apache Cassandra) non sono visibili.

  5. Dopo aver configurato la registrazione diagnostica e i dati vengono trasmessi, è possibile selezionare Log ed eseguire query sui log di diagnostica disponibili usando Azure Esplora dati. Per altre informazioni su Monitoraggio di Azure e Linguaggio di query Kusto, vedere Query di log in Monitoraggio di Azure.

    Screenshot that shows query logs.

Creare un'impostazione di diagnostica tramite l'interfaccia della riga di comando di Azure

Per creare un'impostazione di diagnostica usando l'interfaccia della riga di comando di Azure, usare il comando az monitor diagnostic-settings create :

    logs='[{"category":"CassandraAudit","enabled":true,"retentionPolicy":{"enabled":true,"days":3}},{"category":"CassandraLogs","enabled":true,"retentionPolicy":{"enabled":true,"days":3}}]'
    resourceId='/subscriptions/{SUBSCRIPTION_ID}/resourceGroups/{RESOURCE_GROUP}/providers/Microsoft.DocumentDB/cassandraClusters/{CLUSTER_NAME}'
    workspace='/subscriptions/{SUBSCRIPTION_ID}/resourcegroups/{RESOURCE_GROUP}/providers/microsoft.operationalinsights/workspaces/{WORKSPACE_NAME}'

    az monitor diagnostic-settings create  --name tvk-diagnostic-logs-cassandra --resource $resourceId --logs  $logs --workspace $workspace --export-to-resource-specific true

Creare un'impostazione di diagnostica tramite l'API REST

Usare l'API REST di Monitoraggio di Azure per creare un'impostazione di diagnostica tramite la console interattiva.

Nota

È consigliabile impostare la logAnalyticsDestinationType proprietà su Dedicated per abilitare tabelle specifiche delle risorse.

Richiedi

PUT
https://management.azure.com/{resource-id}/providers/microsoft.insights/diagnosticSettings/service?api-version={api-version}

Intestazioni

Parametri/intestazioni Valore/Descrizione
name Nome dell'impostazione di diagnostica
resourceUri subscriptions/{SUBSCRIPTION_ID}/resourceGroups/{RESOURCE_GROUP}/providers/Microsoft.DocumentDb/databaseAccounts/{ACCOUNT_NAME}/providers/microsoft.insights/diagnosticSettings/{DIAGNOSTIC_SETTING_NAME}
api-version 2017-05-01-preview
Content-Type application/json

Corpo

{
    "id": "/subscriptions/{SUBSCRIPTION_ID}/resourceGroups/{RESOURCE_GROUP}/providers/Microsoft.DocumentDb/databaseAccounts/{ACCOUNT_NAME}/providers/microsoft.insights/diagnosticSettings/{DIAGNOSTIC_SETTING_NAME}",
    "type": "Microsoft.Insights/diagnosticSettings",
    "name": "name",
    "location": null,
    "kind": null,
    "tags": null,
    "properties": {
        "storageAccountId": null,
        "serviceBusRuleId": null,
        "workspaceId": "/subscriptions/{SUBSCRIPTION_ID}/resourcegroups/{RESOURCE_GROUP}/providers/microsoft.operationalinsights/workspaces/{WORKSPACE_NAME}",
        "eventHubAuthorizationRuleId": null,
        "eventHubName": null,
        "logs": [
            {
                "category": "CassandraAudit",
                "categoryGroup": null,
                "enabled": true,
                "retentionPolicy": {
                    "enabled": false,
                    "days": 0
                }
            },
            {
                "category": "CassandraLogs",
                "categoryGroup": null,
                "enabled": true,
                "retentionPolicy": {
                    "enabled": false,
                    "days": 0
                }
            }
        ],
        "logAnalyticsDestinationType": "Dedicated"
    },
    "identity": null
}

Controlla l'elenco elementi consentiti

Nota

Questo articolo contiene riferimenti al termine whitelist, che Microsoft non usa più. Quando il termine verrà rimosso dal software, verrà rimosso anche dall'articolo.

Per impostazione predefinita, la registrazione di controllo crea un record per ogni tentativo di accesso e query CQL. Il risultato può essere sovraccarico e aumentare il sovraccarico. Per gestire questa situazione, è possibile usare un elenco elementi consentiti per includere o escludere in modo selettivo record di controllo specifici.

Cassandra 3.11

In Cassandra 3.11 è possibile usare la funzionalità audit whitelist per impostare le operazioni che non creano un record di controllo. La funzionalità audit whitelist è abilitata per impostazione predefinita in Cassandra 3.11. Per informazioni su come configurare l'elenco elementi consentiti, vedere Gestione dell'elenco elementi consentiti in base al ruolo.

Esempi:

  • Per escludere tutte le SELECT operazioni e MODIFY per l'utente bob dal log di controllo, eseguire le istruzioni seguenti:

    cassandra@cqlsh> ALTER ROLE bob WITH OPTIONS = { 'GRANT AUDIT WHITELIST FOR SELECT' : 'data' };
    cassandra@cqlsh> ALTER ROLE bob WITH OPTIONS = { 'GRANT AUDIT WHITELIST FOR MODIFY' : 'data' };
    
  • Per filtrare tutte le SELECT operazioni nella decisions tabella nello design spazio delle chiavi per l'utente jim dal log di controllo, eseguire l'istruzione seguente:

    cassandra@cqlsh> ALTER ROLE jim WITH OPTIONS = { 'GRANT AUDIT WHITELIST FOR SELECT' : 'data/design/decisions' };
    
  • Per revocare l'elenco elementi consentiti per l'utente in tutte le operazioni dell'utente bobSELECT , eseguire l'istruzione seguente:

    cassandra@cqlsh> ALTER ROLE bob WITH OPTIONS = { 'REVOKE AUDIT WHITELIST FOR SELECT' : 'data' };
    
  • Per visualizzare gli elenchi consentiti correnti, eseguire l'istruzione seguente:

    cassandra@cqlsh> LIST ROLES;
    

Cassandra 4 e versioni successive

In Cassandra 4 e versioni successive è possibile configurare l'elenco elementi consentiti nella configurazione di Cassandra. Per indicazioni dettagliate, vedere Aggiornare la configurazione di Cassandra. Le opzioni disponibili sono le seguenti (riferimento: documentazione di Cassandra per la registrazione di controllo):

audit_logging_options:
    included_keyspaces: <Comma separated list of keyspaces to be included in audit log, default - includes all keyspaces>
    excluded_keyspaces: <Comma separated list of keyspaces to be excluded from audit log, default - excludes no keyspace except system, system_schema and system_virtual_schema>
    included_categories: <Comma separated list of Audit Log Categories to be included in audit log, default - includes all categories>
    excluded_categories: <Comma separated list of Audit Log Categories to be excluded from audit log, default - excludes no category>
    included_users: <Comma separated list of users to be included in audit log, default - includes all users>
    excluded_users: <Comma separated list of users to be excluded from audit log, default - excludes no user>

Le categorie disponibili sono: QUERY, DML, DDLDCL, OTHER, AUTH, , ERROR, . PREPARE

Ecco una configurazione di esempio:

audit_logging_options:
    included_keyspaces: keyspace1,keyspace2
    included_categories: AUTH,ERROR,DCL,DDL

Per impostazione predefinita, la configurazione imposta included_categories su AUTH,ERROR,DCL,DDL.

Passaggi successivi

  • Per informazioni dettagliate su come creare un'impostazione di diagnostica usando il portale di Azure, l'interfaccia della riga di comando di Azure o PowerShell, vedere Impostazioni di diagnostica in Monitoraggio di Azure.