Assim como no Snowflake, “logs do Databricks” pode significar dados de segurança que você mantém em tabelas Delta ou o próprio log de auditoria do Databricks na tabela de sistema system.access.audit. A exportação mais simples para ambos é uma célula de notebook. Consultar com Spark SQL, escrever o resultado como JSON em um volume do Catálogo Unity e, em seguida, baixá-lo com o Databricks CLI. O Spark escreve JSON delimitado por novas linhas, então os arquivos estão prontos para upload.
O Databricks é cada vez mais usado como um data lake de segurança, e seu log de auditoria é importante por si só: quem fez login, quem criou tokens, quem alterou permissões. O Prime Core tem mais de 24.000 regras de detecção únicas, mapeadas para 676 técnicas MITRE ATT&CK. Abaixo está como extrair os dados, sanear e investigá-los gratuitamente no LogTotal.
Antes de começar
Acesso. Ler system.access.audit requer que o esquema do sistema esteja habilitado para seu metastore e uma concessão SELECT de um administrador de conta ou metastore. Para suas próprias tabelas, você precisa das concessões usuais do Catálogo Unity.
Um volume para escrever. Você precisa de um volume do Catálogo Unity no qual você possa escrever, por exemplo, /Volumes/security/exports/logtotal, e o Databricks CLI configurado em sua máquina.
Computar. Um notebook precisa de um cluster ou computação sem servidor. Filtre por data para não escanear mais do que o necessário.
Exportar de um notebook
(spark.sql("""
SELECT *
FROM system.access.audit
WHERE event_date = '2026-10-19'
AND action_name IN ('login', 'tokenLogin', 'generateDbToken')
""")
.write.mode("overwrite")
.json("/Volumes/security/exports/logtotal/audit_20261019"))
O Spark escreve vários arquivos part-*.json além de arquivos de marcador. Baixe e combine-os:
databricks fs cp -r dbfs:/Volumes/security/exports/logtotal/audit_20261019 ./audit_20261019
cat ./audit_20261019/part-*.json > databricks_audit_20261019.jsonl
Para suas próprias tabelas de segurança, altere a consulta: selecione de sua tabela e filtre na coluna de timestamp dela.
Sem um notebook, a API de Execução de Instrução SQL pode executar a mesma consulta em um armazém SQL e retornar JSON. As linhas voltam como arrays, com os nomes das colunas em um manifesto separado, então você precisa de uma etapa extra para transformá-las em objetos. Para qualquer coisa de tamanho considerável, a rota do notebook é mais simples.
O que buscar no log de auditoria
Verifique logins e logins de tokens de endereços IP incomuns, novos tokens de acesso pessoal, alterações em permissões e membros do grupo, e alterações na configuração do workspace ou cluster fora do horário normal. Downloads de notebooks ou resultados em massa também merecem atenção.
Envie, saneie e reveja no LogTotal
- Envio. Abra logtotal.com e arraste o arquivo .jsonl.
- Saneie.
- Revise.
Quando algo dá errado
| Sintoma | Causa provável | Fix |
|---|---|---|
| system.access.audit não encontrado | Esquema do sistema não habilitado | Peça a um administrador de conta para habilitá-lo |
| Permissão negada na tabela do sistema | Nenhuma concessão SELECT | Peça uma concessão a um administrador de metastore |
| Não é possível escrever no volume | WRITE VOLUME ausente | Use um volume no qual você possa escrever |
| Download inclui _SUCCESS e outros arquivos | Arquivos de marcador do Spark | Combine apenas part-*.json |
| Consulta enorme e lenta | Sem filtro de data | Filtre em event_date |
FAQ
O log de auditoria também é entregue para armazenamento em nuvem?
Os workspaces podem entregar logs de auditoria para seu próprio armazenamento também. Se isso estiver configurado, você pode copiar esses arquivos diretamente.
Isso funciona em workspaces sem o Catálogo Unity?
As tabelas do sistema precisam do Catálogo Unity. Workspaces mais antigos dependem da entrega de logs de auditoria para armazenamento, e você escreve para caminhos DBFS em vez de volumes.