Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Make by tools (01.00.01) - action=clean_macro_parameter


Scroll Ignore
scroll-pdftrue
scroll-officetrue
scroll-chmtrue
scroll-htmlfalse
scroll-docbooktrue
scroll-eclipsehelptrue
scroll-epubtrue


Panel
titleSommaire

Table of Contents
stylenone



Contexte

Cette page vous décris comment superviser un serveur de base Oracle :

  • Les temps de connexions
  • Un redémarrage récent
  • Le nombre de connexion
  • Les accès à la mémoire cache
  • Surveiller les Dead lock
  • ...


Vous devez suivre quelque étape pour mettre en place la supervision d'une nouvelle machine servant de serveur de base de données : 

  • Comprendre ce qui est mis à disposition dans le pack de supervision 
  • Tester la connexion à la base de données
  • Définissez votre l’hôte qui utilisera les modèles de supervision de la base Oracle
Panel
titleOn this page
toc
maxLevel3


Ce qui est déjà disponible dans l'installation de Shinken

Pour vous faciliter un peu la vie, quelques tâches de configuration ont déjà été effectuées pour vous :

  1. Installation d'Oracle instant Client

  2. Installation du plugin check_oracle_health : /var/lib/shinken/libexec/check_oracle_health

  3. Plusieurs modèles d'hôtes sont prêts à être utilisés


Tip
titleNote

La machine que nous allons surveiller pour les exemples s'appelle srv-lin-1 et est un un serveur Oracle sur un OS linux.


Mise en place d'un compte de supervision  Oracle


Tip
titleNote

You will need to configure the user for all your oracle databases.

Il va falloir configurer l'utilisateur pour toutes les bases de données oracle.

Il faut se connecter à la base de données en tant que sysadmin sur le serveur oracle Connect to your database as sysadmin on the oracle server :


Code Block
srv-lin-1:oracle# sqlplus "/ as sysdba"



And then create your shinken account on the databaseEt ensuite créer un compte shinken sur la base de données :


Code Block
languagesql
CREATE USER shinken IDENTIFIED BY shinkenpassword;
GRANT CREATE SESSION TO shinken;
GRANT SELECT any dictionary TO shinken;
GRANT SELECT ON V_$SYSSTAT TO shinken;
GRANT SELECT ON V_$INSTANCE TO shinken;
GRANT SELECT ON V_$LOG TO shinken;
GRANT SELECT ON SYS.DBA_DATA_FILES TO shinken;
GRANT SELECT ON SYS.DBA_FREE_SPACE TO shinken;



And for old Et pour l'ancienne base de données 8.1.7 database onlyseulement :


Code Block
languagesql
---- if somebody still uses Oracle 8.1.7...
GRANT SELECT ON sys.dba_tablespaces TO shinken;
GRANT SELECT ON dba_temp_files TO shinken;
GRANT SELECT ON sys.v_$Temp_extent_pool TO shinken;
GRANT SELECT ON sys.v_$TEMP_SPACE_HEADER TO shinken;
GRANT SELECT ON sys.v_$session TO shinken;




Tester la connexion

Pour voir si la connexion à la base de données nommée PROD est correcte, il suffit de lancer la commande suivante

Test the connection

To see if the connection to the database named PROD is ok, just launch :


Code Block
languagebash
/var/lib/shinken/libexec/check_oracle_health --connect "(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = srv-lin-1)(PORT = 1521)))(CONNECT_DATA =(SID = PROD)))" --user "shinken" --password "shinkenpassword" --mode connection-time





Tip
titleTip

The DATABASES data you will find in the host template matches to the SID of you Oracle database. 

Les données DATABASES que trouvé dans le modèle d'hôte correspondent au SID de la base de données Oracle.


Gérer plus d'une base de données sur le même hôte

Tous les checks présents dans les modèles Oracle fournis par Shinken Entreprise utilisent la fonctionnalité "Duplicate ForEach".

Pour chaque nom de base de données listé dans la rubrique "DATABASES", le check sera dupliquée. Un hôte, ayant 2 bases de données, aura donc en double chaque check avec le nom de la base de données dans la vérification

Manage more than 1 database on the same host

All checks presents in Oracle templates provided by Shinken Entreprise use the " Duplicate For Each " functionality.

For each database name listed in the DATA "DATABASES", check will be duplicated. An host, having 2 databases, will then have in double each checks with the datatabase name in the check.

Info
titleExampleExemple

Prenons un exemple : un hôte a les caractéristiques suivantes :

  • Les données "DATABASES" sont

Let's look an example: an host has the following:

  • The data "DATABASES" set to "DB1,DB2,DB3"
  • The oracle template attached on it.
  • Le modèle oracle y est attaché.
  • Considérons les checks OracleLet's consider the Oracle-$KEY$-corrupted-blocks checks. He will then have . Il y aura alors 3 checks :
    • Oracle-DB1-corrupted-blocks
    • Oracle-DB2-corrupted-blocks
    • Oracle-DB3-corrupted-blocks

If you need to set a specific port of connection for 1 of the database, you can provide it as parameters of the DatabaseSi vous avez besoin de définir un port de connexion spécifique pour une base de données, vous pouvez le fournir comme paramètre de la base de données :

Info
titleExampleExemple

LetRegardons l's look image the de la DB2 don't use the 1521 port set by default:qui n'utilise pas le port 1521 défini par défaut :

  • Modifier la donnée "DATABASES" dans ce sens Change the data "DATABASES" in that way "DB1,DB2$(5000)$,DB3".
  • For the duplication on the DB2, then the value1 5000 will be provided to each check and will overload the default port.

What is checked with the templates

Public templates

oracle

  • Pour la duplication sur DB2, alors la valeur1 5000 sera fournie à chaque check et surchargera le port par défaut.


Modèles d'hôtes disponibles dans le pack Oracle

Modèles d'hôtes publics

oracle


Il s'agit du modèle Oracle très basique permettant de savoir si votre base de données Oracle fonctionne et est utilisable.

Tous les modèles Oracle (sauf

This is the very basic Oracle template allowing to know if your Oracle database is running and usable.

Every Oracle templates (except Oracle-connection-method) use it as a parent templatel'utilisent comme modèle parent.

CheckDetailDétailCheck rangeDefault WarningDefault Critical
Seuil avertissementSeuil critique
tnspinglistener


process-usagePercentage of max possible processesPourcentage du maximum de processus possibles0% to à 100%8090
sga-shared-pool-freeFree Memory in the Mémoire libre dans Shared Pool0% to à 100%10:5:
tablespace-usageUsed diskspace in the Espace disque utilisé dans le tablespace0% to à 100%9098
corrupted-blocksNumber of corrupted blocks in databaseNombre de block corrompu dans la base de données0 à 0 to n110
invalid-objectsSum of faulty Objects, Indices, PartitionsSomme des objets, indices, partitions défectueux0 à 0 to n0.10.1


oracle-full

Contains all Oracle host templates listed in the Shinken Adminstrators templatesContient tous les modèles d'hôte Oracle répertoriés dans les modèles de l'administrateur Shinken.

Warning
titleWarning

Using the oracle-full template will require a lot of resources on your poller daemon. We advise to use only needed templates.

Avertissement

L'utilisation du modèle oracle-full nécessitera beaucoup de ressources sur votre démon Poller. Nous vous conseillons d'utiliser uniquement les modèles nécessaires.


Modèles d'hôtes réservés aux administrateurs Shinken (ne peuvent pas être vus par les autres utilisateurs

Shinken Administrator templates (can't be seen by other users

)

oracle-connection-method


This template describes the method to connect to an Oracle database. Every Oracle templates use it as a parent templateCe modèle décrit la méthode de connexion à une base de données Oracle. Tous les modèles Oracle l'utilisent comme modèle parent.

Info
titleNote

The parameters common to every Oracle server monitored shoud be setted in the Les paramètres communs à tous les serveurs Oracle surveillés doivent être définis dans le modèle d'hôte oracle-connection-method host template.If you have many connection method, do you own template and attach it to host

Si vous avez plusieurs méthodes de connexion, créez votre propre modèle et attachez-le à l'hôte.



oracle-availability

 This template gives informations about the database availability Ce modèle donne des informations sur la disponibilité de la base de données.

CheckDetailDétailCheck rangeDefault Warning
Seuil avertissementSeuil critiqueDefault Critical
connection-timeTime to contact the databaseTemps de connexion à la base de données Oracle0 to à n secondssecondes0.51


Oracle-datafile

 This template gives informations about the datafile availability Ce modèle donne des informations sur la disponibilité du fichier de données.

CheckDetailDétailCheck rangeDefault WarningDefault Critical
Seuil avertissementSeuil critique
datafile-io-trafficSum of IO-Operationes from Datafiles per secondSomme des opérations d'entrée/sortie des fichiers de données par seconden/sec10005000
datafiles-existingPercentage of max possible datafilesPourcentage des fichiers de données maximum possibles0% to à 100%8090


Oracle-flash-recovery-area

This template allow to know about the used diskspace in the flash recovery area.

Ce modèle permet de connaître l'espace disque utilisé dans la zone de récupération flash.

Note

À utiliser uniquement si vous utilisez la zone de récupération flash

Note

To be used only if you are using flash recovery area.


CheckDetailDétailCheck rangeDefault Warning
Seuil avertissementSeuil critiqueDefault Critical
flash-recovery-area-usageUsed diskspace in the flash recovery areaEspace disque utilisé dans la zone de récupération flash0% à 0% to 100%9098


Oracle-pga

This template allows to know the percentage of sorts that are done to disk vs. in-memory.

Ce modèle permet de connaître le pourcentage de tris qui sont effectués sur disque par rapport à ceux effectués en mémoire.

CheckDétail
Seuil avertissementSeuil critique
CheckDetailCheck rangeDefault WarningDefault Critical
pga-in-memory-sort-ratioPercentage of sorts in the memoryPourcentage de tris dans la mémoire0% to à 100% 99:90:


Oracle-redo

This template gives complete informations about the Ce modèle donne des informations complètes sur le redolog.

CheckDetailDétailCheck rangeDefault WarningDefault Critical
Seuil avertissementSeuil critique
switch-intervalInterval between RedoLog File SwitchesIntervalle entre les changements de fichiers RedoLog0 to à n600: 60:
retry-ratioRetry-Rate in the RedoLog BufferTaux de réessai dans le tampon RedoLog0% to à 100%110
redo-io-trafficRedolog IO in en MB/secn/sec199200


Oracle-rman

This template indicates if there are any RMAN backup problem in the last 3 days.

Ce modèle indique s'il y a un problème de sauvegarde RMAN dans les 3 derniers jours.

Note

À utiliser uniquement si vous utilisez

Note

To be used only if you are using RMAN.


CheckDetailDétailCheck rangeDefault WarningDefault Critical
Seuil avertissementSeuil critique
rman-backup-problemsNumber of RMAN-errors during the last three daysNombre d'erreurs RMAN au cours des trois derniers jours.0 à 0 to n2


Oracle-rollback-segment

This template gives informations about the Rollback segment. Rollback segment record the actions of transactions in the event that a transaction is rolled backCe modèle donne des informations sur le segment Rollback. Le segment Rollback enregistre les actions des transactions dans le cas où une transaction est annulée.


CheckDetailDétailCheck rangeDefault Warning
Seuil avertissementSeuil critiqueDefault Critical
roll-header-contentionRollback Segment Header ContentionContestation de l'en-tête du segment Rollback0% to à 100% 12
roll-block-contentionRollback Segment Block ContentionContestation de bloc de segment Rollback0% to à 100%12
roll-hit-ratioRollback Segment gets/waits Ratio0% to à 100%99:98:
roll-extendsRollback Segment Extends Le segment Rollback s'étend nn/sec1100
roll-wrapsEnveloppes de segments Rollback Segment Wraps nn/sec1100


Oracle-sga

This template gives complete information about the Ce modèle donne des informations complètes sur la SGA (System Global Area).

CheckDetailDétailCheck rangeDefault WarningDefault Critical
Seuil avertissementSeuil critique
sga-data-buffer-hit-ratioHitrate in the Data Buffer Cachedans le cache du tampon de données0% to à 100% 98:95:
sga-library-cache-gethit-ratioHitrate in the Library Cache dans le cache de la bibliothèque (Gets)0% to à 100%98:95:
sga-library-cache-pinhit-ratioHitrate in the Library Cache (Pinsdans le cache de la bibliothèque (pins)0% to à 100%98:95:
sga-library-cache-reloadsReload-Rate in the Library CacheTaux de rechargement dans le cache de la bibliothèquen/sec1010
sga-dictionary-cache-hit-ratioHitrate in the Dictionary Cachedans le cache du dictionnaire0% to à 100%95:90:
sga-latches-hit-ratioHitrate of the Latchesdes verrous0% to à 100%98:95:
sga-shared-pool-reloadsReload-Rate in the Shared PoolTaux de rechargement dans le pool partagé0% to à 100%110


Oracle-soft-parse

Ce modèle donne des informations sur le soft parse. Il peut vous donner une idée si une application et les instructions SQL correspondantes sont utilisées de manière inefficace.

CheckDétail
Seuil avertissementSeuil critique

This template gives information about soft parse. It can give you an idea if an application and corresponding SQL statements are being used inefficiently

CheckDetailCheck rangeDefault WarningDefault Critical
soft-parse-ratioPercentage of Pourcentage du soft-parse-ratio0% to 100% 90:98:


Oracle-stale-statistics

This template allows to know about stale statisticsCe modèle permet de connaître les statistiques périmées.

CheckDetailDétailCheck rangeDefault WarningDefault Critical
Seuil avertissementSeuil critique
stale-statisticsSum of objects with obsolete optimizer statisticsSomme des objets avec des statistiques d'optimiseur obsolètesn10 100


Oracle-tablespace

This template gives informations about tablespace such as fragmentation, if it's possible to allocate the next extent and potentially when a tablespace will be fullCe modèle donne des informations sur le tablespace comme la fragmentation, s'il est possible d'allouer la prochaine étendue et potentiellement quand un tablespace sera plein.

CheckDetailDétailCheck rangeDefault WarningDefault Critical
Seuil avertissementSeuil critique
tablespace-fragmentationFree Space Fragmentation IndexIndice de fragmentation de l'espace libre100 to à 130:20:
tablespace-can-allocate-nextChecks if there is enough free tablespace for the next ExtentVérifie s'il y a assez de tablespace libre pour le prochain Extent.


tablespace-remaining-timeSum of remaining days until a tablespace is used by 100%. The rate of increase will be calculated with the values from the last 30 days. (With the parameter –lookback different periods can be specified)Somme des jours restants jusqu'à ce qu'un tablespace soit utilisé à 100%. Le taux d'augmentation sera calculé avec les valeurs des 30 derniers jours. (Avec le paramètre -lookback, différentes périodes peuvent être spécifiées).JoursDays90:30:


Oracle-usage

This template indicates the percentage of maximum possible sessions and how many users are connectedCe modèle indique le pourcentage de sessions maximales possibles et le nombre d'utilisateurs connectés.

CheckDetailDétailCheck rangeDefault WarningDefault Critical
Seuil avertissementSeuil critique
session-usagePercentage of max possible sessionsPourcentage des sessions maximales possibles0% to à 100%8090
Connected usersNumber of currently connected usersNombre d'utilisateurs actuellement connectés0 to à n50100


How to 

Comment utiliser les modèles du pack Oracle

Configuration

of

du modèle d'hôte Oracle-connection-method

host template


Cliquez sur Hôtes puis sur Modèles d'hôtes dans le menu Éléments.

Image Added

Dans le champ Nom, tapez oracle.

Puis cliquez sur

Click on Hosts then on Hosts Templates in the Elements menu

Image Removed

In the Name field, type oracle.

Then clic on Oracle-connection-method

Image Removed
Clic on Data tab

Image Added

Cliquez sur l'onglet Données

Vous pouvez configurer les données suivantes You can setup the following DATA

  • DATABASES : the name : le(s) nom(s) of the Oracle SID database) de la (des) base(s) to be monitoredde données Oracle SID à surveiller.
  • ORACLE_CONNECTION_STRING : this is the Oracle connection string which allow to connect and do request toward the databases.
    Unless you know what your doing, you will rarely have the need to modify it : Il s'agit de la chaîne de connexion Oracle qui permet de se connecter et d'effectuer des requêtes vers les bases de données.
    À moins que vous ne sachiez ce que vous faites, vous aurez rarement besoin de le modifier.
  • ORACLE_PASSWORD  : the oracle password of the user used to connect to databasele mot de passe oracle de l'utilisateur utilisé pour se connecter à la base de données
  • ORACLE_USER  : the oracle user name used to connect to databasele nom d'utilisateur oracle utilisé pour se connecter à la base de données
  • ORACLE_PORT  : the listening port of the Oracle database server

Image Removed

  • le port d'écoute du serveur de la base de données Oracle


Image Added






Les paramètres spécifiques à chaque serveur, comme le nom de la base de données The parameters specifics to each server, such as database name (AKA SID)  for example, has to be done in the host's data itselfpar exemple, doivent être effectués dans les données de l'hôte lui-même.

Tip
titleTip

It's a best practice to use the same database monitoring user on every Oracle server monitored. Doing so, you can configure the database user/password only once in the host template Une bonne pratique consiste à utiliser le même utilisateur de surveillance de base de données sur chaque serveur Oracle surveillé. Ainsi, vous pouvez configurer l'utilisateur/mot de passe de la base de données une seule fois dans le modèle d'hôte oracle-connection-method.


Warning
titleImportant (Changing the connection port per database)

Attach an oracle template to you host

Clic on Hosts in the Elements menu
Image Removed

Add the chosen Oracle host template to the Host Templates to inherit field.

For example the Oracle host template.

Image Removed

Click on the Data tab

Image Removed

Look for the field DATABASES in the From templates data

Changer le port de connexion par base de données)



Attachez un modèle oracle à votre hôte


Cliquez sur Hôtes dans le menu Éléments

Image Added

Ajoutez le modèle d'hôte Oracle choisi dans le champ Modèles d'hôte à hériter.

Par exemple, le modèle d'hôte Oracle.

Image Added

Cliquez sur l'onglet Données

Image Added

Recherchez le champ DATABASES dans les données des modèles.


Tapez le nom de la base de données à surveiller

Image Added
Vérifiez si les données suivantes sont correctes.

Image Added



Tip
titleTip

Vous pouvez surveiller plusieurs bases de données sur le même hôte en tapant le nom du SID de la base de données séparé par une virgule

Type the name of the database to be monitoring

Image Removed
Check if the Following data are ok.
Image Removed
Tip
titleTip

You can monitor multiple database on the same host in typing the name of the database SID separated by a comma.

Exemple : DB1,DB2,DB3


Version des scripts livrés

check_oracle_health : 3.2.1.8