• /
  • EnglishEspañolFrançais日本語한국어Português
  • Se connecterDémarrer

Cette traduction automatique est fournie pour votre commodité.

En cas d'incohérence entre la version anglaise et la version traduite, la version anglaise prévaudra. Veuillez visiter cette page pour plus d'informations.

Créer un problème

Installer & configurer NRDOT pour MSSQL sur Windows auto-hébergé : authentification SQL

|View as Markdown (English)

Configurez le monitoring de Microsoft SQL Server à l’aide du NRDOT Collector sur les environnements Windows auto-hébergés, y compris les serveurs physiques, les machines virtuelles et les installations Windows autonomes, en utilisant l’authentification SQL Server. Pour monitorer dans un environnement Windows RDS, reportez-vous à l’ instrumentation Windows RDS.

Installation guidée

Pour installer ceci via l’UI de New Relic à la place, accédez à one.newrelic.com > Integrations & Agents > Microsoft SQL Server (Database 360) . Suivez les instructions à l’écran pour configurer l’intégration. Cette page couvre uniquement l’installation manuelle.

Cette page traite de l’authentification SQL Server. Si votre environnement utilise une méthode d’authentification différente, consultez Authentification de domaine Windows ou gMSA.

Prérequis

Avant de monitorer votre Microsoft SQL Server avec NRDOT, assurez-vous que votre environnement répond à ces exigences :

  • Un compte New Relic avec une clé de licence valide.

  • Connectivité réseau vers le point de terminaison OTLP New Relic pour votre région.

  • Prérequis SQL Server :

    • SQL Server 2017 ou version ultérieure.
    • Accès administrateur à SQL Server (rôle sysadmin ou équivalent).
    • Connectivité réseau entre le collecteur et SQL Server sur le port 1433 ou un port personnalisé.
    • SQL Server Management Studio (SSMS) ou l'utilitaire sqlcmd.
    • Authentification de domaine Windows ou SQL Server.

Installer le collecteur NRDOT

Téléchargez et installez le NRDOT Collector à l'aide de 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

Créer un utilisateur de monitoring

Exécutez ce script en tant qu’utilisateur root user/sysadmin pour créer l’utilisateur de monitoring newrelic et accorder les autorisations nécessaires pour la collecte des métriques SQL Server.

Dans votre SQL Server Management Studio (SSMS), exécutez le script suivant pour créer l’utilisateur de monitoring newrelic. Remplacez <YOUR_PASSWORD> par le mot de passe souhaité :

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

Conseil

Pour gérer en toute sécurité les informations sensibles, telles que les identifiants de base de données, stockez-les dans des outils de gestion des secrets.

Configurer le collecteur NRDOT

  1. Créez un fichier de configuration nommé mssql-config.yaml dans PowerShell en tant qu’administrateur :
New-Item -Path "C:\Program Files\nrdot-collector\mssql-config.yaml" -ItemType File
  1. Ajoutez vos valeurs spécifiques à l’environnement à la configuration suivante, et copiez-la dans le fichier mssql-config.yaml créé à l’étape précédente :

configuration complète

Cette configuration se concentre sur le monitoring essentiel de la base de données pour votre environnement SQL Server. Pour activer un monitoring complet avec toutes les métriques disponibles, reportez-vous à la référence de configuration.

mssql-config.yaml
1
receivers:
2
nrsqlserver:
3
collection_interval: 15s
4
username: newrelic
5
password: YOUR_PASSWORD
6
server: sqlserver.example.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]

Conseil

  • Le pipeline logs ne transporte ni les logs de débogage du collecteur, ni les logs internes de l’agent. Il transmet la télémétrie des requêtes SQL Server, y compris le texte des requêtes, les plans d’exécution, et les données d’exemple. Le Récepteur nrsqlserver capture cette télémétrie via les événements db.server.query_sample, db.server.top_query, db.server.query_plan, et db.server.top_procedure émis sous forme d’enregistrements de log OpenTelemetry.

  • L’événement db.server.top_procedure nécessite SQL Server 2017 CU3 ou une version ultérieure, qui a introduit la prise en charge de sys.dm_exec_procedure_stats.total_spills. Sur les versions antérieures, cet événement n’émet pas de données et log une erreur. Les autres événements ne sont pas affectés. L’accès à sys.dm_exec_procedure_stats nécessite VIEW SERVER STATE (ou VIEW SERVER PERFORMANCE STATE, selon la version de SQL Server). De plus, VIEW ANY DEFINITION est requis pour que OBJECT_NAME et OBJECT_SCHEMA_NAME se résolvent correctement sur toutes les bases de données utilisateur, et CONNECT SQL est nécessaire pour configurer les sessions initiales. L’utilisateur de monitoring créé dans Créer un utilisateur de monitoring inclut les 3 autorisations.

Mettre à jour le registre des services Windows

  1. Mettez à jour le registre des services Windows pour utiliser le nouveau fichier mssql-config.yaml à l'aide de l'une des méthodes suivantes :

    • Pour PowerShell : Exécutez la commande suivante en tant qu'administrateur :

      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"'
    • Pour l’invite de commande : si PowerShell n’est pas disponible, utilisez plutôt l’invite de commande et exécutez la commande suivante en tant qu’administrateur :

      bash
      $
      sc config "nrdot-collector" binPath= "\"C:\Program Files\nrdot-collector\nrdot-collector.exe\" --config \"C:\Program Files\nrdot-collector\mssql-config.yaml\""
  2. Validez la configuration du Collector NRDOT pour vous assurer qu’elle est correctement formatée et qu’elle fonctionnera correctement.

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

    Conseil

    Pour corréler les performances de votre application avec les opérations de base de données, vous pouvez configurer l’identification du service de bases de données. Pour plus d’informations, reportez-vous à configurer l’identification du service de bases de données.

Redémarrer NRDOT Collector

Après avoir mis à jour votre configuration, redémarrez le service NRDOT Collector :

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

Conseil

Redémarrez toujours le service NRDOT Collector après avoir modifié la configuration pour vous assurer que les nouveaux paramètres soient pris en compte.

Trouvez et utilisez vos données

Une fois vos données collectées, vous pouvez accéder à un monitoring complet de la base de données SQL Server via l’UI de New Relic.

Pour trouver votre entité de base de données SQL Server dans New Relic :

  1. Allez à https://one.newrelic.com > All Capabilities > Databases.

  2. Dans la liste déroulante Entity type, sélectionnez MSSQL instance, puis cliquez sur Apply.

  3. Sélectionnez votre base de données SQL Server dans la liste des entités.

    Après avoir configuré le monitoring SQL Server avec NRDOT, vous pouvez :

Configurer la corrélation APM-base de données

Découvrez comment corréler les performances des applications avec les opérations de base de données dans New Relic.

Dépannage

Découvrez comment dépanner votre configuration de monitoring MSSQL Windows dans New Relic.

Référence des métriques

Découvrez les métriques disponibles collectées par le collecteur NRDOT.

Droits d'auteur © 2026 New Relic Inc.

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