Many of our monitoring checks in our current product that we are converting to Solarwinds heavily utilize inline PL/SQL to perform the analysis on the Oracle databases they monitor.
One of the challenges we have with our current product is that we are forced to run the PL/SQL in Oracle's SQL*PLUS program. We run Bash scripts that execute SQL*PLUS which then runs the inline PL/SQL block.
In order for us to run SQL*PLUS, we are forced to manually install and edit custom environment files on each monitored target. This is required, because in LINUX environments, you have to know the location of the SQL*PLUS program.
Solarwinds provides an Oracle User Experience component which allows us to embed SQL statements that access the database directly. Since the calls originate from the SAM environment, there is no need to source any other programs (like SQL*PLUS).
We attempted to embed an inline PL/SQL block into the Oracle User Experience Monitor. Oracle interprets the PL/SQL correctly, but we are unable to return the values generated by the PL/SQL program back to Solarwinds for analysis. The message being returned is "no rows returned". We tried DBMS_OUTPUT, RETURN, PRINT and OUT variables. None worked.
We are unable to rely upon any language being installed on the monitored targets, so there is no way that we can rely upon Perl, or any other language being available to execute the PL/SQL. BASH will be available but iit can only use SQL*PLUS to access the Oracle database.
The question we have is - is there ANY way we can return values back from an inline PL/SQL program to Solarwinds using the Oracle User Experience Monitor?
↧
Solarwinds SAM Oracle User Experience Component Monitor Running PL/SQL (and returning results)
↧