• /
  • EnglishEspañolFrançais日本語한국어Português
  • Inicia sesiónComenzar ahora

Te ofrecemos esta traducción automática para facilitar la lectura.

En caso de que haya discrepancias entre la versión en inglés y la versión traducida, se entiende que prevalece la versión en inglés. Visita esta página para obtener más información.

Crea una propuesta

Instalar y configurar NRDOT para MSSQL en Windows RDS: autenticación de dominio

|View as Markdown (English)

Configure el monitoreo de Microsoft SQL Server mediante el NRDOT Collector en entornos de Windows para monitorear instancias de AWS RDS for SQL Server, mediante la autenticación de dominio de Windows. Para monitorear en un entorno autohospedado, consulte la instrumentación autohospedada de Windows.

Instalación guiada

Para instalar esto a través de la UI de New Relic en su lugar, vaya a one.newrelic.com > Integrations & Agents > Microsoft SQL Server (Database 360) . Siga las instrucciones en pantalla para configurar la integración. Esta página solo cubre la instalación manual.

Esta página cubre la autenticación de dominio de Windows. Si el entorno usa un método de autenticación diferente, consulte Autenticación de SQL Server o gMSA.

Requisitos previos

Antes de monitorear Microsoft SQL Server con NRDOT mediante la autenticación de dominio de Windows, asegúrese de que el entorno cumpla con estos requisitos:

  • Una cuenta de New Relic con una clave de licencia válida.

  • Conectividad de red al extremo OTLP de New Relic para su región.

  • Requisitos de SQL Server:

    • SQL Server 2017 o posterior en Amazon RDS.
    • Credenciales de usuario maestro de RDS o credenciales para un inicio de sesión de SQL Server con el rol rds_superuser.
    • Grupo de seguridad de RDS configurado para permitir conexiones en el puerto 1433 o en un puerto personalizado.
    • SQL Server Management Studio (SSMS) o la utilidad sqlcmd.
    • Instancia de RDS asociada al servicio AWS Active Directory.
  • Requisitos de autenticación de dominio de Windows:

    • Un entorno de dominio de Windows con Active Directory.
    • Una instancia EC2 de Windows unida a un dominio.
    • RDS SQL Server configurado para aceptar la autenticación de Windows.
    • Una cuenta de usuario de dominio para que la utilice el NRDOT Collector.
  • La URL del extremo de su servidor SQL de RDS, que se puede encontrar en su consola de AWS RDS en Conectividad y seguridad. Para obtener más información, consulte la documentación de AWS RDS.

Instalar NRDOT Collector

Instale el Collector de NRDOT en una instancia EC2 de Windows unida al dominio o en una máquina local de Windows que sea parte del mismo dominio y pueda conectarse a su instancia de RDS SQL Server.

Importante

Para el monitoreo de RDS, instale el Collector NRDOT en una instancia EC2 en la misma VPC que su instancia de RDS para obtener una conectividad de red óptima y una menor latencia.

  1. Descarga e instala el NRDOT Collector usando PowerShell:
[Net.ServicePointManager]::SecurityProtocol = 'tls12, tls'
$NRDOT_VERSION = (Invoke-RestMethod -Uri "https://api.github.com/repos/newrelic/nrdot-collector-releases/releases/latest").tag_name
$WebClient = New-Object System.Net.WebClient
$WebClient.Headers.Add("User-Agent", "Mozilla/5.0")
$WebClient.DownloadFile("https://github.com/newrelic/nrdot-collector-releases/releases/download/$NRDOT_VERSION/nrdot-collector_${NRDOT_VERSION}_windows_x64.msi", "$env:TEMP\nrdot-collector.msi")
Start-Process msiexec.exe -ArgumentList "/i `"$env:TEMP\nrdot-collector.msi`" /qn /norestart /L*V `"$env:TEMP\nrdot_install.log`"" -Wait
Get-Service nrdot-collector -ErrorAction SilentlyContinue

Crear inicio de sesión de dominio de Windows

Conéctese a la instancia de RDS SQL Server mediante SQL Server Management Studio (SSMS) o sqlcmd con privilegios administrativos.

En SQL Server Management Studio (SSMS), ejecute el siguiente script para crear un inicio de sesión para la cuenta gMSA y otorgar los permisos necesarios. Reemplace todas las apariciones de <YOUR_DOMAIN>\<YOUR_DOMAIN_USER> con el nombre de dominio y cuenta real.

USE [master];
GO
CREATE LOGIN [<YOUR_DOMAIN>\<YOUR_DOMAIN_USER>] FROM WINDOWS;
GO
GRANT VIEW ANY DATABASE TO [<YOUR_DOMAIN>\<YOUR_DOMAIN_USER>];
GRANT VIEW SERVER STATE TO [<YOUR_DOMAIN>\<YOUR_DOMAIN_USER>];
GRANT VIEW ANY DEFINITION TO [<YOUR_DOMAIN>\<YOUR_DOMAIN_USER>];
GO
-- Grant access to all databases (required for query monitoring and tempdb metrics)
DECLARE @name SYSNAME;
DECLARE db_cursor CURSOR READ_ONLY FORWARD_ONLY FOR
SELECT [name] FROM [master].[sys].[databases]
WHERE [name] NOT IN ('master','msdb','model','rdsadmin','distribution')
AND [state] = 0;
OPEN db_cursor;
FETCH NEXT FROM db_cursor INTO @name;
WHILE @@FETCH_STATUS = 0
BEGIN
BEGIN TRY
EXEC('USE [' + @name + '];
IF NOT EXISTS (SELECT 1 FROM sys.database_principals WHERE name = ''<YOUR_DOMAIN>\<YOUR_DOMAIN_USER>'')
BEGIN
CREATE USER [<YOUR_DOMAIN>\<YOUR_DOMAIN_USER>] FOR LOGIN [<YOUR_DOMAIN>\<YOUR_DOMAIN_USER>];
END;
GRANT VIEW DATABASE STATE TO [<YOUR_DOMAIN>\<YOUR_DOMAIN_USER>];');
END TRY
BEGIN CATCH
PRINT 'Error on ' + @name + ': ' + ERROR_MESSAGE();
END CATCH
FETCH NEXT FROM db_cursor INTO @name;
END
CLOSE db_cursor;
DEALLOCATE db_cursor;
GO

Sugerencia

Para administrar información confidencial de forma segura, como las credenciales de la base de datos, almacénelas en herramientas de administración de secretos.

Ejecutar como usuario de dominio

  1. Configure el servicio NRDOT Collector para que se ejecute como su usuario de dominio usando PowerShell. Reemplace YOUR_DOMAIN\YOUR_USER_ACCOUNT con el nombre de su dominio y cuenta:

    # Configure service to use domain account
    # The space after obj= and password= is required syntax for sc.exe
    sc.exe config "nrdot-collector" obj= "YOUR_DOMAIN\YOUR_USER_ACCOUNT" password= "<YOUR_PASSWORD>"
    # Restart the service
    Restart-Service nrdot-collector
  2. Valide la identidad del servicio:

    Get-WmiObject Win32_Service -Filter "Name='nrdot-collector'" | Select Name, State, StartName
    # Expected: StartName = YOUR_DOMAIN\YOUR_USER_ACCOUNT

Configurar el Colector NRDOT

  1. Cree un archivo de configuración llamado mssql-config.yaml en PowerShell como administrador:

    New-Item -Path "C:\Program Files\nrdot-collector\mssql-config.yaml" -ItemType File
  2. Agregue la siguiente configuración al archivo mssql-config.yaml creado en el paso anterior:

Importante

La autenticación de dominio de Windows utiliza seguridad integrada, que usa el mismo enfoque de configuración que la autenticación gMSA. Actualice el valor del servidor datasource a su extremo de RDS. El servicio NRDOT se autenticará mediante la cuenta de dominio que configuró en Crear inicio de sesión de dominio de Windows.

configuración completa

Esta configuración se centra en el monitoreo esencial de la base de datos para el entorno RDS. Para habilitar un monitoreo integral con todas las métricas disponibles, consulte la referencia de configuración.

mssql-config.yaml
1
receivers:
2
nrsqlserver:
3
collection_interval: 15s
4
datasource: "server=mydb-instance.xxxxxxxxxxxx.us-east-1.rds.amazonaws.com;port=1433;integrated security=true;encrypt=true;TrustServerCertificate=true;"
5
6
# Enable comprehensive database metrics
7
metrics:
8
sqlserver.database.count:
9
enabled: true
10
sqlserver.database.io:
11
enabled: true
12
sqlserver.database.latency:
13
enabled: true
14
sqlserver.database.operations:
15
enabled: true
16
sqlserver.database.tempdb.space:
17
enabled: true
18
sqlserver.database.tempdb.version_store.size:
19
enabled: true
20
sqlserver.deadlock.rate:
21
enabled: true
22
sqlserver.os.wait.duration:
23
enabled: true
24
sqlserver.processes.blocked:
25
enabled: true
26
sqlserver.memory.grants.pending.count:
27
enabled: true
28
sqlserver.database.file.size:
29
enabled: true
30
sqlserver.memory.area:
31
enabled: true
32
33
# Enable query sample, top query, query plan, and top procedure log collection
34
events:
35
db.server.query_sample:
36
enabled: true
37
db.server.top_query:
38
enabled: true
39
db.server.query_plan:
40
enabled: true
41
db.server.top_procedure:
42
enabled: true
43
44
# Top query collection configuration
45
top_query_collection:
46
lookback_time: 60s
47
max_query_sample_count: 1000
48
top_query_count: 250
49
collection_interval: 60s
50
collect_full_query_text: true
51
allowed_comment_keys:
52
- nr_service_guid
53
54
# Query sample collection configuration
55
query_sample_collection:
56
max_rows_per_query: 100
57
collect_full_query_text: true
58
allowed_comment_keys:
59
- nr_service_guid
60
61
# Top stored procedure collection configuration
62
top_procedure_collection:
63
max_procedure_sample_count: 1000
64
top_procedure_count: 250
65
collection_interval: 60s
66
67
resource_attributes:
68
db.system.version:
69
enabled: true
70
sqlserver.db.edition:
71
enabled: true
72
73
processors:
74
memory_limiter:
75
check_interval: ${env:NR_MEM_LIMITER_CHECK_INTERVAL:-1s}
76
limit_mib: ${env:NR_MEM_LIMITER_LIMIT_MIB:-200}
77
spike_limit_mib: ${env:NR_MEM_LIMITER_SPIKE_MIB:-50}
78
79
exporters:
80
otlp:
81
endpoint: https://otlp.nr-data.net:4318
82
headers:
83
api-key: YOUR_LICENSE_KEY
84
tls:
85
insecure: false
86
compression: gzip
87
88
sending_queue:
89
enabled: true
90
sizer: bytes
91
queue_size: 100_000_000
92
num_consumers: 10
93
batch:
94
sizer: bytes
95
max_size: 1_000_000
96
min_size: 0
97
flush_timeout: 5s
98
99
service:
100
telemetry:
101
metrics:
102
level: none
103
104
pipelines:
105
metrics:
106
receivers: [nrsqlserver]
107
processors: [memory_limiter]
108
exporters: [otlp]
109
110
logs:
111
receivers: [nrsqlserver]
112
processors: [memory_limiter]
113
exporters: [otlp]

Sugerencia

  • El pipeline logs no transporta registros de depuración del recolector ni logs internos del agente. Transmite telemetría de consultas de SQL Server, incluido el texto de la consulta, los planes de ejecución y los datos de muestra. El receptor nrsqlserver captura esta telemetría a través de los eventos db.server.query_sample, db.server.top_query, db.server.query_plan y db.server.top_procedure emitidos como registros de log de OpenTelemetry.

  • El evento db.server.top_procedure requiere SQL Server 2017 CU3 o posterior, que introdujo la compatibilidad con sys.dm_exec_procedure_stats.total_spills. En versiones anteriores, este evento no emite datos y registra un error. Otros eventos no se ven afectados. El acceso a sys.dm_exec_procedure_stats requiere VIEW SERVER STATE (o VIEW SERVER PERFORMANCE STATE, según la versión de SQL Server). Además, se requiere VIEW ANY DEFINITION para que OBJECT_NAME y OBJECT_SCHEMA_NAME se resuelvan correctamente en todas las bases de datos de usuario, y se necesita CONNECT SQL para configurar las sesiones iniciales. La cuenta que configuró en Crear inicio de sesión de dominio de Windows ya tiene los 3 permisos.

Actualizar el registro del servicio de Windows

  1. Actualice el registro de servicios de Windows para usar el nuevo archivo mssql-config.yaml mediante uno de los siguientes métodos:

    • Para PowerShell: ejecute el siguiente comando como administrador:

      Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\nrdot-collector" -Name "ImagePath" -Value '"C:\Program Files\nrdot-collector\nrdot-collector.exe" --config "C:\Program Files\nrdot-collector\mssql-config.yaml"'
    • Para el símbolo del sistema: si PowerShell no está disponible, use el símbolo del sistema en su lugar y ejecute el siguiente comando como administrador:

    bash
    $
    sc config "nrdot-collector" binPath= "\"C:\Program Files\nrdot-collector\nrdot-collector.exe\" --config \"C:\Program Files\nrdot-collector\mssql-config.yaml\""
  2. Valide la configuración del NRDOT Collector para asegurarse de que tenga el formato correcto y funcione correctamente:

    bash
    $
    & "C:\Program Files\nrdot-collector\nrdot-collector.exe" validate --config="C:\Program Files\nrdot-collector\mssql-config.yaml"

Sugerencia

Para correlacionar el rendimiento de su aplicación con las operaciones de la base de datos, puede configurar la identificación del servicio de base de datos. Para obtener más información, consulte la guía de configuración de identificación del servicio de base de datos.

Reiniciar NRDOT Collector

Después de actualizar su configuración, reinicie el servicio NRDOT Collector:

bash
$
net stop nrdot-collector
$
net start nrdot-collector

Verifique que el servicio se esté ejecutando bajo la cuenta de dominio comprobando los servicios de Windows (services.msc). La columna Log On As debería mostrar su cuenta de dominio. Por ejemplo, CORP\SQLMonitor.

Encuentra y utiliza tus datos

Una vez que sus datos se estén recopilando, puede acceder al monitoreo integral de bases de datos SQL Server a través de la UI de New Relic.

Para encontrar su entidad de base de datos SQL Server en New Relic:

  1. Vaya a https://one.newrelic.com > All Capabilities > Databases.

  2. En el menú desplegable Entity type, seleccione MSSQL instance y luego haga clic en Apply.

  3. Seleccione su base de datos SQL Server de la lista de entidades.

    Después de configurar el monitoreo de SQL Server con NRDOT, puede:

Configurar la correlación de APM y base de datos

Aprenda a correlacionar el rendimiento de la aplicación con las operaciones de la base de datos en New Relic.

Resolución de problemas

Aprenda a solucionar problemas de la configuración de monitoreo de MSSQL Windows en New Relic.

Referencia de métricas

Obtenga información sobre las métricas disponibles recopiladas por NRDOT Collector.

Copyright © 2026 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.