Avance
Todavía estamos trabajando en esta característica, ¡pero nos encantaría que la probaras!
Esta función se proporciona actualmente como parte de una vista previa de conformidad con nuestras políticas de prelanzamiento.
Configure el monitoreo de Microsoft SQL Server utilizando el recolector NRDOT en entornos autohospedados de Windows, incluidos servidores físicos, máquinas virtuales e instalaciones independientes de Windows.
Según su configuración de seguridad de SQL Server, puede elegir entre tres métodos de autenticación para conectar el Collector NRDOT a su instancia de SQL Server:
Requisitos previos
Asegúrese de que su entorno cumpla con nuestra compatibilidad y requisitos previos.
Configurar el colector NRDOT
Instale el NRDOT Collector en su sistema Windows.
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
Configurar el usuario de la base de datos
Ejecute el siguiente script como root user/sysadmin para crear el usuario de monitoreo de newrelic y otorgar permisos globales de lectura.
Para crear un usuario de monitoreo de newrelic, ejecute el siguiente script usando SQL Server Management Studio (SSMS):
USE [master];GOCREATE LOGIN [newrelic] WITH PASSWORD = '<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 FORSELECT [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 = 0BEGIN 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;ENDCLOSE db_cursor;DEALLOCATE db_cursor;GOConfigurar el Colector NRDOT
Seleccione su tipo de configuración según sus necesidades de monitoreo:
Parámetro de configuración
La siguiente tabla describe los parámetros de configuración clave para el receptor nrsqlserver:
| Parámetro | Descripción |
|---|---|
<YOUR_USERNAME> | Ingrese su nombre de usuario de la base de datos para la autenticación |
<YOUR_PASSWORD> | Ingrese su contraseña de la base de datos para la autenticación |
<YOUR_SERVER> | Ingrese el nombre de host o la dirección IP de SQL Server |
<YOUR_PORT> | Ingrese el número de puerto de SQL Server. El valor predeterminado es 1433. |
<YOUR_OTLP_ENDPOINT> | Ingrese el endpoint OTLP de New Relic. Para obtener más información, consulta la documentación de los endpoints OTLP de New Relic. |
<YOUR_LICENSE_KEY> | Ingresa tu clave de licencia de New Relic. |
collection_interval | Intervalo en segundos para recopilar métricas de base de datos. Predeterminado: 15s |
Sugerencia
Nota: si habilita todas las métricas disponibles, aumente el valor de limit_mib (por ejemplo, 1000) para evitar que el limitador de memoria descarte datos.
Sugerencia
Nota: La opción max_concurrent_queries controla cuántas consultas de métricas ejecuta el receptor en paralelo contra SQL Server durante cada ciclo de recopilación.
receivers: nrsqlserver: max_concurrent_queries: 4 # default is 4 if omitted or set to 0Actualizar el registro del servicio de Windows
Actualice el registro de servicios de Windows para usar el nuevo archivo mssql-config.yaml.
Método 1: PowerShell
Ejecute el siguiente comando en PowerShell 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"'Método 2: símbolo del sistema (alternativo)
Si PowerShell no está disponible, puede usar el símbolo del sistema en su lugar:
- Abra el menú Inicio, escriba
cmd - Haz clic derecho en el símbolo del sistema y elige Run as administrator
- Copie y pegue este comando exacto en la ventana negra de CMD y presione Enter:
sc config "nrdot-collector" binPath= "\"C:\Program Files\nrdot-collector\nrdot-collector.exe\" --config \"C:\Program Files\nrdot-collector\mssql-config.yaml\""Validar la configuración del NRDOT Collector
Valide la configuración del NRDOT Collector para asegurarse de que tenga el formato correcto y funcione correctamente.
& "C:\Program Files\nrdot-collector\nrdot-collector.exe" validate --config="C:\Program Files\nrdot-collector\mssql-config.yaml"Reiniciar el colector NRDOT
Después de actualizar su configuración, reinicie el servicio NRDOT Collector:
$net stop nrdot-collector$net start nrdot-collectorSugerencia
Siempre reinicie el servicio de recopilador NRDOT después de realizar cambios de configuración para garantizar que los nuevos ajustes surtan efecto.
(Opcional) Configurar la correlación de APM y base de datos
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. Esta función le permite ver exactamente qué aplicaciones están generando workloads de base de datos específicas. Para obtener más información, consulte configurar la identificación de servicios de base de datos para obtener la correlación entre APM y la base de datos en New Relic.
Importante
Para ver los datos de rendimiento de la base de datos en APM, ambas entidades deben estar en la misma cuenta de New Relic. Si las entidades están en diferentes cuentas de New Relic, debe tener acceso a ambas cuentas para ver los datos.
(Opcional) Configurar la gestión de secretos
La función de gestión de secretos le permite administrar de forma segura información confidencial, como las credenciales de bases de datos. Esto ayuda a mejorar la seguridad de su configuración de monitoreo al evitar la codificación rígida de datos sensibles en los archivos de configuración. Para obtener más información, consulta gestión de secretos.
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:
- Vaya a https://one.newrelic.com > All Capabilities > Databases.
- En el menú desplegable Entity type, seleccione MSSQL instance y luego haga clic en Apply.
- Seleccione su base de datos SQL Server de la lista de entidades.
Requisitos previos
Asegúrese de que su entorno cumpla con nuestra compatibilidad y requisitos previos.
Requisitos adicionales para la autenticación de Windows:
- Entorno de dominio de Windows con Active Directory
- SQL Server configurado para aceptar la autenticación de Windows
- Cuenta de usuario de dominio con los permisos apropiados de SQL Server
- Servicio NRDOT Collector ejecutándose bajo el contexto de la cuenta de dominio
Configurar el colector NRDOT
Instale el NRDOT Collector en su sistema Windows.
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
Verificar la configuración de la autenticación de Windows
Asegúrese de que su SQL Server esté configurado para la autenticación de Windows y verifique la conectividad.
Verifique el nombre de usuario de Windows:
SELECT SYSTEM_USER;Ejecute el siguiente comando para verificar que se otorguen los permisos necesarios (actualice
<account_name>con el nombre de usuario del paso 1):DECLARE @TargetUser SYSNAME = '<account_name>'; -- <-- Set your Windows user here-- 1. Create the checklist of required permissions from your scriptDECLARE @Checklist TABLE (Scope NVARCHAR(50), [Database] SYSNAME, [Permission] NVARCHAR(128));INSERT INTO @Checklist VALUES('Server', 'ALL', 'VIEW SERVER STATE'),('Server', 'ALL', 'VIEW ANY DEFINITION'),('Server', 'ALL', 'VIEW ANY DATABASE');INSERT INTO @ChecklistSELECT 'Database Role', [name], 'db_datareader' FROM sys.databases WHERE [name] NOT IN ('master', 'msdb', 'model', 'rdsadmin', 'distribution') AND [state] = 0UNION ALLSELECT 'Database Explicit', [name], 'VIEW DATABASE STATE' FROM sys.databases WHERE [name] NOT IN ('master', 'msdb', 'model', 'rdsadmin', 'distribution') AND [state] = 0UNION ALLSELECT 'Database Explicit', [name], 'VIEW DEFINITION' FROM sys.databases WHERE [name] NOT IN ('master', 'msdb', 'model', 'rdsadmin', 'distribution') AND [state] = 0;-- 2. Gather existing explicit permissionsWITH ExplicitPerms AS (SELECT 'Server' AS Scope, CAST('ALL' AS NVARCHAR(128)) COLLATE DATABASE_DEFAULT AS [Database], p.permission_name COLLATE DATABASE_DEFAULT AS [Permission]FROM sys.server_permissions p JOIN sys.server_principals l ON p.grantee_principal_id = l.principal_id WHERE l.name = @TargetUserUNION ALLSELECT 'Database Role', d.name COLLATE DATABASE_DEFAULT, r.name COLLATE DATABASE_DEFAULTFROM sys.databases d CROSS APPLY (SELECT dp_role.name FROM sys.database_role_members drm JOIN sys.database_principals dp_role ON drm.role_principal_id = dp_role.principal_id JOIN sys.database_principals dp_user ON drm.member_principal_id = dp_user.principal_id JOIN sys.server_principals sp ON dp_user.sid = sp.sid WHERE sp.name = @TargetUser) r WHERE d.state = 0UNION ALLSELECT 'Database Explicit', d.name COLLATE DATABASE_DEFAULT, p.permission_name COLLATE DATABASE_DEFAULTFROM sys.databases d CROSS APPLY (SELECT db_p.permission_name FROM sys.database_permissions db_p JOIN sys.database_principals dp_user ON db_p.grantee_principal_id = dp_user.principal_id JOIN sys.server_principals sp ON dp_user.sid = sp.sid WHERE sp.name = @TargetUser) p WHERE d.state = 0)-- 3. Output the exact verification matrixSELECTchk.Scope,chk.[Database],chk.[Permission] AS [Required Permission],CASEWHEN exp.[Permission] IS NOT NULL THEN 'GRANTED'WHEN IS_SRVROLEMEMBER('sysadmin', @TargetUser) = 1 THEN 'PASSED (via SysAdmin Role)'ELSE 'MISSING'END AS [Verification Status]FROM @Checklist chkLEFT JOIN ExplicitPerms exp ON chk.Scope = exp.Scope AND chk.[Database] = exp.[Database] AND chk.[Permission] = exp.[Permission]ORDER BY chk.Scope, chk.[Database], chk.[Permission];Si no tiene los permisos necesarios, ejecute las siguientes concesiones (reemplace
<account_name>con su cuenta de Windows):USE [master];GO-- 1. Grant Instance-level permissions to your Windows AccountGRANT VIEW SERVER STATE TO [<account_name>];GRANT VIEW ANY DEFINITION TO [<account_name>];GRANT VIEW ANY DATABASE TO [<account_name>];GO-- 2. Loop through all user databases and grant read/visibility permissionsDECLARE @name SYSNAME;DECLARE @sql NVARCHAR(MAX);DECLARE db_cursor CURSOR READ_ONLY FORWARD_ONLY FORSELECT [name]FROM [master].[sys].[databases]WHERE [name] NOT IN ('master', 'msdb', 'model', 'rdsadmin', 'distribution')AND [state] = 0; -- Only online databasesOPEN db_cursor;FETCH NEXT FROM db_cursor INTO @name;WHILE @@FETCH_STATUS = 0BEGINBEGIN TRYPRINT 'Granting permissions on database: ' + @name;-- Create the database user mapping if it doesn't exist, then grant rolesSET @sql = 'USE [' + @name + '];IF NOT EXISTS (SELECT 1 FROM sys.database_principals WHERE name = ''<account_name>'')BEGINCREATE USER [<account_name>] FOR LOGIN [<account_name>];END;GRANT VIEW DATABASE STATE TO [<account_name>];GRANT VIEW DEFINITION TO [<account_name>];ALTER ROLE db_datareader ADD MEMBER [<account_name>];';EXEC sp_executesql @sql;PRINT 'Success: ' + @name;END TRYBEGIN CATCHPRINT 'Error on ' + @name + ': ' + ERROR_MESSAGE();END CATCHFETCH NEXT FROM db_cursor INTO @name;ENDCLOSE db_cursor;DEALLOCATE db_cursor;GOImportante
Notas importantes:
- Reemplace todas las instancias de
<account_name>con su nombre de cuenta de Windows real (por ejemplo,ComputerName\Username) - Ejecute estos script usando SQL Server Management Studio (SSMS) o la utilidad sqlcmd
- El script de verificación le mostrará exactamente qué permisos faltan
- Reemplace todas las instancias de
Configurar el Colector NRDOT
Elija su configuración de monitoreo según sus necesidades:
Parámetro de configuración
La siguiente tabla describe los parámetros de configuración clave para el receptor nrsqlserver:
| Parámetro | Descripción |
|---|---|
<YOUR_HOSTNAME> | Ingrese el nombre de host o la dirección IP de SQL Server |
<YOUR_PORT> | Ingrese el número de puerto de SQL Server. El valor predeterminado es 1433. |
<YOUR_OTLP_ENDPOINT> | Ingrese el endpoint OTLP de New Relic. Para obtener más información, consulta la documentación de los endpoints OTLP de New Relic. |
<YOUR_LICENSE_KEY> | Ingresa tu clave de licencia de New Relic. |
collection_interval | Intervalo en segundos para recopilar métricas de base de datos. Predeterminado: 15s |
Sugerencia
Nota: si habilita todas las métricas disponibles, aumente el valor de limit_mib (por ejemplo, 1000) para evitar que el limitador de memoria descarte datos.
Sugerencia
Nota: La opción max_concurrent_queries controla cuántas consultas de métricas ejecuta el receptor en paralelo contra SQL Server durante cada ciclo de recopilación.
receivers: nrsqlserver: max_concurrent_queries: 4 # default is 4 if omitted or set to 0Actualizar el registro del servicio de Windows
Actualice el registro de servicios de Windows para usar el nuevo archivo mssql-config.yaml.
Método 1: PowerShell
Ejecute el siguiente comando en PowerShell 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"'Método 2: símbolo del sistema (alternativo)
Si PowerShell no está disponible, puede usar el símbolo del sistema en su lugar:
- Abra el menú Inicio, escriba
cmd - Haz clic derecho en el símbolo del sistema y elige Run as administrator
- Copie y pegue este comando exacto en la ventana negra de CMD y presione Enter:
sc config "nrdot-collector" binPath= "\"C:\Program Files\nrdot-collector\nrdot-collector.exe\" --config \"C:\Program Files\nrdot-collector\mssql-config.yaml\""Validar la configuración del NRDOT Collector
Valide la configuración del NRDOT Collector para asegurarse de que tenga el formato correcto y funcione correctamente.
& "C:\Program Files\nrdot-collector\nrdot-collector.exe" validate --config="C:\Program Files\nrdot-collector\mssql-config.yaml"Reiniciar el colector NRDOT
Después de actualizar su configuración, reinicie el servicio NRDOT Collector:
$net stop nrdot-collector$net start nrdot-collectorSugerencia
Siempre reinicie el servicio de recopilador NRDOT después de realizar cambios de configuración para garantizar que los nuevos ajustes surtan efecto.
(Opcional) Configurar la correlación de APM y base de datos
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. Esta función le permite ver exactamente qué aplicaciones están generando workloads de base de datos específicas. Para obtener más información, consulte configurar la identificación de servicios de base de datos para obtener la correlación entre APM y la base de datos en New Relic.
Importante
Para ver los datos de rendimiento de la base de datos en APM, ambas entidades deben estar en la misma cuenta de New Relic. Si las entidades están en diferentes cuentas de New Relic, debe tener acceso a ambas cuentas para ver los datos.
(Opcional) Configurar la gestión de secretos
La función de gestión de secretos le permite administrar de forma segura información confidencial, como las credenciales de bases de datos. Esto ayuda a mejorar la seguridad de su configuración de monitoreo al evitar la codificación rígida de datos sensibles en los archivos de configuración. Para obtener más información, consulta gestión de secretos.
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:
- Vaya a https://one.newrelic.com > All Capabilities > Databases.
- En el menú desplegable Entity type, seleccione MSSQL instance y luego haga clic en Apply.
- Seleccione su base de datos SQL Server de la lista de entidades.
Requisitos previos
Asegúrese de que su entorno cumpla con nuestra compatibilidad y requisitos previos.
Requisitos adicionales para gMSA (cuenta de servicio administrada de grupo):
- Entorno de Active Directory con soporte para gMSA
- Cuenta gMSA creada y configurada para el acceso a SQL Server
- El host de Windows debe estar unido al dominio y autorizado para usar la cuenta gMSA
Configurar el colector NRDOT
Instale el NRDOT Collector en su sistema Windows.
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
Habilite su servidor Microsoft SQL
Abra SSMS, inicie sesión mediante la autenticación de Windows, abra una nueva consulta y ejecute el siguiente script de administración de base de datos:
USE master;GO
-- Provision an engine login identity for the gMSACREATE LOGIN [<DOMAIN>\<gMSA_NAME>$] FROM WINDOWS;GO
-- Grant monitoring permissionsGRANT VIEW SERVER STATE TO [<DOMAIN>\<gMSA_NAME>$];GRANT VIEW ANY DEFINITION TO [<DOMAIN>\<gMSA_NAME>$];GRANT VIEW ANY DATABASE TO [<DOMAIN>\<gMSA_NAME>$];GO
-- Grant access to all databases (required for query monitoring and tempdb metrics)DECLARE @name SYSNAME;DECLARE db_cursor CURSOR READ_ONLY FORWARD_ONLY FORSELECT [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 = 0BEGIN BEGIN TRY EXEC('USE [' + @name + ']; IF NOT EXISTS (SELECT 1 FROM sys.database_principals WHERE name = ''<DOMAIN>\<gMSA_NAME>$'') BEGIN CREATE USER [<DOMAIN>\<gMSA_NAME>$] FOR LOGIN [<DOMAIN>\<gMSA_NAME>$]; END; GRANT VIEW DATABASE STATE TO [<DOMAIN>\<gMSA_NAME>$];'); END TRY BEGIN CATCH PRINT 'Error on ' + @name + ': ' + ERROR_MESSAGE(); END CATCH FETCH NEXT FROM db_cursor INTO @name;ENDCLOSE db_cursor;DEALLOCATE db_cursor;GOImportante
Reemplace [<DOMAIN>\<gMSA_NAME>$] con su nombre de cuenta gMSA real. El $ al final es obligatorio para las cuentas gMSA.
Configurar el servicio NRDOT Collector para ejecutarse como gMSA
Después de instalar el Collector NRDOT, configure el servicio para que se ejecute como su cuenta gMSA mediante PowerShell:
# Stop the NRDOT Collector serviceStop-Service nrdot-collector
# Configure service to use gMSA account# Use cmd /c to avoid PowerShell treating $ as a variablecmd /c 'sc config nrdot-collector obj= "DOMAIN\gMSA-Account$" password= ""'
# Verify the configurationGet-WmiObject Win32_Service -Filter "Name='nrdot-collector'" | Select Name, StartName
# start the NRDOT Collector serviceStart-Service nrdot-collectorImportante
Reemplace DOMAIN\gMSA-Account$ con su nombre de cuenta gMSA real. Tenga en cuenta que el $ al final es obligatorio para las cuentas gMSA. No se necesita contraseña, ya que gMSA maneja la autenticación automáticamente.
Configurar el Colector NRDOT
Elija su configuración de monitoreo según sus necesidades:
Parámetro de configuración
La siguiente tabla describe los parámetros de configuración clave para el receptor nrsqlserver:
| Parámetro | Descripción |
|---|---|
<YOUR_HOSTNAME> | Ingrese el nombre de host o la dirección IP de SQL Server |
<YOUR_PORT> | Ingrese el número de puerto de SQL Server. El valor predeterminado es 1433. |
<YOUR_OTLP_ENDPOINT> | Ingrese el endpoint OTLP de New Relic. Para obtener más información, consulta la documentación de los endpoints OTLP de New Relic. |
<YOUR_LICENSE_KEY> | Ingresa tu clave de licencia de New Relic. |
collection_interval | Intervalo en segundos para recopilar métricas de base de datos. Predeterminado: 15s |
Sugerencia
Nota: si habilita todas las métricas disponibles, aumente el valor de limit_mib (por ejemplo, 1000) para evitar que el limitador de memoria descarte datos.
Sugerencia
Nota: La opción max_concurrent_queries controla cuántas consultas de métricas ejecuta el receptor en paralelo contra SQL Server durante cada ciclo de recopilación.
receivers: nrsqlserver: max_concurrent_queries: 4 # default is 4 if omitted or set to 0Actualizar el registro del servicio de Windows
Actualice el registro de servicios de Windows para usar el nuevo archivo mssql-config.yaml.
Método 1: PowerShell
Ejecute el siguiente comando en PowerShell 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"'Método 2: símbolo del sistema (alternativo)
Si PowerShell no está disponible, puede usar el símbolo del sistema en su lugar:
- Abra el menú Inicio, escriba
cmd - Haz clic derecho en el símbolo del sistema y elige Run as administrator
- Copie y pegue este comando exacto en la ventana negra de CMD y presione Enter:
sc config "nrdot-collector" binPath= "\"C:\Program Files\nrdot-collector\nrdot-collector.exe\" --config \"C:\Program Files\nrdot-collector\mssql-config.yaml\""Validar la configuración del NRDOT Collector
Valide la configuración del NRDOT Collector para asegurarse de que tenga el formato correcto y funcione correctamente.
& "C:\Program Files\nrdot-collector\nrdot-collector.exe" validate --config="C:\Program Files\nrdot-collector\mssql-config.yaml"Reiniciar el colector NRDOT
Después de actualizar su configuración, reinicie el servicio NRDOT Collector:
$net stop nrdot-collector$net start nrdot-collectorSugerencia
Siempre reinicie el servicio de recopilador NRDOT después de realizar cambios de configuración para garantizar que los nuevos ajustes surtan efecto.
(Opcional) Configurar la correlación de APM y base de datos
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. Esta función le permite ver exactamente qué aplicaciones están generando workloads de base de datos específicas. Para obtener más información, consulte configurar la identificación de servicios de base de datos para obtener la correlación entre APM y la base de datos en New Relic.
Importante
Para ver los datos de rendimiento de la base de datos en APM, ambas entidades deben estar en la misma cuenta de New Relic. Si las entidades están en diferentes cuentas de New Relic, debe tener acceso a ambas cuentas para ver los datos.
(Opcional) Configurar la gestión de secretos
La función de gestión de secretos le permite administrar de forma segura información confidencial, como las credenciales de bases de datos. Esto ayuda a mejorar la seguridad de su configuración de monitoreo al evitar la codificación rígida de datos sensibles en los archivos de configuración. Para obtener más información, consulta gestión de secretos.
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:
- Vaya a https://one.newrelic.com > All Capabilities > Databases.
- En el menú desplegable Entity type, seleccione MSSQL instance y luego haga clic en Apply.
- Seleccione su base de datos SQL Server de la lista de entidades.
Próximos pasos
Después de configurar el monitoreo autohospedado de Windows: