> For the complete documentation index, see [llms.txt](https://docs.devolutions.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.devolutions.net/server/es/knowledge-base/how-to-articles/send-devolutions-server-logs-to-azure-log-analytics.md).

# Enviar los registros de Devolutions Server a Azure Log Analytics

Configure Devolutions Server para reenviar los registros de actividad y de administración a Azure Log Analytics mediante un registro de aplicación, un DCE y una transformación de DCR.

Esta guía proporciona instrucciones para crear y configurar todos los componentes necesarios para enviar los registros de Devolutions Server a Azure Log Analytics.

{% hint style="info" %}
Devolutions Server solo reenvía los registros de conexión de **Actividad** y **Administración** a Azure Log Analytics, no todos los tipos de registro. Si tiene requisitos de auditoría, confirme que este subconjunto cubre sus necesidades antes de confiar en él como su único registro de auditoría.
{% endhint %}

### Crear un nuevo registro de aplicación

1. Abra el portal de Azure y navegue a ***App Registrations***.
2. Haga clic en ***New Registration***.
3. Asigne un nombre a su aplicación y haga clic en ***Register*** (no es necesaria ninguna URL de redirección).
4. En ***Supported account types***, seleccione ***Accounts in this organizational directory only***.

### Obtener el ID de cliente y el ID de inquilino

Tras el registro, localice el ***Client ID*** y el ***Tenant ID*** en la sección ***Descripción general***. Serán necesarios más adelante.

### Crear un secreto de cliente

1. Navegue a ***Certificates & secrets***.
2. Haga clic en ***New client secret*** para crear un secreto.
3. Guarde el valor del secreto de forma segura, ya que se utilizará más adelante en Devolutions Server.
4. Una vez que el secreto caduque, debe renovarlo y actualizarlo en Devolutions Server; de lo contrario, la ingesta de registros se detendrá.

### Configurar un Data Collection Endpoint (DCE)

Cree un Data Collection Endpoint (DCE) en Azure para recibir solicitudes de Devolutions Server.

{% hint style="info" %}
En Devolutions Server, esto corresponde al campo ***Azure Endpoint***.
{% endhint %}

### Crear una tabla de Azure Log Analytics

Crear la tabla a partir del flujo genérico de datos de ejemplo de Microsoft generará columnas planas que no coinciden con esta estructura, y todos los campos más allá de `ReportType` y `MachineName` llegarán vacíos. En su lugar, cree la tabla manualmente con el esquema siguiente. Cree la tabla con las siguientes columnas (todas de tipo `string` salvo indicación contraria):

| Columna            | Tipo     |
| ------------------ | -------- |
| TimeGenerated      | datetime |
| ReportType         | string   |
| MachineName        | string   |
| User               | string   |
| ConnectionName     | string   |
| ConnectionId       | string   |
| VaultName          | string   |
| VaultId            | string   |
| Message            | string   |
| LogDate            | string   |
| ConnectionType     | string   |
| ConnectionUsername | string   |
| Machine            | string   |
| Ticket             | string   |
| ActiveTime         | string   |
| OnOpenComment      | string   |
| OnCloseComment     | string   |

### Obtener el ID inmutable y el nombre del flujo

Una vez creada la tabla de ***Log analytics***, localice el ***Immutable ID*** y el ***Stream Name*** para la transmisión de registros.

### Configurar la transformación del DCR

La transformación de la Data Collection Rule (`transformKql`) es lo que asigna el JSON CLEF entrante al esquema de tabla anterior. Sin ella, los campos no se rellenarán aunque la tabla y los permisos sean correctos. Establezca la transformación en:

```kql
| extend TimeGenerated = todatetime(['@t'])
| extend p = parse_json(tostring(Properties))
| project TimeGenerated, ReportType, MachineName,
    User = tostring(p.User),
    ConnectionName = tostring(p.ConnectionName),
    ConnectionId = tostring(p.ConnectionId),
    VaultName = tostring(p.VaultName),
    VaultId = tostring(p.VaultId),
    Message = tostring(p.Message),
    LogDate = tostring(p.LogDate),
    ConnectionType = tostring(p.ConnectionType),
    ConnectionUsername = tostring(p.ConnectionUsername),
    Machine = tostring(p.Machine),
    Ticket = tostring(p['Ticket#']),
    ActiveTime = tostring(p.ActiveTime),
    OnOpenComment = tostring(p.OnOpenComment),
    OnCloseComment = tostring(p.OnCloseComment)
```

### **Asignar permisos a la Data Collection Rule (DCR)**

1. Desde el DCR en Azure, vaya a ***Access Control (IAM)*** – ***Add role assignment***.
2. Seleccione ***Monitoring Metrics Publisher*** y luego ***Next***.
3. Marque ***User, group, or service principal*** y haga clic en ***Select members***.
4. Haga clic en la aplicación creada durante el registro. Haga clic en ***Review + assign*** para asegurarse de que todo está en orden antes de guardar.

{% hint style="info" %}
Consulte la [documentación de Microsoft](https://learn.microsoft.com/en-us/azure/azure-monitor/logs/tutorial-logs-ingestion-api?utm_source=chatgpt.com\&tabs=dcr#assign-permissions-to-a-dcr) para obtener más detalles sobre la Data Collection Rule (DCR).
{% endhint %}

### Probar y activar el registro

Haga clic en ***Test Connection*** para verificar sus credenciales, a continuación genere una actividad de conexión en Devolutions Server y confirme que la fila correspondiente aparece en Log Analytics con sus campos rellenados.

{% hint style="warning" %}
***Test Connection*** solo valida las credenciales utilizadas para llegar al endpoint, no envía una entrada de registro real. Un resultado verde confirma la conectividad, no que la ingesta o la transformación estén configuradas correctamente. Verifique siempre después con un evento real.
{% endhint %}

### Configuración de Devolutions Server

1. Abra el servicio web de Devolutions Server.
2. Vaya a ***Administración - Configuración del servidor - Registro***.
3. Introduzca la información.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.devolutions.net/server/es/knowledge-base/how-to-articles/send-devolutions-server-logs-to-azure-log-analytics.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
