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

Configuration multi-Récepteur pour MSSQL avec NRDOT

|View as Markdown (English)

Vous pouvez configurer le NRDOT Collector pour monitorer plusieurs instances MSSQL à partir d'un seul collecteur. Cela est utile si vous avez plusieurs instances MSSQL en cours d'exécution sur différents hôtes et que vous souhaitez collecter des métriques à partir de toutes ces instances à l'aide d'une seule instance NRDOT Collector.

Prérequis

Ajouter une configuration multi-récepteur

L’exemple suivant montre comment configurer le Collector NRDOT pour monitorer deux instances MSSQL à l’aide d’une configuration multi-Récepteurs. La première instance, nrsqlserver/1, contient la configuration complète et sert d’ancrage ; la seconde instance, nrsqlserver/2, hérite de chaque paramètre partagé via la clé de fusion YAML, et remplace uniquement ses propres détails de connexion. Vous pouvez ajouter d’autres Récepteurs selon les besoins pour des instances supplémentaires.

receivers:
# Base SQL Server instance: defines the anchor all others inherit from.
nrsqlserver/1: &nrsqlserver-common
username: "<YOUR_DB1_USERNAME>"
password: "<YOUR_DB1_PASSWORD>"
server: "<YOUR_SERVER_1>"
port: 1433
collection_interval: 15s
metrics:
sqlserver.database.count:
enabled: true
sqlserver.database.io:
enabled: true
sqlserver.database.latency:
enabled: true
sqlserver.database.operations:
enabled: true
sqlserver.database.tempdb.space:
enabled: true
sqlserver.database.tempdb.version_store.size:
enabled: true
sqlserver.deadlock.rate:
enabled: true
sqlserver.os.wait.duration:
enabled: true
sqlserver.processes.blocked:
enabled: true
sqlserver.memory.grants.pending.count:
enabled: true
sqlserver.database.file.size:
enabled: true
sqlserver.memory.area:
enabled: true
events:
db.server.query_sample:
enabled: true
db.server.top_query:
enabled: true
db.server.query_plan:
enabled: true
db.server.top_procedure:
enabled: true
top_query_collection:
lookback_time: 60s
max_query_sample_count: 1000
top_query_count: 250
collection_interval: 60s
collect_full_query_text: true
allowed_comment_keys:
- nr_service_guid
query_sample_collection:
max_rows_per_query: 100
collect_full_query_text: true
allowed_comment_keys:
- nr_service_guid
top_procedure_collection:
max_procedure_sample_count: 1000
top_procedure_count: 250
collection_interval: 60s
resource_attributes:
db.system.version:
enabled: true
sqlserver.db.edition:
enabled: true
# Second SQL Server instance: inherits all settings from nrsqlserver/1,
# overrides only the connection-specific fields.
# Additional SQL Server instances can be added here following the same pattern.
nrsqlserver/2:
<<: *nrsqlserver-common
username: "<YOUR_DB2_USERNAME>"
password: "<YOUR_DB2_PASSWORD>"
server: "<YOUR_SERVER_2>"
port: 1433
processors:
memory_limiter:
check_interval: ${env:NR_MEM_LIMITER_CHECK_INTERVAL:-1s}
limit_mib: ${env:NR_MEM_LIMITER_LIMIT_MIB:-200}
spike_limit_mib: ${env:NR_MEM_LIMITER_SPIKE_MIB:-50}
exporters:
otlp:
endpoint: https://otlp.nr-data.net:4318
headers:
api-key: <YOUR_LICENSE_KEY>
tls:
insecure: false
compression: gzip
sending_queue:
enabled: true
sizer: bytes
queue_size: 100_000_000
num_consumers: 10
batch:
sizer: bytes
max_size: 1_000_000
min_size: 0
flush_timeout: 5s
service:
telemetry:
metrics:
level: none
# Metrics and logs pipelines for multiple SQL Server instances
pipelines:
metrics:
receivers: [nrsqlserver/1, nrsqlserver/2]
processors: [memory_limiter]
exporters: [otlp]
logs:
receivers: [nrsqlserver/1, nrsqlserver/2]
processors: [memory_limiter]
exporters: [otlp]

La clé de fusion <<: *nrsqlserver-common hérite de tous les paramètres de nrsqlserver/1, y compris son catalogue de métriques, ses événements, ses paramètres de collecte de requêtes/procédures, et ses attributs de ressource. Tout champ que vous définissez explicitement après celle-ci, tel que username, password, server, et port, remplace la valeur héritée pour cette instance de Récepteur spécifique.

Important

Chaque fois que vous ajoutez une nouvelle instance de Récepteur (par exemple, nrsqlserver/3), ajoutez-la également à la liste receivers dans les deux pipelines metrics et logs sous service.pipelines. Un Récepteur défini dans le bloc receivers mais absent de service.pipelines ne collectera aucune donnée.

Conseil

Pour les environnements Windows auto-hébergés et RDS utilisant l’authentification de domaine ou gMSA, utilisez le champ datasource au lieu de username/password/server/port. Consultez l’ instrumentation Windows auto-hébergée (authentification de domaine Windows) pour le format datasource.

Redémarrer NRDOT Collector

Redémarrez le service NRDOT Collector pour que les modifications de configuration prennent effet. Le collecteur charge les paramètres de configuration une fois au démarrage et ne prend pas en charge le rechargement à chaud. Toutes les modifications apportées à la configuration pendant que le collecteur est en cours d’exécution restent inactives jusqu’à ce que le processus redémarre.

bash
$
sudo systemctl restart nrdot-collector

Instrumentation Linux pour les environnements auto-hébergés

Découvrez comment configurer le monitoring MSSQL dans des environnements Linux auto-hébergés avec New Relic.

Instrumentation Windows pour les environnements auto-hébergés

Découvrez comment configurer le monitoring MSSQL dans des environnements Windows auto-hébergés avec New Relic.

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.

Droits d'auteur © 2026 New Relic Inc.

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