• /
  • 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 SQL

|View as Markdown (English)

Configure el monitoreo de Microsoft SQL Server mediante el NRDOT Collector en entornos Windows para monitorear instancias de AWS RDS para SQL Server, usando la autenticación de SQL Server. 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 SQL Server. Si su entorno utiliza un método de autenticación diferente, consulte Autenticación de dominio de Windows o gMSA.

Requisitos previos

Antes de monitorear Microsoft SQL Server con NRDOT, 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 AWS RDS SQL Server:

    • Autenticación de SQL Server habilitada en la instancia de 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.
  • 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 NRDOT en una instancia EC2 de Windows o en una máquina local de Windows que 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.

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 usuario de monitoreo

Ejecute este script como usuario administrador para crear el usuario de monitoreo newrelic y otorgar los permisos necesarios para recopilar métricas de SQL Server.

Sugerencia

Ejecute este script utilizando el nombre de usuario maestro de RDS o un usuario con el rol rds_superuser. El script excluye automáticamente la base de datos rdsadmin, que está reservada por AWS.

En su SQL Server Management Studio (SSMS), ejecute el siguiente script para crear el usuario de monitoreo newrelic. Reemplace <YOUR_PASSWORD> con su contraseña deseada:

USE [master];
GO
CREATE LOGIN [newrelic] WITH PASSWORD = '<YOUR_PASSWORD>';
GO
GRANT VIEW SERVER STATE TO [newrelic];
GRANT VIEW ANY DEFINITION TO [newrelic];
GRANT VIEW ANY DATABASE TO [newrelic];
GO
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 = ''newrelic'')
BEGIN
CREATE USER [newrelic] FOR LOGIN [newrelic];
END;
GRANT VIEW DATABASE STATE TO [newrelic];');
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.

Configurar el NRDOT Collector

Cree un nuevo archivo de configuración de NRDOT Collector para la configuración de RDS SQL Server.

  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
  1. Agregue la siguiente configuración al archivo mssql-config.yaml creado en el paso anterior:

    configuración completa

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

Sugerencia

Siempre reinicie el servicio NRDOT Collector después de realizar cambios de configuración para garantizar que los nuevos ajustes surtan efecto.

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.