Partilhar via


Monitorar a instância gerenciada do Azure para Apache Cassandra usando o Azure Monitor

A Instância Gerenciada do Azure para Apache Cassandra fornece métricas e log de diagnóstico por meio do Azure Monitor.

Instância gerenciada do Azure para métricas do Apache Cassandra

Você pode visualizar métricas para a Instância Gerenciada do Azure para Apache Cassandra no portal do Azure acessando seu recurso de cluster e selecionando Métricas. Em seguida, você pode escolher entre as métricas e agregações disponíveis.

Captura de tela que mostra o painel Métricas no portal do Azure.

Configurações de diagnóstico no Azure

O Azure Monitor usa configurações de diagnóstico para coletar logs de recursos, que também são chamados de logs de plano de dados. Um recurso do Azure emite logs de recursos para fornecer dados ricos e frequentes sobre suas operações. O Azure Monitor captura esses logs por solicitação. Exemplos de operações de plano de dados incluem excluir, inserir e readFeed. O conteúdo destes registos varia consoante o tipo de recurso.

As métricas da plataforma e os logs de atividade são coletados automaticamente, enquanto você deve criar uma configuração de diagnóstico para coletar logs de recursos ou encaminhá-los para fora do Azure Monitor. Você pode ativar as configurações de diagnóstico para recursos de cluster da Instância Gerenciada do Azure para Apache Cassandra e enviar logs de recursos para as seguintes fontes:

  • Espaço de trabalho do Log Analytics. Os dados enviados para espaços de trabalho do Log Analytics são gravados em tabelas de Diagnóstico do Azure (legado) ou específicas de recursos (visualização).
  • Hub de eventos.
  • Conta de armazenamento.

Nota

Recomendamos a criação da configuração de diagnóstico no modo específico do recurso.

Criar definições de diagnóstico através do portal do Azure

  1. Inicie sessão no portal do Azure.

  2. Vá para o recurso de cluster da Instância Gerenciada do Azure para Apache Cassandra.

    Captura de ecrã que mostra a seleção de um cluster a partir de uma lista de recursos.

  3. Selecione Configurações de diagnóstico na seção Monitoramento e, em seguida, selecione Adicionar configuração de diagnóstico.

    Captura de tela que mostra o painel para configurações de diagnóstico e o botão para adicionar uma configuração de diagnóstico.

  4. No painel Configuração de diagnóstico , escolha um nome para sua configuração.

    Em seguida, em Detalhes da categoria, selecione suas categorias. A categoria CassandraLogs registra as operações do servidor Cassandra. A categoria CassandraAudit registra as operações de auditoria e Cassandra Query Language (CQL).

    Em Detalhes do destino, escolha o seu destino preferido para os seus registos. Se você estiver enviando logs para um espaço de trabalho do Log Analytics, selecione Específico do recurso como a tabela de destino.

    Captura de tela que mostra seleções para uma configuração de diagnóstico.

    Nota

    Se você estiver enviando logs para um espaço de trabalho do Log Analytics, eles podem levar até 20 minutos para aparecer. Até lá, as tabelas específicas de recursos (mostradas em Instância Gerenciada do Azure para Apache Cassandra) não estão visíveis.

  5. Depois de configurar o log de diagnóstico e os dados estiverem fluindo, você poderá selecionar Logs e consultar os logs de diagnóstico disponíveis usando o Azure Data Explorer. Para obter mais informações sobre o Azure Monitor e a Linguagem de Consulta Kusto, consulte Consultas de log no Azure Monitor.

    Captura de ecrã que mostra os registos de consulta.

Criar uma configuração de diagnóstico por meio da CLI do Azure

Para criar uma configuração de diagnóstico usando a CLI do Azure, use o 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

Criar uma configuração de diagnóstico por meio da API REST

Use a API REST do Azure Monitor para criar uma configuração de diagnóstico por meio do console interativo.

Nota

Recomendamos definir a logAnalyticsDestinationType propriedade como Dedicated para habilitar tabelas específicas de recursos.

Pedir

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

Cabeçalhos

Parâmetros/cabeçalhos Valor/Descrição
name O nome da configuração de diagnóstico
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
}

Lista branca de auditoria

Nota

Este artigo contém referências ao termo whitelist, que a Microsoft não usa mais. Quando o termo for removido do software, iremos removê-lo deste artigo.

Por padrão, o log de auditoria cria um registro para cada tentativa de login e consulta CQL. O resultado pode ser avassalador e aumentar a sobrecarga. Para gerenciar essa situação, você pode usar uma lista branca para incluir ou excluir seletivamente registros de auditoria específicos.

Cassandra 3,11

No Cassandra 3.11, você pode usar o recurso de lista branca de auditoria para definir quais operações não criam um registro de auditoria. O recurso de lista branca de auditoria está habilitado por padrão no Cassandra 3.11. Para saber como configurar sua lista branca, consulte Gerenciamento de lista branca baseado em função.

Exemplos:

  • Para filtrar todas as SELECT operações para MODIFY o usuário bob a partir do log de auditoria, execute as seguintes instruções:

    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' };
    
  • Para filtrar todas as SELECT decisions operações na tabela no espaço de design chave para o usuário jim a partir do log de auditoria, execute a seguinte instrução:

    cassandra@cqlsh> ALTER ROLE jim WITH OPTIONS = { 'GRANT AUDIT WHITELIST FOR SELECT' : 'data/design/decisions' };
    
  • Para revogar a lista de permissões para usuário bob em todas as SELECT operações do usuário, execute a seguinte instrução:

    cassandra@cqlsh> ALTER ROLE bob WITH OPTIONS = { 'REVOKE AUDIT WHITELIST FOR SELECT' : 'data' };
    
  • Para exibir as listas brancas atuais, execute a seguinte instrução:

    cassandra@cqlsh> LIST ROLES;
    

Cassandra 4 e posteriores

Em Cassandra 4 e posterior, você pode configurar sua lista branca na configuração Cassandra. Para obter orientações detalhadas, consulte Atualizar configuração do Cassandra. As opções disponíveis são as seguintes (referência: documentação Cassandra para registro de auditoria):

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>

As categorias disponíveis são: QUERY, DML, DDL, DCL, OTHER, AUTH, ERROR, PREPARE.

Aqui está um exemplo de configuração:

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

Por padrão, a configuração é definida included_categories como AUTH,ERROR,DCL,DDL.

Próximos passos