
Présentation
Le check SQL Server surveille les performances de vos instances SQL Server. Il recueille des métriques concernant le nombre de connexions utilisateur, le nombre de compilations SQL, et plus encore.
Vous pouvez également créer vos propres métriques en demandant au check d’exécuter des requêtes personnalisées.
Configuration
Installation
Le check SQL Server est inclus avec le package de l’Agent Datadog. Vous n’avez donc rien d’autre à installer sur vos instances SQL Server.
Vérifiez que votre instance SQL Server prend en charge l’authentification SQL Server en activant « Mode d’authentification SQL Server et Windows » dans les propriétés du serveur :
Propriétés -> Sécurité -> Mode d’authentification SQL Server et Windows
Prérequis
Créez un utilisateur en lecture seule pour vous connecter à votre serveur :
CREATE LOGIN datadog WITH PASSWORD = '<PASSWORD>';
CREATE USER datadog FOR LOGIN datadog;
GRANT SELECT on sys.dm_os_performance_counters to datadog;
GRANT VIEW SERVER STATE to datadog;
Assurez-vous que votre instance SQL Server effectue son écoute sur un port fixe spécifique. Par défaut, les instances nommées et SQL Server Express sont configurés pour utiliser des ports dynamiques. Consultez la documentation de Microsoft pour en savoir plus.
Cette étape est obligatoire pour les métriques AlwaysOn. Une autorisation supplémentaire doit être accordée pour rassembler des métriques AlwaysOn :
GRANT VIEW ANY DEFINITION to datadog;
Configuration
Host
Pour configurer ce check lorsque l’Agent est exécuté sur un host :
Modifiez le fichier sqlserver.d/conf.yaml
dans le dossier conf.d/
à la racine du répertoire de configuration de votre Agent. Consultez le fichier d’exemple sqlserver.d/conf.yaml pour découvrir toutes les options de configuration disponibles.
init_config:
instances:
- host: "<SQL_HOST>,<SQL_PORT>"
username: datadog
password: "<YOUR_PASSWORD>"
connector: odbc # alternative is 'adodbapi'
driver: SQL Server
Consultez un exemple de configuration du check pour obtenir une description complète de toutes les options, mais également pour découvrir comment utiliser les requêtes personnalisées pour créer vos propres métriques.
Remarque : le fournisseur (par défaut) SQLOLEDB
est déconseillé. Pour utiliser le nouveau fournisseur MSOLEDBSQL
, définissez la variable adoprovider
sur MSOLEDBSQL
dans votre fichier sqlserver.d/conf.yaml
après avoir téléchargé le nouveau fournisseur depuis Microsoft. Vous pouvez également utiliser l’authentification Windows sans fournir de nom d’utilisateur ni de mot de passe en indiquant ce qui suit :
connection_string: "Trusted_Connection=yes"
Redémarrez l’Agent.
Linux
Des étapes de configuration supplémentaires sont requises pour exécuter l’intégration SQL Server sur un host Linux :
- Installez un pilote SQL Server ODBC, comme Microsoft ODBC Driver.
- Copiez les fichiers
odbc.ini
et odbcinst.ini
dans le dossier /opt/datadog-agent/embedded/etc
. - Modifiez le fichier
conf.yaml
de façon à utiliser le connecteur odbc
et indiquez le pilote approprié, comme indiqué dans le fichier odbcinst.ini
.
Collecte de logs
Disponible à partir des versions > 6.0 de l’Agent
La collecte de logs est désactivée par défaut dans l’Agent Datadog. Vous devez l’activer dans datadog.yaml
:
Ajoutez ce bloc de configuration à votre fichier sqlserver.d/conf.yaml
pour commencer à recueillir vos logs SQL Server :
logs:
- type: file
encoding: utf-16-le
path: "<LOG_FILE_PATH>"
source: sqlserver
service: "<SERVICE_NAME>"
Modifiez les valeurs des paramètres path
et service
en fonction de votre environnement. Consultez le fichier d’exemple sqlserver.d/conf.yaml pour découvrir toutes les options de configuration disponibles.
Redémarrez l’Agent.
Consultez la documentation de Datadog pour découvrir comment configurer l’Agent afin de recueillir les logs dans un environnement Kubernetes.
Environnement conteneurisé
Consultez la documentation relative aux modèles d’intégration Autodiscovery pour découvrir comment appliquer les paramètres ci-dessous à un environnement conteneurisé.
Collecte de métriques
Paramètre | Valeur |
---|
<NOM_INTÉGRATION> | sqlserver |
<CONFIG_INIT> | vide ou {} |
<CONFIG_INSTANCE> | {"host": "%%host%%,%%port%%", "username": "datadog", "password": "<MOTDEPASSEUNIQUE>", "connector": "odbc", "driver": "FreeTDS"} |
Consultez la documentation relative aux template variables Autodiscovery pour découvrir comment transmettre <MOTDEPASSEUNIQUE>
en tant que variable d’environnement plutôt que sous forme d’étiquette.
Collecte de logs
Disponible à partir des versions > 6.0 de l’Agent
La collecte des logs est désactivée par défaut dans l’Agent Datadog. Pour l’activer, consultez la section Collecte de logs avec Kubernetes.
Paramètre | Valeur |
---|
<CONFIG_LOG> | {"source": "sqlserver", "service": "sqlserver"} |
Validation
Lancez la sous-commande status de l’Agent et cherchez sqlserver
dans la section Checks.
Données collectées
Métriques
La plupart de ces métriques proviennent de la table sys.dm_os_performance_counters
de SQL Server.
Événements
Le check SQL Server n’inclut aucun événement.
Checks de service
sqlserver.can_connect :
Renvoie CRITICAL
si l’Agent ne parvient pas à se connecter à SQL Server pour recueillir des métriques. Si ce n’est pas le cas, renvoie OK
.
Dépannage
Besoin d’aide ? Contactez l’assistance Datadog.
Développement
Consultez la documentation principale sur les outils de développement pour découvrir comment tester et développer des intégrations reposant sur l’Agent.
Pour aller plus loin