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.
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
Inicie sessão no portal do Azure.
Vá para o recurso de cluster da Instância Gerenciada do Azure para Apache Cassandra.
Selecione Configurações de diagnóstico na seção Monitoramento e, em seguida, selecione Adicionar configuração de diagnóstico.
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.
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.
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.
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 paraMODIFY
o usuáriobob
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 dedesign
chave para o usuáriojim
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 asSELECT
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
- Para obter informações detalhadas sobre como criar uma configuração de diagnóstico usando o portal do Azure, a CLI do Azure ou o PowerShell, consulte Configurações de diagnóstico no Azure Monitor.