Oracle multiple SID tnsping ?

  • 6 June 2023
  • 8 replies

Badge +2

Hi Centreonians,

The manage only one servicename parameter.

Is there a solution for monitoring multiple Oracle SID running on the same server ?




Best answer by christophe.niel-ACT 7 June 2023, 13:06

View original

8 replies

Userlevel 5
Badge +14

did you follow the installation procedure Oracle Database | Centreon Documentation and dos the plugin works correctly when you run it on a SID you configured?

if yes, then you can run as many service check as you want


what you cannot do is check multiple service/SID/Server on the same “check”, but nothing prevents you to have 1 check per SID (or servicename)

Badge +2

Hi Christophe,

Yes, a check by SID is exactly what I want but how do I do many tnsping services for the same host? The SID is set to a host macro inherited from the App-DB-Oracle model.


Userlevel 5
Badge +14

ahh, you need to split “system” host and “app” host

I needed to do the same thing with multiple MS SQL instance

you will need to create a host per SID, I basically use the generic_active_host custom template to get ping and “host alive” then add the app template, oracle in your case


you could also play with host dependency and have all the oracle app host dependant on the system host (you will get unreachable instead of critical on the child host)

Badge +2

Thanks Christophe but creating a host by SID is exactly what I'm afraid of!
A better solution anyone?

Userlevel 5
Badge +14

You can create a custom check command, copy paste the command from the plugin , change the host macro to a service macro

Then create a custom service template based on your new check command

You will be able to make as many service as you want based on your new template 

Badge +2

Thanks a lot Christophe, creating a custom check command for each SID seems to be a good solution !

Userlevel 5
Badge +11

A massive shout-out to @christophe.niel-ACT for helping ! 🙌

Userlevel 5
Badge +14

Thanks a lot Christophe, creating a custom check command for each SID seems to be a good solution !

ha I didn’t really said that !!

you need only one custom command, take the tnsping command from your config, create a new check comand and replace “$_HOSTSID$” by “$_SERVICESID$”, then you make a custom service template and tell it to use this new command

($_HOSTxxx$ will tell centreon to create a macro on the host template, $_SERVICExxx$ will make the macro available on the service template)

it will automatically create a new input field “SID” on the service when you use this template, where you will be able to input your desired SID

and then duplicate this service how many time you want, based on the same template, and just change the name and macro


you can of course do it the hard way and have 1 command for 1 sid and put the SID statically in the command, but the whole point of templates and macros is to have 1 command and 1 template, and many services (easier to manage and maintain and reuse)

if reusability is not an issue, then sure, the hardway is probably easier in your case