Supervision Oracle Database avec Centreon

Hello, Nous allons voir dans cet article comment mettre en place la supervision Oracle avec Centreon et Centreon Plugins Pack. Il est nécessaire d’installer le client Oracle sur votre plate-forme de supervision. Oracle est installé sur un serveur Unix (IBM AIX  7.4).

Ce qu’il vous faut :

Configuration requise sur votre serveur Centreon :

Voir mes articles sur la supervision systèmes & réseaux :

Supervision Oracle via CLI

Commençons par la supervision Oracle en ligne de commande. Connectez-vous à votre serveur Centreon et placez-vous dans le répertoire ou vous avez installé les plugins centreon.

Chercher le plugin pour Oracle.

[root@centreon plugins]# ./centreon_plugins.pl --list-plugin | grep oracle | grep PLUGIN
# PLUGIN: database::oracle::plugin
PLUGIN: network::oracle::infiniband::snmp::plugin
PLUGIN: network::oracle::otd::snmp::plugin
PLUGIN: storage::oracle::zs::snmp::plugin
[root@centreon plugins]#

Afficher les modes disponibles :

[root@centreon plugins]# ./centreon_plugins.pl --plugin=database::oracle::plugin --list-mode

Plugin Description:
    Check Oracle Server.

    --hostname
            Hostname to query.

    --port  Database Server Port.

    --sid   Database SID.

    --servicename
            Database Service Name.

Global Options:
    --mode  Choose a mode.

    --dyn-mode
            Specify a mode with the path (separated by '::').

    --list-mode
            List available modes.

    --mode-version
            Check minimal version of mode. If not, unknown error.

    --version
            Display plugin version.

    --sqlmode
            Choose a sql mode (Default: "dbi").

    --list-sqlmode
            List available sql modes.

    --multiple
            Multiple database connections (some mode needs it).

Modes Available:
   asm-diskgroup-usage
   connected-users
   connection-time
   corrupted-blocks
   data-files-status
   datacache-hitratio
   event-waits-usage
   invalid-object
   list-asm-diskgroups
   long-queries
   password-expiration
   process-usage
   rman-backup-age
   rman-backup-problems
   rman-online-backup-age
   rollback-segment-usage
   session-usage
   sql
   sql-string
   tablespace-usage
   temp-usage
   tnsping
   undo-usage
[root@centreon plugins]#

Il y a de quoi faire hein ! je ne compte pas les faire tous et pour ceux qui maîtrise SQL, ils vont se régaler puisqu’on peut exécuter des requêtes SQL depuis Centreon.

Check-Oracle-TNSPing

[root@centreon plugins]# ./centreon_plugins.pl --plugin=database::oracle::plugin --mode=tnsping --hostname=PIXELABS --sid=PIXEL --port=1521
OK: Connection established to listener 'PIXEL'. |
[root@centreon plugins]#

Check-Connected-Users

[root@centreon plugins]# ./centreon_plugins.pl --plugin=database::oracle::plugin --mode=connected-users --hostname=PIXELABS --sid=PIXEL --port=1521 --username=system --password=pixel123
OK: 7 Connected user(s). | 'connected_users'=7;;;0;
[root@centreon plugins]#

Check-CorruptedBlocks

[root@centreon plugins]# ./centreon_plugins.pl --plugin=database::oracle::plugin --mode=corrupted-blocks --hostname=PIXELABS --sid=PIXEL --port=1521 --username=system --password=pixel123
OK: 0 corrupted blocks. | 'corrupted_blocks'=0;;;0;
[root@centreon plugins]#

Check-DataFilesStatus

Ajoutez le paramètres –verbose pour avoir plus d’infos.

[root@centreon plugins]# ./centreon_plugins.pl --plugin=database::oracle::plugin --mode=data-files-status --hostname=PIXELABS --port=1521 --sid=PIXEL --username=system --password=pixel123 --warning-online-status='%{online_status}=~/sysoff/i' --critical-online-status='%{online_status}=~/offline|recover/i' --verbose
OK: All data files are ok |
Data file 'DONNEES//pixelabs/pixel/base/donnees.dbf' Status : AVAILABLE, Online Status : ONLINE
Data file 'DONNEES//pixelabs/pixel/base/donnees02.dbf' Status : AVAILABLE, Online Status : ONLINE
Data file 'DONNEES//pixelabs/pixel/base/donnees03.dbf' Status : AVAILABLE, Online Status : ONLINE
Data file 'INDEXES//pixelabs/pixel/base/indexes.dbf' Status : AVAILABLE, Online Status : ONLINE
Data file 'INDEXES//pixelabs/pixel/base/indexes02.dbf' Status : AVAILABLE, Online Status : ONLINE
Data file 'INDEXES//pixelabs/pixel/base/indexes03.dbf' Status : AVAILABLE, Online Status : ONLINE
Data file 'PIX//pixelabs/pixel/base/pix.dbf' Status : AVAILABLE, Online Status : ONLINE
Data file 'SYSAUX//pixelabs/pixel/base/sysaux.dbf' Status : AVAILABLE, Online Status : ONLINE
Data file 'SYSTEM//pixelabs/pixel/base/system.dbf' Status : AVAILABLE, Online Status : SYSTEM
Data file 'UNDO//pixelabs/pixel/base/undo.dbf' Status : AVAILABLE, Online Status : ONLINE
Data file 'WRKODI//pixelabs/pixel/base/wkodi.dbf' Status : AVAILABLE, Online Status : ONLINE
[root@centreon plugins]#

Check-DataCacheHitRatio

Evaluer les performances de vos bases de données avec le mode DATACACHE HITRATIO

[root@centreon plugins]# ./centreon_plugins.pl --plugin=database::oracle::plugin --mode=datacache-hitratio --hostname=PIXELABS --sid=PIXEL --username=system --password=pixel123 --warning-usage='95:' --critical-usage='90:'
OK: Buffer cache hit ratio is 99.65% | 'sga_data_buffer_hit_ratio'=99%;95:;90:;0;100
[root@centreon plugins]#

Check-ProcessUsage

[root@centreon plugins]# ./centreon_plugins.pl --plugin=database::oracle::plugin --mode=process-usage --hostname=PIXELABS --port=1521 --sid=PIXEL --username=system --password=pixel123 --warning='90' --critical='95'
OK: 22.00% of process resources used. | 'process_used'=22.00%;0:80;0:90;0;100
[root@centreon plugins]#

Check-TableSpaceUsage

[root@centreon plugins]# ./centreon_plugins.pl --plugin=database::oracle::plugin --mode=tablespace-usage --hostname=PIXELABS --port=1521 --sid=PIXEL --username=system --password=PIXEL123 --warning-tablespace=90 --critical-tablespace=95 --verbose
OK: All tablespaces are OK | 'tbs_data_usage_data'=22936158208B;0:61847499571;0:65283471769;0;68719443968 'tbs_geda_usage_geda'=25302401024B;0:30923749785;0:32641735884;0;34359721984 'tbs_indx_usage_indx'=6388449280B;0:30923749785;0:32641735884;0;34359721984 'tbs_perf_usage_perf'=160169984B;0:966367641;0:1020054732;0;1073741824 'tbs_sysaux_usage_sysaux'=1048248320B;0:1932735283;0:2040109465;0;2147483648 'tbs_system_usage_system'=3357278208B;0:30923749785;0:32641735884;0;34359721984 'tbs_temp_usage_temp'=20971520B;0:30923749785;0:32641735884;0;34359721984
Tablespace 'data' Total: 64.00 GB Used: 21.36 GB (33.38%) Free: 42.64 GB (66.62%)
Tablespace 'geda' Total: 32.00 GB Used: 23.56 GB (73.64%) Free: 8.44 GB (26.36%)
Tablespace 'indx' Total: 32.00 GB Used: 5.95 GB (18.59%) Free: 26.05 GB (81.41%)
Tablespace 'perf' Total: 1.00 GB Used: 152.75 MB (14.92%) Free: 871.25 MB (85.08%)
Tablespace 'sysaux' Total: 2.00 GB Used: 999.69 MB (48.81%) Free: 1.02 GB (51.19%)
Tablespace 'system' Total: 32.00 GB Used: 3.13 GB (9.77%) Free: 28.87 GB (90.23%)
Tablespace 'temp' Total: 32.00 GB Used: 20.00 MB (0.06%) Free: 31.98 GB (99.94%)
[root@centreon plugins]#

Check-SQLString (Requête SQL) #1

Un petit exemple pour l’utilisation du mode SQL. Je lance une requête SQL pour vérifier la version Oracle de ma base de données.

Directement sur le serveur :

SQL> select * from v$version;

BANNER
--------------------------------------------------------------------------------
# Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
PL/SQL Release 11.2.0.4.0 - Production
CORE    11.2.0.4.0      Production
TNS for IBM/AIX RISC System/6000: Version 11.2.0.4.0 - Production
NLSRTL Version 11.2.0.4.0 - Production

SQL>

Depuis Centreon :

[root@centreon plugins]# ./centreon_plugins.pl --plugin=database::oracle::plugin --mode=sql --hostname=PIXELABS --port=1521 --sid=PIXEL --username=system --password=pixel123 --sql-statement='select * from v$version' --format='SQL statement result'
OK: SQL statement result | 'value'=Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production;;;;
[root@centreon plugins]#

Il est possible d’améliorer les résultats (–help).

Check-SQLString (Requête SQL) #2

Allez encore une requête. On vérifie si la base est démarré ou pas (instance=ACTIVE).

Sur le serveur directement :

SQL> select * from v$instance;

INSTANCE_NUMBER INSTANCE_NAME
--------------- ----------------
----------------- -------- ------------ --- ---------- ------- ---
LOGINS     SHU  DATABASE_STATUS   INSTANCE_ROLE     ACTIVE_ST  BLO
---------- --- ----------------- ------------------ --------- ---
ALLOWED    NO   ACTIVE            PRIMARY_INSTANCE  NORMAL     NO

SQL>

J’ai dû supprimer des lignes pour y voir clair. La colonne qui nous intéresse c’est DATABASE_STATUS

Requête SQL : SQL#> select database_status from v$instance;

[root@centreon plugins]# ./centreon_plugins.pl --plugin=database::oracle::plugin --mode=sql --hostname=PIXELABS --port=1521 --sid=PIXEL --username=system --password=pixel123 --sql-statement='select database_status from v$instance' --format='SQL statement result'
OK: SQL statement result | 'value'=ACTIVE;;;;
[root@centreon plugins]#

La base est ACTIVE. Amusez-vous bien 🙂

Supervision Oracle via UI

Passons maintenant à la supervision Oracle via Centreon web. Faisons les choses étape par étape :

  • Step 1 : création des macros nécessaire
  • Step 2 : création des commandes
  • Step 3 : création d’hôte (serveur de base de données)
  • Step 4 : création de services pour l’hôte
  • Step 5 : exporter la configuration

Création de macros : vous devez avoir déjà les macros suivantes : #Macros_personnalisees 

Ajouter en plus les macros suivantes :

  • $_SERVICEFORMAT$
  • $_SERVICESQLSTATEMENT$

Passons à la deuxième étape.

Les amis, je vais créer 3 ou 4 commandes/services et à vous de faire le reste.

Check-Oracle-TNSPing

Allez dans : Configuration > Commandes > Contrôles

  • Nom de commande : Check-Oracle-TNSPing
  • Ligne de commande : copier/coller
$USER2$/centreon_plugins.pl --plugin=$_SERVICEPLUGIN$ --mode=$_SERVICEMODE$ --hostname=$HOSTADDRESS$ --sid=$_SERVICESID$

Rappel : $USER2$ = Centreon plugins Path = /usr/lib/centreon/plugins

Check-Oracle-TNSPing Centreon

Remarque : si vous avez personnalisé les ports Oracle, ajoutez le paramètre --port=$_SERVICEPORT$

  • Sauvegarder.

Check-Oracle-TableSpace

Allez dans : Configuration > Commandes > Contrôles

  • Nom de commande : Check-Oracle-TableSpace
  • Ligne de commande : copier/coller
$USER2$/centreon_plugins.pl --plugin=$_SERVICEPLUGIN$ --mode=$_SERVICEMODE$ --hostname=$HOSTADDRESS$ --sid=$_SERVICESID$ --username=$_SERVICEUSERNAME$ --password=$_SERVICEPASSWORD$ --warning-tablespace=$_SERVICEWARNING$ --critical-tablespace=$_SERVICECRITICAL$ $_SERVICEOPTION$

Rappel : $USER2$ = Centreon plugins Path = /usr/lib/centreon/plugins

Check-Oracle-TableSpace-Usage Centreon

  • Sauvegarder.

Check-Oracle-HitRatio

Allez dans : Configuration > Commandes > Contrôles

  • Nom de commande : Check-Oracle-DataCachHitRatio
  • Ligne de commande : copier/coller
$USER2$/centreon_plugins.pl --plugin=$_SERVICEPLUGIN$ --mode=$_SERVICEMODE$ --hostname=$HOSTADDRESS$ --port=$_SERVICEPORT$ --sid=$_SERVICESID$ --username=$_SERVICEUSERNAME$ --password=$_SERVICEPASSWORD$ --warning-usage=$_SERVICEWARNING$ critical-usage=$_SERVICECRITICAL$ $_SERVICEOPTION$

Rappel : $USER2$ = Centreon plugins Path = /usr/lib/centreon/plugins

Check-Oracle-Version (Requête SQL)

Allez dans : Configuration > Commandes > Contrôles

  • Nom de commande : Check-Oracle-Version
  • Ligne de commande : copier/coller
$USER2$/centreon_plugins.pl --plugin=$_SERVICEPLUGIN$ --mode=$_SERVICEMODE$ --hostname=$HOSTADDRESS$ --sid=$_SERVICESID$ --username=$_SERVICEUSERNAME$ --password=$_SERVICEPASSWORD$ --sql-statement=$_SERVICESQLSTATEMENT$ --format=$_SERVICEFORMAT$ $_SERVICEOPTION$

Rappel : $USER2$ = Centreon plugins Path = /usr/lib/centreon/plugins

Check-Oracle-Version SQL String Centreon

  • Sauvegarder.

Création d’hôte & Services

Vous savez le faire normalement hein 🙂

Allez dans : Configuration > Hôtes > Ajouter

Creation hote oracle centreon

  • Onglet Notification
    • Période de notification : workhours ou 24×7

Service Check-Oracle-TNSPing

  • Allez dans Configuration > Services > Ajouter
    • Description : Check-PIXEL-TNSPing (PIXEL = nom de la base de données)
    • Lié aux hôtes : Serveur de base de données (PIXELABS)
    • Modèle : Rien (ou service_template)
    • Commande de vérification : sélectionnez dans la liste la commande : Check-Oracle-TNSPing
      • PLUGIN : database::oracle::plugin
      • MODE : tnsping
      • SID : PIXEL

Check Oracle TNSPing Service Centreon

  • Période de contrôle : 24×7
  • Onglet Notification
    • Période de notification : wordhours ou 24×7
  • Sauvegarder

Service Check-Oracle-TableSpace

  • Allez dans Configuration > Services > Ajouter
    • Description : Check-PIXEL-TableSpace (PIXEL = nom de la base de données)
    • Lié aux hôtes : Serveur de base de données (PIXELABS)
    • Modèle : Rien (ou service_template)
    • Commande de vérification : sélectionnez dans la liste la commande : Check-Oracle-TableSpace
      • PLUGIN : database::oracle::plugin
      • MODE : tablespace-usage
      • SID : PIXEL
      • USERNAME : system
      • PASSWORD : pixel123
      • WARNING : 90
      • CRITICAL : 95
      • OPTION : --verbose

Check-Oracle-TableSpace-Usage Service Centreon

  • Période de contrôle : 24×7
  • Onglet Notification
    • Période de notification : wordhours ou 24×7
  • Sauvegarder

Service Check-Oracle-HitRatio

  • Allez dans Configuration > Services > Ajouter
    • Description : Check-PIXEL-HitRatio (PIXEL = nom de la base de données)
    • Lié aux hôtes : Serveur de base de données (PIXELABS)
    • Modèle : Rien (ou service_template)
    • Commande de vérification : sélectionnez dans la liste la commande : Check-Oracle-DataCacheHitRatio
      • PLUGIN : database::oracle::plugin
      • MODE : datacache-hitratio
      • SID : PIXEL
      • USERNAME : system
      • PASSWORD : pixel123
      • WARNING : ’90:’
      • CRITICAL : ’80:’
      • OPTION : –verbose

Check-Oracle-DataCachHitRatio Service Centreon

  • Période de contrôle : 24×7
  • Onglet Notification
    • Période de notification : wordhours ou 24×7
  • Sauvegarder

Service Check-Oracle-Version (SQL)

  • Allez dans Configuration > Services > Ajouter
    • Description : Check-PIXEL-Version (PIXEL = nom de la base de données)
    • Lié aux hôtes : Serveur de base de données (PIXELABS)
    • Modèle : Rien (ou service_template)
    • Commande de vérification : sélectionnez dans la liste la commande : Check-Oracle-Version
      • PLUGIN : database::oracle::plugin
      • MODE : sql
      • SID : PIXEL
      • USERNAME : system
      • PASSWORD : pixel123
      • SQLSTATEMENT : select * from v$version
      • FORMAT : SQL statement result
      • OPTION : –verbose

Check-Oracle-Version SQL String Service Centreon

  • Période de contrôle : 24×7
  • Onglet Notification
    • Période de notification : wordhours ou 24×7
  • Sauvegarder

Supervision Oracle Résultat 🙂

Exporter la configuration et relancer le collecteur Central :

Oracle Database Monitoring Centreon Server

Check-PIXEL-Version :

Get Oracle Version SQL Command Centreon

C’est terminé. A vous de mettre en place les autres services. N’oubliez pas de superviser la charge, le CPU, Memory, Disk, Hardware, de votre serveur de base de données. N’hésitez pas en cas de besoin.

Bonne journée et à bientôt.

Supervision Systèmes & Réseaux

Voir mes articles sur la supervision systèmes & réseaux :

 
Besoin d’aide ? des questions ?

Venez sur le forum
logo Forum Pixelabs
***********
La rédaction de cette documentation demande beaucoup de temps, de motivation, mais surtout beaucoup de café 🙂

Vous aimez pixelabs ?

Offrez moi un petit café en cliquant sur la tasse ci-dessous.
pixelans_donation
Merci !

5 1 voter
Évaluation de l'article
S’abonner
Notifier de
84 Commentaires
Inline Feedbacks
View all comments

Bonjour,

Je suis toujours vos articles. Félicitations.

Eh bien, j’ai un problème J’ai suivi l’installation selon votre article et j’ai un problème pour exécuter l’oracle avec le centreon-engine Je pense que cela se passe de la même manière que la plupart des autres. c’est-à-dire que si je lance le tnsping avec root fonctionne mais si je le fais avec centreon-engine donne une erreur UNKNOWN : Cannot connect : (no error string) |. et c’est correct j’ai installé le perl dans le répertoire root. Pouvez-vous m’aider à le résoudre ? Merci

Hello,
ça donne quoi ces commandes sous l’user root et centreon-engine

[root@centreon plugins]# echo $ORACLE_HOME
[root@centreon plugins]# perl -V
Last edited 6 jours il y a by sysadmin

Bonjour,

Si vous regardez dans le cas de $HOME_ORACLE à la fois dans root et centreon-engine il me dit la même chose

/home/oracle/app/product/19.0.0/client64

Mais dans le cas de perl -V
root

Built under linux
Compiled at Feb 2021 16:31:58
%ENV:
PERL5LIB="/root/perl5/lib/perl5:"
PERL_LOCAL_LIB_ROOT=":/root/perl5"
PERL_MB_OPT="--install_base /root/perl5"
PERL_MM_OPT="INSTALL_BASE=/root/perl5"
@INC:
/root/perl5/lib/perl5/x86_64-linux-thread-multi
/root/perl5/lib/perl5
/usr/local/lib64/perl5
/usr/local/share/perl5
/usr/lib64/perl5/vendor_perl
/usr/share/perl5/vendor_perl
/usr/lib64/perl5
/usr/share/perl5

Centreon-engine.

Built under linux
Compiled at Feb 2 2021 16:31:58
@INC:
/usr/local/lib64/perl5
/usr/local/share/perl5
/usr/lib64/perl5/vendor_perl
/usr/share/perl5/vendor_perl
/usr/lib64/perl5
/usr/share/perl5

Que dois-je faire ? Merci pour votre aide.

Salutations

Non, ce n’est pas la même chose. Ton perl est installé dans /root/perl5
Il manque des variables ENV pour l’user centreon-engine :

 %ENV:
  PERL5LIB= »/root/perl5/lib/perl5: »
  PERL_LOCAL_LIB_ROOT= »:/root/perl5″
  PERL_MB_OPT= »–install_base /root/perl5″
  PERL_MM_OPT= »INSTALL_BASE=/root/perl5″
 @INC:
  /root/perl5/lib/perl5/x86_64-linux-thread-multi
  /root/perl5/lib/perl5

Vous me suggérez donc d’ajouter les variables manquantes ?

Oui, il faut ajouter les variables pour l’user centreon-engine (.bash_profile).

  /root/perl5/lib/perl5/x86_64-linux-thread-multi
  /root/perl5/lib/perl5

Tu peux aussi essayer d’ajouter dans .bashrc les ENV :

PERL5LIB= "/root/perl5/lib/perl5:"
PERL_LOCAL_LIB_ROOT= ":/root/perl5"
PERL_MB_OPT= "--install_base /root/perl5"
PERL_MM_OPT= "INSTALL_BASE=/root/perl5"

Reload :

[oracle@centreon ~]$ source ~/.bash_profile

Bonjour,

J’ai ajouté les chemins comme vous l’avez indiqué dans le .bash_profile ; si vous regardez les images, elles sont identiques. Mais même avec ça, ça ne marche pas. Je ne sais pas quoi faire d’autre. Quelle autre alternative recommandez-vous ?

-bash-4.2$ /usr/lib/centreon/plugins//centreon_oracle.pl --plugin=database::oracle::plugin --mode=tnsping --hostname=x.x.x.x--sid=DESA
CRITICAL: Cannot connect: (no error string) |
-bash-4.2$
perl.JPG

Bonjour,
Maintenant que les variables sont Ok, réinstalles les modules perl Oracle :

[root@centreon plugins]# cpan -i DBD::Oracle
[root@centreon plugins]# cpan -i DBI

Bonjour,

Je viens de réinstaller les modules avec l’utilisateur root et c’est toujours la même chose depuis.

Salutations

C’est bizarre. Je vois pas.
Je peux y jeter un coup d’oeil à distance si possible.
sysadmin[at]pixelabs.fr

Bien sûr, je vous enverrai un courriel

Bonjour,

J’utilise Centreon pour effectuer la supervision de mes bases Oracle, tout est OK, sauf la supervision des tablespace, j’aimerai faire un graph en pourcentage restant, or je n’ai pas la possibilité de le faire, j’ai uniquement un graph des tailles de chaque tablespace. Auriez-vous une solution pour, peut être faire un calcul entre la taille totale et la taille restante ou tout simplement récupérer le pourcentage restant (ou le pourcentage utilisé peut importe).

Merci d’avance pour votre aide.

2021-02-19_10h42_26.jpg

Bonjour,
Oui, c’est possible. Il faut jouer avec ce paramètre

--change-perfdata --extend-perfdata
            Change or extend perfdata. Syntax:
            --extend-perfdata=searchlabel,newlabel,target[,[newuom],[min],[m
            ax]]

Tu as des exemples dans la page --help :

    --change-perfdata --extend-perfdata
            Change or extend perfdata. Syntax:
            --extend-perfdata=searchlabel,newlabel,target[,[newuom],[min],[m
            ax]]

            Common examples:

                Change storage free perfdata in used:
                --change-perfdata=free,used,invert()

                Change storage free perfdata in used:
                --change-perfdata=used,free,invert()

                Scale traffic values automaticaly:
                --change-perfdata=traffic,,scale(auto)

                Scale traffic values in Mbps:
                --change-perfdata=traffic_in,,scale(Mbps),mbps

                Change traffic values in percent:
                --change-perfdata=traffic_in,,percent()

Bonjour, 

Merci beaucoup pour ta réponse, je t’avoue que je ne comprends pas très bien comment fonctionne ce paramètre, lorsque je m’en sert, il me demande un argument à mettre entre parenthèse : 

Je ne vois pas trop comment faire, peut être n’est-ce pas possible avec ce mode Oracle ??

Merci d’avance pour ton retour.

Capture.jpg

Il n’y a rien à mettre entre parenthèse :
ajoutes les '...'
--change-perfdata='free,,percent()'
Ma commande :

perl centreon_plugins.pl --plugin=database::oracle::plugin --mode=tablespace-usage --hostname=XX --sid=XX --username=XX--password=XX --change-perfdata='free,,percent()' --verbose --notemp
OK: All tablespaces are OK | [...]
Tablespace 'audt' Total: 4.00 GB Used: 1.00 MB (0.02%) Free: 4.00 GB (99.98%)
Tablespace 'donnees' Total: 128.00 GB Used: 55.84 GB (43.62%) Free: 72.16 GB (56.38%)
Tablespace 'indexes' Total: 128.00 GB Used: 47.91 GB (37.43%) Free: 80.09 GB (62.57%)
Tablespace 'perf' Total: 1.00 GB Used: 154.75 MB (15.11%) Free: 869.25 MB (84.89%)
Tablespace 'sysaux' Total: 32.00 GB Used: 6.29 GB (19.66%) Free: 25.71 GB (80.34%)
Tablespace 'system' Total: 4.00 GB Used: 1.50 GB (37.42%) Free: 2.50 GB (62.58%)

Tu verras le résultat sur le graph et non en ligne de commande.
Egalement, je n’ai pas pour habitude moi aussi d’utiliser ces paramètres, mais il le faut pour améliorer les graph et cibler le résultat.

Edit :
A tester aussi :
--explode-perfdata-max='free,total'

Bonjour,

Merci pour ta réponse.

En effet, cela fonctionne mieux avec les ‘…’

Cependant, mon graphique reste identique par rapport à l’autre version, il y a t’il une conf spécifique à effectuer au niveau du service ou de la commande ?

J’ai testé en forçant le graphique en pourcentage, mais ca ne fonctionne pas mieux.

Merci d’avance pour ta réponse.

Doane

Je sèche désolé.
Je te conseil de faire un ticket ici : https://github.com/centreon/centreon/issues
un expert te donnera surement le bon paramètre
N’hésites pas à faire un retour ici 🙂
Bonne journée.

Bonjour,

N’ayant pas eu de retour sur le site Github, j’ai continué à chercher.

Je suis tombé sur cette requête qui me conviendrait parfaitement :

select
  tablespace_name,
  trunc(used_percent,2)
from
  dba_tablespace_usage_metrics;

le soucis est que lorsque je l’exécute, une seule ligne s’affiche et toutes les valeurs n’y sont pas présentes :

J’aimerai avoir ces valeurs en PJ 1
et j’obtiens ces valeurs en PJ 2

Ma commande complète est la suivante :

/usr/lib/centreon/centreon-plugins/centreon_plugins.pl --plugin=database::oracle::plugin --mode=sql --hostname=jdeora02dev --port=1521 --sid=JDEDEV --username=User --password=Password --sql-statement='select tablespace_name, trunc(used_percent,2) from dba_tablespace_usage_metrics'

Merci d’avance pour votre retour.

Doane

PJ 1.jpg

Salut,

Utilise le monde sql-string :

perl centreon_plugins.pl --plugin=database::oracle::plugin --mode=sql-string --hostname=jdeora02dev --port=1521 --sid=JDEDEV --username=User --password=Password --sql-statement='select tablespace_name, trunc(used_percent,2) from dba_tablespace_usage_metrics' --value-column='TRUNC(USED_PERCENT,2)' --verbose

Tu peux jouer avec d’autres options en affichant de l’aide --help
Il y a surement un moyen pour tout avoir, mais hors de mes compétences, désolé 🙂

Super 🙂
Merci ca me fait avancer 🙂
Bon maintenant… Il me manque toujours quelque chose… Les noms des tablespaces, il me sort bien les valeurs, mais pas les noms.
De base, il me sort que les valeurs en pourcentage
En ajoutant le paramètre –dual-table, il me sort que les noms des tablespace (normal)
Comment pourrais-je faire pour avoir les 2 en même temps ? Du genre pour avoir un syntaxe en clé valeurs.

Merci pour ton temps.

SQL-string.jpg

Oui, c’est la que je sèche moi aussi… 🙂
Je n’arrive pas à récupérer les deux colonnes.
Je vais réessayer quand j’aurais un peu de temps, je suis un peu overbooké au boulot.
Je te tiens au courant si je trouve 🙂

Ca marche, je continue mes recherches et on se tient au courant.
Bon courage 🙂

Bon ca y est j’ai enfin les valeurs que je souhaitais, mais cette fois ci… j’ai trop d’informations…

Est ce que je peux faire un graph personnalisé qu’avec uniquement les pourcentages ?

Afin d’avoir les informations, j’ai utilisé le plugin check_oracle_health

Voici ma commande :
/usr/local/nagios/libexec/check_oracle_health –connect user/password@JDEDEV –mode tablespace-usage

J’ai testé avec le paramètre –units % mais je récupère toujours les mêmes informations…

On avance 🙂

Merci d’avance pour ton aide 🙂

Doane

2021-04-13_16h04_21.jpg

J’ai peut être mal compris, tu veux simplement superviser les tableSpaces ?
Si oui, tu as ce mode déjà :

perl centreon_plugins.pl --plugin=database::oracle::plugin --mode=tablespace-usage --help

Il ne fait pas ce que tu veux vraiment ?

Je veux simplement superviser l’espace utilisé des tablespaces en pourcentage, or le plugin ne le permet pas, au niveau du graph, je n’ai que l’espace utilisé en MB.

Et au final, le plugin check_oracle_health me permet de le faire et j’ai trouvé comment faire pour ne plus avoir les valeurs non désirables.

Il suffit de désactiver les metrics au niveau du menu Administration > Parameters > Data

Merci beaucoup pour ton aide.

Maintenant j’ai tout ce qu’il me faut.

Doane

Ah d’accord. Nickel
Il y a surement un moyen de mettre les graph en % sur le plugin centreon. Je mettrais à jour l’article dés que possible.
Il est bien également le plugin que tu utilises.
A+

Oui, il y a surement un moyen, mais je ne l’ai pas trouvé… j’ai un peu tout tester je pense…

Tiens moi informé si tu peux, car en attendant, le plugin que j’utilise est bien, mais je suis obligé de faire environ 15 retry avant d’avoir mes données sinon ca tombe en time out… Mais ca à le mérite de fonctionner 🙂

Merci à toi

Je retire ce que j’ai dis…
On est entrain de mettre en place la version commerciale et j’ai pas hésité à poser la question à l’expert Centreon, sur les graph ce n’est pas possible, il est allé directement check dans le code..
Il dit qu’il y’aura des mise à jours pour ce plugin Oracle et pas mal d’autres…

On a la réponse 😉

Bon courage avec ton plugin 🙂
Hésites pas si besoin.
a+

Super, merci pour ta réponse 🙂

A+

Bonjour, j’utilise centreon et je trouve votre site super. Je monitore entre autres le remplissage de la FRA. mais je suis confronté à un problème avec mes plateforme en DataGuard pour avoir cette info sur la standby database. La standby database étant en ‘mount’ il faut s’y connecter en sysdba pour avoir accès aux vues system. Or le plugin ne le permet pas ou je ne l’ai pas trouvé. Quel serait la solution ? svp merci d’avance

Salut,
J’ai pas bien compris !
As-tu testé une commande ? t’as un retour, des erreurs ?
-sysadmin

Sur une architecture oracle DataGuard (replication) la base Standby n’est pas OPEN mais en MOUNT. La seule possibilité pour se connecter à une base MOUNT pour requéter les vues system, est de se connecter en SYSDBA. Or avec Centreon je n’ai pas trouvé cette possibilité. J’ai forcement à chaque fois le message « ORA-01033: Oracle initialization or shutdown in progress »
Y a t’il cette possibilité de se connecter en SYSDBA ? et que je serais passé à coté …
Ou faut il utiliser un autre plugin ?
Merci, Cdlt

Salut,
Il y a normalement un mot de passe par défaut pour les comptes dba, system, sysdba.
Si tu ne peux pas, essaies avec un compte simple qui a droit de lire dans la base de données.

Pour l’info que tu cherches, il suffit d’utiliser une requête SQL directement avec le plugin Centreon.

Voici un exemple :
J’ai une base de PROD aussi qui réplique sur une base de test (DataGuard archi aussi).
Lors de la réplication, la base de Test est normalement fermée aux users et une fois la réplication terminée, la base de Test doit être montée et ouvert aux users.
je check donc avec Centreon pour vérifier si la base est montée et bien ouverte aux utilisateurs.
Voici la commande de check :

perl centreon_plugins.pl --plugin=database::oracle::plugin --mode=sql --hostname=DB_SERVER --sid=DB_NAME --username=sysdba --password=PASSWORD --sql-statement='select * from bases' --format='La base est accessible aux utilisateurs'
--sql-statement='select * from bases'

est la requête qui vérifie simplement le statut de la base.

Normalement, si la base n’est pas accessible aux utilisateurs, le service passe en INCONNU.
Il est possible de le forcer pour qu’il passe en CRITICAL et non en INCONNU on rajoutant ce paramètre suivant.

--sql-errors-exit='critical'

Donc, dans ton cas, il suffit aussi de trouver juste la requête qui te retourne l’info que tu cherches et tu check avec Centreon.
Bonne journée,
-sysadmin.

84
0
Nous aimerions avoir votre avis, veuillez laisser un commentaire.x
()
x