

# Visualización de registros de auditoría
<a name="Appendix.SQLServer.Options.Audit.AuditRecords"></a>

Sus registros de auditoría se almacenan en `D:\rdsdbdata\SQLAudit`.

Una vez que SQL Server termina de escribir en un archivo de registro de auditoría (cuando el archivo alcanza su límite de tamaño), Amazon RDS lo carga en su bucket de S3. Si se habilita la retención, Amazon RDS mueve el archivo a la carpeta de retención: `D:\rdsdbdata\SQLAudit\transmitted`. 

Para obtener información acerca de cómo configurar la retención, consulte [Incorporación de SQL Server Audit a las opciones de instancia de base de datos](Appendix.SQLServer.Options.Audit.Adding.md).

Los registros de auditoría se conservan en la instancia de base de datos hasta que se carga el archivo de registro de auditoría. Puede ver los registros de auditoría ejecutando el siguiente comando.

```
SELECT   * 
	FROM     msdb.dbo.rds_fn_get_audit_file
	             ('D:\rdsdbdata\SQLAudit\*.sqlaudit'
	             , default
	             , default )
```

Puede usar el mismo comando para ver los registros de auditoría en su carpeta de retención cambiando el filtro a `D:\rdsdbdata\SQLAudit\transmitted\*.sqlaudit`.

```
SELECT   * 
	FROM     msdb.dbo.rds_fn_get_audit_file
	             ('D:\rdsdbdata\SQLAudit\transmitted\*.sqlaudit'
	             , default
	             , default )
```

## Visualización de registros de auditoría en CloudWatch
<a name="Appendix.SQLServer.Options.Audit.AuditRecords.CloudWatch"></a>

Si elige cargar los registros de auditoría en CloudWatch, puede acceder a los registros (en formato JSON) siguiendo estos pasos.

**Visualización de los registros de auditoría en CloudWatch**

1. Abra la consola de CloudWatch en [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/).

1. En el panel de navegación izquierdo, elija **Registros**, **Administración de registros**.

1. Ingrese el nombre de la instancia de base de datos en el cuadro de búsqueda de **grupos de registros**.

1. Elija el grupo de registro adecuado.

1. En la pestaña **Flujos de registro**, elija el flujo de registro.

También puede utilizar la CLI de AWS para consultar el flujo de registro. En el ejemplo siguiente, se extraen los eventos de registro de auditoría y se exportan a un archivo CSV.

```
# Parameters
# -----------
LOG_GROUP="/aws/rds/instance/<your-db-instance-id>/sqlaudit"
START_DATE="2026-06-18"
END_DATE="2026-06-19"
OUTPUT_FILE="sql_audit_extract.csv"

# Convert dates to epoch milliseconds
# -----------------------------------
START_TIME=$(date -d "${START_DATE}" +%s)000
END_TIME=$(date -d "${END_DATE}" +%s)000

# Fetch log events
# ----------------
# Note: --no-paginate returns all results in a single call.
# For large result sets, consider using --page-size or manual pagination.
RESPONSE=$(aws logs filter-log-events \
  --log-group-name "${LOG_GROUP}" \
  --start-time "${START_TIME}" \
  --end-time "${END_TIME}" \
  --output json \
  --no-paginate)

# Parse and export to CSV
# Extract the 'message' field from each event (JSON formatted messages),
# then convert to CSV using jq.
# Get CSV headers from the first record
# -------------------------------------
HEADERS=$(echo "${RESPONSE}" | jq -r '
  [.events[0].message | fromjson | keys[]] | @csv
')

# Write headers to output file
# ----------------------------
echo "${HEADERS}" > "${OUTPUT_FILE}"

# Write all records to output file
# --------------------------------
echo "${RESPONSE}" | jq -r '
  .events[].message | fromjson | [.[]] | @csv
' >> "${OUTPUT_FILE}"

# Script execution summary
# -------------------------
RECORD_COUNT=$(echo "${RESPONSE}" | jq '.events | length')
echo "Exported ${RECORD_COUNT} records to ${OUTPUT_FILE}"
```