Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
El registro y la supervisión eficaces le ayudan a detectar y responder a eventos de seguridad en Databricks Apps. Las aplicaciones generan registros de nivel de aplicación y registros de auditoría de plataforma, que puede usar para el diagnóstico, el seguimiento del rendimiento y el análisis de seguridad.
Registros de aplicación
Para que los registros estén disponibles en la interfaz de usuario de Databricks Apps o a través de la URL de la aplicación, la aplicación debe escribir la salida en stdout y stderr.
Acceda a los registros de aplicaciones de las maneras siguientes:
- Interfaz de usuario de Aplicaciones: Haz clic en la pestaña Registros de la aplicación para ver la salida estándar y de error. Para obtener más información, consulte Visualización de los detalles de una aplicación de Databricks.
-
Dirección URL directa: anexe
/logza la dirección URL de la aplicación. Por ejemplo, si la dirección URL de la aplicación eshttps://my-app-1234567890.my-instance.databricksapps.com, los registros están disponibles enhttps://my-app-1234567890.my-instance.databricksapps.com/logz.
Nota:
Azure Databricks no conserva los registros cuando se cierra el proceso de la aplicación. Para el registro persistente, integre con servicios de registro externos o escriba registros en volúmenes o tablas del catálogo de Unity.
Las entradas de registro se agrupan por fuente. En la pestaña de Registros , usa el filtro de Fuente para mostrar u ocultar entradas de cada fuente:
- App: Salida estándar de tu app.
- Sistema: Mensajes de la plataforma sobre el ciclo de vida de la app, como el despliegue y el arranque.
- Build: Salida de la instalación de dependencias y la compilación de tu aplicación.
- HTTP: Registros de acceso HTTP para las solicitudes atendidas por tu app. Consulta los registros de acceso HTTP.
Registros de acceso HTTP
Databricks Apps registra una entrada de registro de acceso HTTP para cada solicitud que atiende tu app. Estas entradas aparecen bajo el origen HTTP en la pestaña Registros y en la URL /logz, junto con la salida estándar y de error de su aplicación.
Los registros de acceso capturan tanto solicitudes autenticadas como no autenticadas, incluyendo las que son rechazadas antes de llegar a tu aplicación, como las que no logran autorización. Como las solicitudes rechazadas se registran, puedes auditar intentos fallidos de autorización como eventos de seguridad.
Los siguientes límites se aplican a lo que se registra:
- Para proteger los datos sensibles, las cadenas de consulta se eliminan de la ruta de la solicitud, de modo que los tokens u otros valores sensibles que se transmiten como parámetros de consulta no se registran.
- Para reducir el ruido, se excluyen las solicitudes internas de la plataforma, como los callbacks de autenticación y las comprobaciones de estado.
Bajo una carga pesada, Azure Databricks podría perder algunas entradas de registro de acceso. Cuando se eliminan entradas, el registro incluye un mensaje en línea que informa del número de entradas eliminadas.
Formato de entrada de registro: Cada entrada utiliza el Apache Combined Log Format. A continuación se muestra una entrada de ejemplo:
203.0.113.10 - jane.doe@example.com [23/Jul/2026:15:04:05 +0000] "GET /api/data HTTP/1.1" 200 1234 "https://apps.example.com/" "Mozilla/5.0"
Cada entrada contiene los siguientes campos, en orden. Los campos vacíos aparecen como un guion (-).
| Campo | Example | Descripción |
|---|---|---|
| IP de cliente | 203.0.113.10 |
Dirección IP del cliente que realizó la solicitud. |
| Usuario | jane.doe@example.com |
Usuario autenticado, o - por una solicitud no autenticada. |
| Marca de tiempo | [23/Jul/2026:15:04:05 +0000] |
Fecha y hora en que se recibió la solicitud. |
| Línea de solicitud | "GET /api/data HTTP/1.1" |
Método HTTP, ruta de solicitud con la cadena de consulta eliminada y protocolo. |
| Código de estado | 200 |
Código de estado de respuesta HTTP. |
| Tamaño de respuesta | 1234 |
Tamaño del cuerpo de respuesta, en bytes. |
| Referencia | "https://apps.example.com/" |
Valor del Referer encabezado de la solicitud. |
| Agente de usuario | "Mozilla/5.0" |
Valor del User-Agent encabezado de la solicitud. |
Integración con servicios de registro externo
Para las funcionalidades de registro persistente y supervisión avanzada, use lo siguiente:
Telemetría de aplicaciones (Beta): Recoge trazas, registros y métricas directamente en tablas de catálogo de Unity. Consulte Configuración de telemetría para Aplicaciones de Databricks.
Herramientas de Monitorización del Rendimiento de Aplicaciones (APM): Utiliza New Relic, Datadog o herramientas similares de monitorización del rendimiento de aplicaciones para recopilar y analizar registros, métricas y rastros.
Persistencia de registros personalizados: Escribe registros periódicamente en volúmenes o tablas del Catálogo Unity para almacenamiento y análisis a largo plazo.
Consulte Procedimientos de registro recomendados para obtener instrucciones sobre el formato de registro y el contenido.
Prácticas de registro recomendadas
Para integrarse con sistemas de supervisión externos y alertas en tiempo real:
- Dar formato a los registros en FORMATO JSON u otros formatos analizables por máquina.
- Registrar eventos relevantes para la seguridad con contexto:
- Eventos de autenticación y autorización, incluida la identidad y el resultado del usuario
- Detalles de acceso a datos, como los nombres de catálogo, esquema y tabla
- Errores relacionados con la seguridad, como tokens no válidos, denegaciones de permisos y actividad sospechosa
- Reenvíe los registros a sistemas externos. Integración con APM o herramientas de agregación de registros para admitir alertas en tiempo real, respuesta a incidentes de seguridad, análisis de uso y rendimiento, y correlación con registros del sistema de Azure Databricks.
Consideraciones de seguridad para el registro
Las aplicaciones de Databricks están diseñadas con los siguientes controles integrados para evitar la filtración de datos:
- Acceso solo por API: las aplicaciones solo pueden acceder a los recursos de Azure Databricks a través de las API públicas de Azure Databricks. Estas API son auditables a través de los registros de tabla del sistema.
- Comunicación cifrada: todo el tráfico de API se cifra mediante TLS 1.2 o superior para garantizar la transferencia de datos segura.
Supervisión de seguridad con tablas del sistema
Azure Databricks captura los registros de auditoría de las actividades relacionadas con la aplicación en la tabla system.access.audit. Puede consultar estos registros para realizar un seguimiento de las acciones del usuario, los cambios en la configuración de la aplicación y los eventos de seguridad.
Use las siguientes consultas para supervisar las actividades relacionadas con la seguridad y detectar posibles problemas con las aplicaciones.
Supervisión de los cambios de permisos de aplicación
Use esta consulta para detectar modificaciones de permisos de aplicación:
-- Monitor all app permission modifications in the last 30 days
WITH permission_changes AS (
SELECT
event_date,
workspace_id,
request_params.request_object_id AS app_name,
user_identity.email AS modified_by,
explode(from_json(
request_params.access_control_list,
'array<struct<user_name:string,group_name:string,permission_level:string>>'
)) AS permission
FROM system.access.audit
WHERE action_name = 'changeAppsAcl'
AND event_date >= current_date() - 30
)
SELECT
event_date,
app_name,
modified_by,
permission.user_name,
permission.group_name,
permission.permission_level
FROM permission_changes
ORDER BY event_date DESC
Identificación de aplicaciones con ámbitos de API de usuario
Use esta consulta para buscar aplicaciones con ámbitos de API de usuario configurados:
-- Find apps created or updated in the last 30 days with user API scopes configured
SELECT
event_date,
get_json_object(request_params.app, '$.name') AS app_name,
user_identity.email AS creator_email,
get_json_object(request_params.app, '$.user_api_scopes') AS user_api_scopes
FROM system.access.audit
WHERE
action_name IN ('createApp', 'updateApp')
AND get_json_object(request_params.app, '$.user_api_scopes') IS NOT NULL
AND event_date >= current_date() - INTERVAL 30 DAYS
Seguimiento de acciones de autorización de usuario
Use esta consulta para enumerar las acciones de aplicación realizadas con autorización de usuario:
-- List app actions performed on behalf of users in the last 30 days
WITH obo_events AS (
SELECT
event_date,
workspace_id,
audit_level,
identity_metadata.acting_resource AS app_id, -- OAuth App ID or name
user_identity.email AS user_email, -- Logged-in user
service_name,
action_name
FROM system.access.audit
WHERE event_date >= current_date() - 30
AND identity_metadata.acting_resource IS NOT NULL
)
SELECT
event_date,
app_id,
user_email,
service_name,
action_name,
audit_level,
COUNT(*) AS event_count
FROM obo_events
GROUP BY
event_date, app_id, user_email, service_name, action_name, audit_level
ORDER BY event_date DESC;
Supervisión operativa
Use tablas del sistema para supervisar los aspectos operativos de las aplicaciones, como el costo y el uso de recursos.
Supervisión de los costos de la aplicación
Supervise los costos de Databricks Apps mediante la system.billing.usage tabla . Use la consulta siguiente para obtener información precisa sobre los costos de las aplicaciones al día o al mes:
-- Get Databricks Apps cost by app per day for the last 30 days
SELECT
us.usage_date,
us.usage_metadata.app_id,
us.usage_metadata.app_name,
SUM(us.usage_quantity) AS dbus,
SUM(us.usage_quantity * lp.pricing.effective_list.default) AS dollars
FROM
system.billing.usage us
LEFT JOIN system.billing.list_prices lp
ON lp.sku_name = us.sku_name
AND us.usage_start_time BETWEEN lp.price_start_time AND COALESCE(lp.price_end_time, NOW())
WHERE
billing_origin_product = 'APPS'
AND us.usage_unit = 'DBU'
AND us.usage_date >= DATE_SUB(NOW(), 30)
GROUP BY ALL
Databricks Apps admite directivas de uso para ayudar a realizar un seguimiento de los costos. Para obtener información sobre cómo configurar directivas de uso, consulte Uso de atributos con directivas de uso sin servidor.
Monitorizar los insights de aplicación
Importante
La pestaña Insights está en Beta.
La pestaña Insights de la página de detalles de la aplicación muestra la participación del usuario y la disponibilidad de la aplicación.
Seguimiento del usuario
La tabla Visores realiza un seguimiento de qué usuarios acceden a la aplicación.
Azure Databricks registra un evento de vista cuando un usuario accede a la aplicación a través de la dirección URL de la aplicación o a través del acceso a la API. Almacena los datos como únicos por usuario, por aplicación. Las visitas posteriores realizadas por el mismo usuario sobrescriben su registro anterior en lugar de crear una nueva fila.
La última marca de tiempo vista sigue un ciclo de actualización de sesión de OAuth de 30 minutos. Varias visitas dentro de la ventana de sesión conservan la hora de visita inicial, pero el primer acceso después de que la sesión expire sobrescribe la marca de tiempo con la nueva hora de visita.
Nota:
En Beta, la hora de la última vista muestra solo la hora universal coordinada (UTC).
Tiempo de actividad y estado de salud
Supervise las siguientes señales de estado para solucionar problemas de disponibilidad de la aplicación.
- App service health: indica si la infraestructura de Azure Databricks que admite la aplicación está disponible. Si no está disponible, hay un problema de nivel de servicio con la plataforma. Póngase en contacto con el soporte técnico de Databricks.
- Disponibilidad de la aplicación: indica si la aplicación específica atiende solicitudes. Si no está disponible, compruebe si hay errores de implementación o bloqueos en el código.