SAP HANA

Supported OS Linux Windows Mac OS

Intégration2.2.1

Présentation

Ce check permet de surveiller SAP HANA  2.0 SPS 2 avec l’Agent Datadog.

Implémentation

Installation

Le check SAP HANA est inclus avec le package de l’Agent Datadog . Pour utiliser cette intégration, vous devez installer manuellement la bibliothèque hdbcli .

Pour Unix :

sudo -Hu dd-agent /opt/datadog-agent/embedded/bin/pip install hdbcli==2.10.15

Pour Windows :

"C:\Program Files\Datadog\Datadog Agent\embedded<VERSION_MAJEURE_PYTHON>\python.exe" -m pip install hdbcli==2.10.15

Préparer HANA

Pour interroger certaines vues, vous devez accorder des autorisations spécifiques à l’utilisateur de surveillance HANA de votre choix. Pour en savoir plus, consultez la section Accorder des autorisations .

Pour découvrir comment configurer le numéro de port pour les bases de données locataire, multi-locataires et système HANA, consultez la section de la documentation SAP relative aux connexions (en anglais).

Création des utilisateurs
  1. Pour créer un utilisateur, connectez-vous à la base de données système et exécutez la commande suivante :

    CREATE RESTRICTED USER <USER> PASSWORD <PASSWORD>;
    
  2. Exécutez la commande suivante pour autoriser l’utilisateur à se connecter au système :

    ALTER USER <USER> ENABLE CLIENT CONNECT;
    
  3. (facultatif) Pour éviter toute interruption de service, vous pouvez définir un mot de passe à long terme :

    ALTER USER <USER> DISABLE PASSWORD LIFETIME;
    
Accorder des autorisations
  1. Exécutez la commande suivante pour créer un rôle de surveillance (du nom de DD_MONITOR pour les exemples ci-dessous) :

    CREATE ROLE DD_MONITOR;
    
  2. Exécutez la commande suivante pour accorder un accès en lecture seule à l’ensemble des vues système :

    GRANT CATALOG READ TO DD_MONITOR;
    
  3. Exécutez les commandes suivantes afin d’accorder certaines autorisations pour chaque vue du système :

    GRANT SELECT ON SYS.M_DATABASE TO DD_MONITOR;
    GRANT SELECT ON SYS.M_DATABASES TO DD_MONITOR;
    GRANT SELECT ON SYS_DATABASES.M_BACKUP_PROGRESS TO DD_MONITOR;
    GRANT SELECT ON SYS_DATABASES.M_CONNECTIONS TO DD_MONITOR;
    GRANT SELECT ON SYS_DATABASES.M_DISK_USAGE TO DD_MONITOR;
    GRANT SELECT ON SYS_DATABASES.M_LICENSES TO DD_MONITOR;
    GRANT SELECT ON SYS_DATABASES.M_RS_MEMORY TO DD_MONITOR;
    GRANT SELECT ON SYS_DATABASES.M_SERVICE_COMPONENT_MEMORY TO DD_MONITOR;
    GRANT SELECT ON SYS_DATABASES.M_SERVICE_MEMORY TO DD_MONITOR;
    GRANT SELECT ON SYS_DATABASES.M_SERVICE_STATISTICS TO DD_MONITOR;
    GRANT SELECT ON SYS_DATABASES.M_VOLUME_IO_TOTAL_STATISTICS TO DD_MONITOR;
    
  4. Enfin, exécutez la commande suivante pour attribuer le rôle de surveillance à l’utilisateur de votre choix :

    GRANT DD_MONITOR TO <USER>;
    

Configuration

  1. Modifiez le fichier sap_hana.d/conf.yaml dans le dossier conf.d/ à la racine du répertoire de configuration de votre Agent pour commencer à recueillir vos données de performance sap_hana. Consultez le fichier d’exemple sap_hana.d/conf.yaml pour découvrir toutes les options de configuration disponibles.

  2. Redémarrez l’Agent .

Validation

Lancez la sous-commande status de l’Agent et cherchez sap_hana dans la section Checks.

Données collectées

Métriques

sap_hana.backup.latest
(gauge)
The time elapsed since the latest database backup was completed.
Shown as second
sap_hana.connection.idle
(gauge)
The current number of idle connections.
Shown as connection
sap_hana.connection.open
(gauge)
The current number of connections.
Shown as connection
sap_hana.connection.running
(gauge)
The current number of running connections.
Shown as connection
sap_hana.connection.queuing
(gauge)
The current number of queued connections.
Shown as connection
sap_hana.connection.empty
(gauge)
Historic connections that are removed after a period of time.
Shown as connection
sap_hana.cpu.service.utilized
(gauge)
The CPU utilization of services as a percentage.
Shown as percent
sap_hana.disk.free
(gauge)
The total free size of the disk in bytes.
Shown as byte
sap_hana.disk.size
(gauge)
The total size of the disk in bytes.
Shown as byte
sap_hana.disk.used
(gauge)
The total used size of the disk in bytes.
Shown as byte
sap_hana.disk.utilized
(gauge)
The utilization of the disk as a percentage.
Shown as percent
sap_hana.file.service.open
(gauge)
The number of open files.
Shown as file
sap_hana.license.expiration
(gauge)
The time until license expiration.
Shown as second
sap_hana.license.size
(gauge)
The total size of the license in gibibytes.
Shown as gibibyte
sap_hana.license.usable
(gauge)
The total usable size of the license in gibibytes.
Shown as gibibyte
sap_hana.license.used
(gauge)
The total used size of the license in gibibytes.
Shown as gibibyte
sap_hana.license.utilized
(gauge)
The utilization of the license as a percentage.
Shown as percent
sap_hana.memory.row_store.free
(gauge)
The total free amount of row store memory in bytes.
Shown as byte
sap_hana.memory.row_store.total
(gauge)
The total amount of row store memory in bytes.
Shown as byte
sap_hana.memory.row_store.used
(gauge)
The total used amount of row store memory in bytes.
Shown as byte
sap_hana.memory.row_store.utilized
(gauge)
The utilization of row store memory as a percentage.
Shown as percent
sap_hana.memory.service.component.used
(gauge)
The total used amount of memory by service components in bytes.
Shown as byte
sap_hana.memory.service.compactor.free
(gauge)
The total free part of the service memory pool that can potentially be freed on memory shortage in bytes.
Shown as byte
sap_hana.memory.service.compactor.total
(gauge)
The total part of the service memory pool that can potentially be freed on memory shortage in bytes.
Shown as byte
sap_hana.memory.service.compactor.used
(gauge)
The total used part of the service memory pool that can potentially be freed on memory shortage in bytes.
Shown as byte
sap_hana.memory.service.compactor.utilized
(gauge)
The utilization of the part of the service memory pool that can potentially be freed on memory shortage as a percentage.
Shown as percent
sap_hana.memory.service.heap.free
(gauge)
The total free amount of service heap memory in bytes.
Shown as byte
sap_hana.memory.service.heap.total
(gauge)
The total amount of service heap memory in bytes.
Shown as byte
sap_hana.memory.service.heap.used
(gauge)
The total used amount of service heap memory in bytes.
Shown as byte
sap_hana.memory.service.heap.utilized
(gauge)
The utilization of service heap memory as a percentage.
Shown as percent
sap_hana.memory.service.overall.physical.total
(gauge)
The total amount of service physical RAM in bytes.
Shown as byte
sap_hana.memory.service.overall.free
(gauge)
The total free amount of service memory in bytes.
Shown as byte
sap_hana.memory.service.overall.total
(gauge)
The total amount of service memory in bytes.
Shown as byte
sap_hana.memory.service.overall.used
(gauge)
The total used amount of service memory in bytes.
Shown as byte
sap_hana.memory.service.overall.utilized
(gauge)
The utilization of service memory as a percentage.
Shown as percent
sap_hana.memory.service.overall.virtual.total
(gauge)
The total amount of service virtual RAM in bytes.
Shown as byte
sap_hana.memory.service.shared.free
(gauge)
The total free amount of service shared memory in bytes.
Shown as byte
sap_hana.memory.service.shared.total
(gauge)
The total amount of service shared memory in bytes.
Shown as byte
sap_hana.memory.service.shared.used
(gauge)
The total used amount of service shared memory in bytes.
Shown as byte
sap_hana.memory.service.shared.utilized
(gauge)
The utilization of service shared memory as a percentage.
Shown as percent
sap_hana.network.service.request.active
(gauge)
The number of active requests to services.
Shown as request
sap_hana.network.service.request.external.total_finished
(count)
The number of completed external requests to services.
Shown as request
sap_hana.network.service.request.internal.total_finished
(count)
The number of completed internal requests to services.
Shown as request
sap_hana.network.service.request.pending
(gauge)
The number of pending requests to services.
Shown as request
sap_hana.network.service.request.per_second
(gauge)
The average number of requests per second of services over the last 1000 requests.
Shown as request
sap_hana.network.service.request.response_time
(gauge)
The average request response time of services over the last 1000 requests.
Shown as millisecond
sap_hana.network.service.request.total_finished
(count)
The total number of completed requests to services.
Shown as request
sap_hana.thread.service.active
(gauge)
The number of active threads used by services.
Shown as thread
sap_hana.thread.service.inactive
(gauge)
The number of inactive threads used by services.
Shown as thread
sap_hana.thread.service.total
(gauge)
The number of total threads used by services.
Shown as thread
sap_hana.uptime
(gauge)
The time elapsed since the database was started.
Shown as second
sap_hana.volume.io.read.count
(count)
The number of reads from the volume within the last interval.
Shown as read
sap_hana.volume.io.read.size.count
(count)
The number of bytes read from the volume within the last interval.
Shown as byte
sap_hana.volume.io.read.size.total
(gauge)
The total number of bytes read from the volume.
Shown as byte
sap_hana.volume.io.read.total
(gauge)
The total number of reads from the volume.
Shown as read
sap_hana.volume.io.read.utilized
(gauge)
The percentage of time spent reading from the volume.
Shown as percent
sap_hana.volume.io.throughput
(gauge)
The overall throughput of a volume in bytes per second.
Shown as byte
sap_hana.volume.io.utilized
(gauge)
The percentage of time spent accessing the volume.
Shown as percent
sap_hana.volume.io.write.count
(count)
The number of writes to the volume within the last interval.
Shown as write
sap_hana.volume.io.write.size.count
(count)
The number of bytes written to the volume within the last interval.
Shown as byte
sap_hana.volume.io.write.size.total
(gauge)
The total number of bytes written to the volume.
Shown as byte
sap_hana.volume.io.write.total
(gauge)
The total number of writes to the volume.
Shown as write
sap_hana.volume.io.write.utilized
(gauge)
The percentage of time spent writing to the volume.
Shown as percent

Événements

SAP HANA n’inclut aucun événement.

Checks de service

sap_hana.can_connect
Returns CRITICAL if the Agent is unable to connect to the monitored SAP HANA system, or OK otherwise.
Statuses: ok, critical

sap_hana.status
Returns OK if the monitored SAP HANA database is up, or CRITICAL otherwise.
Statuses: ok, critical

Dépannage

Besoin d’aide ? Contactez l’assistance Datadog .