Thursday, June 20th 2013, 7:18am UTC+2

You are not logged in.

  • Login
  • Register

Dear visitor, welcome to Monitoring-Portal.
Although this is a german monitoring forum, please don't hesitate to post in English. Nearly everybody here understands you and will answer in English as well.
If this is your first visit here, please read the Help. It explains how this page works. You must be registered before you can use all the page's features. Please use the registration form to register here or read more information about the registration process. If you are already registered, please login here.

robs

Trainee

Posts: 141

Gender: male

Number of monitoring servers: 2

Nagios Version: 3.0.1

Distributed monitoring: Nein

Redundant monitoring: Nein

Number of hosts: 300

Number of services: 900

OS: CentOS, div Linux

Plugin Version: 1.4.11

NagVis Version: 1.3rc1

1

Monday, October 27th 2008, 5:41pm

check_oracle_health - nosqlplus

Nach einem Systemcrash vom Nagiosserver wollte das check_oracle_health plugin nicht mehr.
folgende meldung kam:

Source code

1
install_driver(Oracle) failed: Can't load '/usr/lib64/perl5/site_perl/5.8.8/x86_64-linux-thread-multi/auto/DBD/Oracle/Oracle.so' for module DBD::Oracle: libclntsh.so.10.1: cannot open shared object file: No such file or directory at /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/DynaLoader.pm line 230.


auf der kommandozeile lief es aber, unter nagios und root

in dem zuge mal auf 1.5 geupdatet und mit der option --method=sqlplus probiert

selbes ergebniss - auf der kommandozeile läuft es und im nagios nicht.
dort kommt jetzt folgende meldung

cannot connect to DBCLUSTER. nosqlplus

ich bin ehrlich etwas ideenlos. wäre cool wenn jemand helfen könnte

danke

WolverineJR

Professional

Posts: 843

Gender: male

Location: Nähe Frankfurt

Occupation: Sys-Admin

Number of monitoring servers: 1

Nagios Version: 3.2.1

Distributed monitoring: Nein

Redundant monitoring: Nein

Number of hosts: ~ 250

Number of services: ~ 2500

OS: Debian Lenny

Plugin Version: 1.4.15

NagVis Version: 1.5.1

Other Addons: PnP 0.6.11, SNMPTT 0.1.2, NagTrap 0.1.3, DokuWiki, SMSTools, mklivestatus

2

Tuesday, October 28th 2008, 7:27am

Wie lautet denn genau der "check_oracle_health"-Aufruf, welcher den beschriebenen Fehler liefert?
Wie sieht der Kommandozeielenaufruf und die Kommando- und Servicedefinition im Nagios aus?

P.S.: Was verstehst Du unter einem Systemcrash?? Bei mir bedeutet ein Systemcrash Hardwareausfall und Zurückspielen einer Systemsicherung bzw. Neuinstallation.
Gruß,

Wolvie

--> Wer glaubt das Projektmanager Projekte managen, glaubt auch das Zitronenfalter Zitronen falten. :P

lausser

Professional

Posts: 1,465

Gender: male

Location: München

Occupation: Informatiker

Number of monitoring servers: 1

Nagios Version: 3.2.0

Distributed monitoring: Ja

Redundant monitoring: Ja

Number of hosts: 2000

Number of services: 50000

OS: Linux/SLES11, CentOS5.5

Plugin Version: 1.4.14

NDO Version: 1.4b7

Other Addons: PNP,mod_gearman,OMD,coshsh

3

Tuesday, October 28th 2008, 11:04am

Hi,
kann es sein, daß der laufende Nagios-Prozess kein Oracle-Environment hat? ($ORACLE_HOME)
Gerhard

robs

Trainee

Posts: 141

Gender: male

Number of monitoring servers: 2

Nagios Version: 3.0.1

Distributed monitoring: Nein

Redundant monitoring: Nein

Number of hosts: 300

Number of services: 900

OS: CentOS, div Linux

Plugin Version: 1.4.11

NagVis Version: 1.3rc1

4

Tuesday, October 28th 2008, 12:05pm

so mal zur Konfiguration

Source code

1
2
3
4
5
6
7
8
9
10
11
12
define service {
host_name                       testdbsrv
use                             Generic-rz-db-Service
service_description             TNSPING auf testdb
check_command                   check_oracle_health!TESTDB!tnsping
servicegroups					rz_db_tnsping
}

define command{
command_name    check_oracle_health
command_line    $USER1$/check_oracle_health --connect=$ARG1$ --mode=$ARG2$ $ARG3$
}


kommandozeile war

./check_oracle_health --connect=TESTDB --mode=tnsping

der NagiosUser hat die etsprechende Environment Variable - auf der Kommandozeile funktionierrt das Plugin auch mit dem Nagiosuser

lausser

Professional

Posts: 1,465

Gender: male

Location: München

Occupation: Informatiker

Number of monitoring servers: 1

Nagios Version: 3.2.0

Distributed monitoring: Ja

Redundant monitoring: Ja

Number of hosts: 2000

Number of services: 50000

OS: Linux/SLES11, CentOS5.5

Plugin Version: 1.4.14

NDO Version: 1.4b7

Other Addons: PNP,mod_gearman,OMD,coshsh

5

Tuesday, October 28th 2008, 12:41pm

Wird der Nagios-Prozess von diesem User per Hand gestartet? Oder passiert das beim Booten per Init-Script? Falls letzteres der Fall ist, wird in diesem Init-Script die ORACLE_HOME-Variable gesetzt?

Gerhard

robs

Trainee

Posts: 141

Gender: male

Number of monitoring servers: 2

Nagios Version: 3.0.1

Distributed monitoring: Nein

Redundant monitoring: Nein

Number of hosts: 300

Number of services: 900

OS: CentOS, div Linux

Plugin Version: 1.4.11

NagVis Version: 1.3rc1

6

Tuesday, October 28th 2008, 12:45pm

nagios wird beim start hochgefahren. ich kenn mich leider mit den umgebungsvariablen nicht so gut aus ich frag mal nach

robs

Trainee

Posts: 141

Gender: male

Number of monitoring servers: 2

Nagios Version: 3.0.1

Distributed monitoring: Nein

Redundant monitoring: Nein

Number of hosts: 300

Number of services: 900

OS: CentOS, div Linux

Plugin Version: 1.4.11

NagVis Version: 1.3rc1

7

Tuesday, October 28th 2008, 1:20pm

kollege hat gerade noch mal kurz was getestet, dem nach sind die variablen alle korrekt gesetzt - kann man das prüfen?

pitchfork

Administrator

Posts: 18,608

Location: Kassel

Occupation: Sysadmin SAP / Linux / AIX

Number of monitoring servers: 2

Hobbies: Motorrad fahren, wenns die Zeit erlaubt :-)

Nagios Version: 3.2.3 ( OMD )

Distributed monitoring: Nein

Redundant monitoring: Nein

Number of hosts: 360

Number of services: 6700

OS: Debian 6.0

Plugin Version: 1.4.x

Other Addons: SNMPTT, NagTrap, check_mk, PNP-0.6.x. Thruk

8

Tuesday, October 28th 2008, 1:45pm

Das sollte dein Kollege wissen, er hat es ja geprüft und dir gesagt das alles stimmt.
Damit sollte er in der Lage sein das zu prüfen, es sei denn er hat dich verar***
+++ PNP Developer +++ PNP 0.6.21 ist online ! +++
Hilfreiche Infos gefunden? Dann schnell ein paar Cent flattrn
OMD - Open Monitoring Distribution

robs

Trainee

Posts: 141

Gender: male

Number of monitoring servers: 2

Nagios Version: 3.0.1

Distributed monitoring: Nein

Redundant monitoring: Nein

Number of hosts: 300

Number of services: 900

OS: CentOS, div Linux

Plugin Version: 1.4.11

NagVis Version: 1.3rc1

9

Tuesday, October 28th 2008, 1:46pm

nach der manuellen eintragung der variable im script geht das plugin, wir haben leider keine idee warum die variablen nicht genutzt werden

was ich vorher vergessen hatte wir nutzen jetzt die --method=sqlplus option

lausser

Professional

Posts: 1,465

Gender: male

Location: München

Occupation: Informatiker

Number of monitoring servers: 1

Nagios Version: 3.2.0

Distributed monitoring: Ja

Redundant monitoring: Ja

Number of hosts: 2000

Number of services: 50000

OS: Linux/SLES11, CentOS5.5

Plugin Version: 1.4.14

NDO Version: 1.4b7

Other Addons: PNP,mod_gearman,OMD,coshsh

10

Tuesday, October 28th 2008, 2:12pm

Wo wurde was manuell eingetragen?
Das Plugin macht grob gesagt sowas hier:

Source code

1
2
3
4
5
$sqlplus = $ORACLE_HOME/bin/sqlplus
falls es $ORACLE_HOME/sqlplus gibt, wenn also der Instant Client installiert wurde, dann
   $sqlplus = $ORACLE_HOME/sqlplus
Und wenn es keine ausführbare Datei $sqlplus gibt, dann
  print "nosqlplus"

Wenn dieses "nosqlplus" bei dir erscheint, dann kann das eigentlich nur daran liegen, daß der Nagios-Prozess und somit das von ihm aufgerufene Plugin die $ORACLE_HOME-Variable nicht kennt. Das sqlplus-Binary ist ja da, sonst würde auch auf der Kommandozeile "nosqlplus" erscheinen.
Also muss
export ORACLE_HOME=.......
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${ORACLE_HOME}/lib
export ORA_NLS33=${ORACLE_HOME}/nls/data
oder sowas ähnliches im Init-Script stehen.

Gerhard

robs

Trainee

Posts: 141

Gender: male

Number of monitoring servers: 2

Nagios Version: 3.0.1

Distributed monitoring: Nein

Redundant monitoring: Nein

Number of hosts: 300

Number of services: 900

OS: CentOS, div Linux

Plugin Version: 1.4.11

NagVis Version: 1.3rc1

11

Tuesday, October 28th 2008, 2:15pm

gleich zu beginn des programms:

Source code

1
$ENV{ORACLE_HOME} = "/oracle/orahome10";


okay kann ich selber prüfen ob diese variablen schon gesetzt wurden? wenn ja wo?

lausser

Professional

Posts: 1,465

Gender: male

Location: München

Occupation: Informatiker

Number of monitoring servers: 1

Nagios Version: 3.2.0

Distributed monitoring: Ja

Redundant monitoring: Ja

Number of hosts: 2000

Number of services: 50000

OS: Linux/SLES11, CentOS5.5

Plugin Version: 1.4.14

NDO Version: 1.4b7

Other Addons: PNP,mod_gearman,OMD,coshsh

12

Tuesday, October 28th 2008, 2:38pm

Source code

1
2
3
4
5
6
7
#! /usr/bin/perl
if ($ENV{ORACLE_HOME}) {
   printf "Mein ORACLE_HOME ist %s\n", $ENV{ORACLE_HOME};
} else {
  printf "Ich hab kein ORACLE_HOME!!! *Heul*\n";
}
exit 0;

in check_oracle_health ganz am Anfang einbauen und dann schauen, was in der Weboberfläche als Meldung auftaucht.

robs

Trainee

Posts: 141

Gender: male

Number of monitoring servers: 2

Nagios Version: 3.0.1

Distributed monitoring: Nein

Redundant monitoring: Nein

Number of hosts: 300

Number of services: 900

OS: CentOS, div Linux

Plugin Version: 1.4.11

NagVis Version: 1.3rc1

13

Tuesday, October 28th 2008, 2:50pm

okay :)

Quoted

[root@nagios libexec]# ./check_oracle_health
Mein ORACLE_HOME ist /oracle/orahome10
[root@nagios libexec]# su - nagios
[nagios@nagios ~]$ /usr/local/nagios/libexec/check_oracle_health
Mein ORACLE_HOME ist /oracle/orahome10


in der weboberfläche kommt leider

Ich hab kein ORACLE_HOME!!! *Heul*

also muss ich jetzt irgendwo im /etc/init.d/nagios diese export **** zeilen einfügen?

robs

Trainee

Posts: 141

Gender: male

Number of monitoring servers: 2

Nagios Version: 3.0.1

Distributed monitoring: Nein

Redundant monitoring: Nein

Number of hosts: 300

Number of services: 900

OS: CentOS, div Linux

Plugin Version: 1.4.11

NagVis Version: 1.3rc1

14

Tuesday, October 28th 2008, 3:56pm

nach dem motto kaum macht mans richtig....

steht jetzt das hier im /etc/init.d/nagios

Quoted

export LD_LIBRARY_PATH=/usr/lib:/oracle/orahome10/lib
export ORACLE_BASE=/oracle/orahome10
export ORACLE_HOME=/oracle/orahome10


jetzt sieht es so aus als obs geht


-------------
btw:
systemcrash heißt nagios hat sich am samstag mittag "aufgehängt" 100% cpu last nichts ging mehr
da half nur noch hart den server ausschalten

warum es vorher aber ohne diese extra einstellungen ging weiß ich nicht

contact_name

Professional

Posts: 710

Gender: male

Location: DMZ

Number of monitoring servers: 2

Nagios Version: 3.2.x

Distributed monitoring: Ja

Redundant monitoring: Nein

Number of hosts: 1300

Number of services: 9100

OS: SLES10

Plugin Version: 1.4.x

NagVis Version: 1.4

NDO Version: 1.4

Other Addons: NagiosGrapher, Business Process AddOns, netMySLA

15

Tuesday, October 28th 2008, 5:34pm

Ich habe das gleiche Problem. An der Kommandozeile als User nagios funktioniert alles einwandfrei. Aber im Nagios-Daemon nicht.

Ich habe im Nagios-Initskript jetzt eine Funktion eingebaut, die ich vor dem Daemon-Start aufrufe:

Source code

1
2
3
4
5
6
7
8
oraenv () {
	ORAHOME=/opt/oracle
	export LD_LIBRARY_PATH=/usr/lib:$ORAHOME/product/10.2/db_1/lib
	export ORACLE_BASE=$ORAHOME
	export ORACLE_HOME=$ORAHOME/product/10.2/db_1
	export ORA_CRS_HOME=$ORAHOME/product/10gR2/crs
	export ORA_ASM_HOME=$ORAHOME/product/10gR2/asm
}


Trotzdem funzt es nicht. -_-

Source code

1
CRITICAL - cannot connect to testhost. ERROR OCIEnvNlsCreate. Check ORACLE_HOME (Linux) env var or PATH (Windows) and or NLS settings, permissions, etc.


Meine tnsnames.ora liegt in /etc und die funktioniert auch einwandfrei. Check_oracle kommt damit klar, check_oracle_health aber nicht. :(

Ich glaube, ich schreibe mir jetzt mal ein Plugin, welches mir das Environment des Nagios-Prozesses ausgibt.
Hat jemand eine bessere Idee?

lausser

Professional

Posts: 1,465

Gender: male

Location: München

Occupation: Informatiker

Number of monitoring servers: 1

Nagios Version: 3.2.0

Distributed monitoring: Ja

Redundant monitoring: Ja

Number of hosts: 2000

Number of services: 50000

OS: Linux/SLES11, CentOS5.5

Plugin Version: 1.4.14

NDO Version: 1.4b7

Other Addons: PNP,mod_gearman,OMD,coshsh

16

Wednesday, October 29th 2008, 12:19am

OCIEnvNlsCreate...hmmm, schau mal mit env | grep NLS auf der Kommandozeile nach, ob es da Oracle-relevante Variablen gibt. ORA_NLS33 wäre so ein Kandidat. Die Variable müsste auch ins Initscript.
Eventuell auch noch TNS_ADMIN=/etc

Gerhard

contact_name

Professional

Posts: 710

Gender: male

Location: DMZ

Number of monitoring servers: 2

Nagios Version: 3.2.x

Distributed monitoring: Ja

Redundant monitoring: Nein

Number of hosts: 1300

Number of services: 9100

OS: SLES10

Plugin Version: 1.4.x

NagVis Version: 1.4

NDO Version: 1.4

Other Addons: NagiosGrapher, Business Process AddOns, netMySLA

17

Wednesday, October 29th 2008, 10:46am

Source code

1
2
nagios@blubb:~> env | grep NLS
XNLSPATH=/usr/X11R6/lib/X11/nls


Ich habe jetzt noch TNS_ADMIN=/etc in's init-Skript aufgenommen und siehe da:

Quoted

Status Information: OK - connection established to host.subdomain.domain.


Danke! :thumbup:
Und auch allgemein noch mal ein großes dankeschön für das Plugin.

Edit:
noch für die Suchmaschine -- meine Lösung:

Source code

1
2
3
4
5
6
7
8
9
oraenv () {
        ORAHOME=/opt/oracle
        export LD_LIBRARY_PATH=/usr/lib:$ORAHOME/product/10.2/db_1/lib
        export ORACLE_BASE=$ORAHOME
        export ORACLE_HOME=$ORAHOME/product/10.2/db_1
        export ORA_CRS_HOME=$ORAHOME/product/10gR2/crs
        export ORA_ASM_HOME=$ORAHOME/product/10gR2/asm
        export TNS_ADMIN=/etc
}


und dann in den case start) vor der Zeile "$NagiosBin -d $NagiosCfgFile" einfügen:

Source code

1
oraenv