Picture of Edward 932
Registered 12 years 8 days
Edward 932 Tuesday, 16 February 2016, 01:04 PM
Nagios / Check_MK abfragen
Hat jemand Erfahrungen mit Check_MK sammeln können?
Derzeit spiele ich da ein wenig rum und habe so ein paar Merkwürdigkeiten entdeckt!
Zuerst wurde der Prozentsatz der belegten Lizenzen falsch berechnet. Das konnte ich noch im checkscript ändern.
Das Problem, das ich nicht beheben kann, ist die Ansicht des Hosts im Check_MK Overview. Hier werden die Channels PRI1 und PRI2, Memory usage und Temperatur mit der Fehlermeldung Unknown dargestellt. Im Crash Report steht: "global name 'check_innovaphone' is not defined".
Sobald ich mir aber im WATO Configuration Menü den Host anschaue, werden alle Werte korrekt angezeigt.

Vielleicht kann mir jemand helfen!

Danke

Ed

Check_MK_Host_Unknown_check_failed.jpg

Picture of Edward 932
Registered 12 years 8 days
Edward 932 Tuesday, 16 February 2016, 01:05 PM
Re: Nagios / Check_MK abfragen
Hier noch der Crash report! crash_report.jpg

Picture of Edward 932
Registered 12 years 8 days
Edward 932 Wednesday, 24 February 2016, 11:09 AM
2 of 2 users consider this post helpful
Re: Nagios / Check_MK abfragen
Habe die Lösung gefunden. Die check_mk Scripte haben einige Fehler! Falls jemand an der Lösung interessiert ist, bitte melden!

Ich würde gerne wissen, wie Ihr eure Systeme überwacht?
Check_MK_running.jpg

Picture of Th0mas
Registered 8 years 61 days
Th0mas Friday, 23 September 2016, 10:48 AM
Re: Nagios / Check_MK abfragen
Hallo Edward,

dein Post ist zwar schon etwas älter aber ich würde gerne erfahren wie du es geschafft hast die einzelnen Interfaces abzufragen.

Bei uns kommt zur Zeit kein check_mk zum Einsatz sondern ein Naemon System. Wäre es möglich, dass du mir die Checks zukommen lässt oder besser noch hier im Forum postest?

Werden die Abfragen von check_mk auch über SNMP realisiert oder wie greifst du die Informationen ab?

Gruß
Thomas
Picture of Edward 932
Registered 12 years 8 days
Edward 932 Wednesday, 2 November 2016, 02:20 PM
Re: Nagios / Check_MK abfragen
Hallo Thomas,

check_mk hat eigene innovaphone plugins, das sind scripte, die die entsprechenden Infos über XML auslesen. Leider habe ich hier nur ein check_mk system, das von unserem Nagios Admin zum Testen verwendet wird und es werden auch mal updates eingespielt. So ist es auch letztens geschehen und meine Änderungen waren futsch!!
Derzeit sieht es so aus, dass check_mk nur PRI interfaces auslesen kann, wenn ich andere Interfaces habe, bekomme ich eine Fehlermeldung. Die Lizenzen wurden auch falsch berechnet. Hier habe ich in den entsprechenden Scripten die Formel angepasst.

Wenn ich mir den Output der Scripte anschaue, bekomme ich die richtigen Werte, aber in der Oberfläche gibt es eine Fehlermeldung und die Werte können nicht dargestellt werden.

Fazit, nett, aber noch nicht brauchbar! Eine SNMP Erweiterung, wie es Lorenz vorgeschlagen hatte macht mehr Sinn.

Grüße

Ed
Picture of Markus 937
Registered 12 years 3 days
Markus 937 Tuesday, 8 November 2016, 03:07 PM
Re: Nagios / Check_MK abfragen
Hallo Edward,

wir sind ebenfalls dabei ein Check-MK aufzusetzen. Wir werden wohl im Dezember soweit sein, dass wir deinen Stand haben. Mal sehen was geht und was nicht. Bin schon ganz gespannt. wink Lass uns mal unsere Erfahrungen austauschen, wenn wir soweit sind. Ich melde mich dann bei dir.

Markus
Daniel Heiden
Registered 9 years 113 days
Daniel 2343 Monday, 12 November 2018, 03:58 PM
Re: Nagios / Check_MK abfragen
Hallo, wir haben auch CheckMK im Einsatz. Derzeit Version 1.5. Leider bekomme ich es nicht hin unsere IPVA oder andere Innovaphonegeräte zu überwachen. Fehlermeldung siehe Screenshot. Hat von euch jemand eine Idee wie ich dies beheben kann?

Ich habe dasfolgendes gemacht:

- - Host-& Serviceparameter

- - Nach„inno“ gesucht

- - „innovaphoneGateways“ angeklickt und eine Regel erstellt

- - Inder Regel ist z.B. der Host „Innotestnov aufgeführt.

- - Wennich bei diesem Host nun nach Services suche, erhalte ich jedoch nur die Ausgabeauf dem Screenshot.

Inno_CheckMK.JPG

Picture of Edward 932
Registered 12 years 8 days
Edward 932 Monday, 12 November 2018, 07:33 PM
Re: Nagios / Check_MK abfragen
Die Standard Check_MK Abfragen sind für Gateways mit einem PRI Anschluss geschrieben worden. D.h. der Check schaut nach PRI Channels ---> get_pri_channel <---- 2. und 3. Zeile der Fehlermeldung. Eine IPVA hat keine PRI Interfaces!
Ich habe mir den Check_mk Agent (agent_innovaphone) genommen und ein wenig modifiziert. In der get_pri_channel Routine habe ich eine Abfrage eingebaut. Sobald diese Abfrage kein PRI,BRI oder TEL Interface findet, bricht die Routine get_pri_channel ab und macht mit den restlichen Abfragen weiter. Ist nicht elegant, aber es funktioniert!

def get_pri_channel(channel_name):
data_url = "/%s/mod_cmd.xml" % channel_name
address = "http://%s%s" % ( server, data_url)
interface = "%s" % channel_name
try:
data = etree.parse(get_url(address)).getroot()
except etree.XMLSyntaxError:
return




Grüße

Ed


Daniel Heiden
Registered 9 years 113 days
Daniel 2343 Tuesday, 13 November 2018, 07:08 AM
Re: Nagios / Check_MK abfragen
Danke!
Kannst du ggf. den ganzen Code des Checks einmal posten?
Daniel Heiden
Registered 9 years 113 days
Daniel 2343 Tuesday, 13 November 2018, 07:31 AM
Re: Nagios / Check_MK abfragen
Den Check habe ich angepasst.
Jedoch erhalte ich nun noch eine Meldung "Permission denied". Der in der Regel "innovaphone Gateways" eingetragene User ist jedoch definitiv berechtigt auf der Anlage.
Inno_Permission.JPG

Daniel Heiden
Registered 9 years 113 days
Daniel 2343 Tuesday, 13 November 2018, 07:41 AM
Re: Nagios / Check_MK abfragen
Wir kommen der Sache näher. Der Fehler von eben war natürlich meiner.. lag natürlich nur an der unzureichenden Berechtigung.

Neuer Fehler:
CRIT - Found 1 inventory entries, [special_innovaphone] Agent exited with code 1: File "/omd/sites/voip/share/check_mk/agents/special/agent_innovaphone", line 55 data_url = "/%s/mod_cmd.xml" % channel_name ^ IndentationError: expected an indented block (!!)
Picture of Edward 932
Registered 12 years 8 days
Edward 932 Tuesday, 13 November 2018, 11:43 AM
Re: Nagios / Check_MK abfragen
Berechtigungen können einen zur Verzweiflung bringen smile
Ich sehe, dass Du die Änderungen in der original Datei machst. Du solltest dir eine Kopie von der Datei machen und die unter /omd/sites/voip/local/share/check_mk/agents/special/ ablegen. Ansonsten werden deine Änderungen bei einem Update von Check_mk überschrieben.
Das Wiederherstellen übt zwar, aber nervt auch total big grin

Grüße

Ed
Daniel Heiden
Registered 9 years 113 days
Daniel 2343 Tuesday, 13 November 2018, 11:55 AM
Re: Nagios / Check_MK abfragen
@Edward, kannst du bitte einmal deinen ganzen Check posten/hochladen?

Ich habe noch ein weiteres Problem. Wir haben eine IPVA sowie physikalische Gateways. Muss dazu nicht auch der Check noch angepasst werden?


Danke für den Hinweis mit der Kopie, hatte ich aber sowieso schon gemacht smile Mit dem überschreiben war mir bekannt - das hatten wir schon mal.
Picture of Edward 932
Registered 12 years 8 days
Edward 932 Tuesday, 13 November 2018, 04:33 PM
Re: Nagios / Check_MK abfragen
Das wird schwierig, da die Scripts nicht voll funktionsfähig (fertig) sind. Das was schon gut funktioniert ist die PRI,BRI,TEL Abfrage und die PBX Mode Abfrage. Wenn z.B. keine PBX Funktion aktiviert ist (z.B. IP302 im V12R2), werden die Lizenzen auch nicht abgefragt, da ansonsten eine Fehlermeldung erzeugt wird.

Auszug agent_innovphone:

---> Definition get_pri_channel <---
def get_pri_channel(channel_name):
---->data_url = "/%s/mod_cmd.xml" % channel_name
---->address = "http://%s%s" % ( server, data_url)
---->interface = "%s" % channel_name
---->try:
--------->data = etree.parse(get_url(address)).getroot()
---->except etree.XMLSyntaxError:
--------->return
---->link = data.get('link')
---->physical = data.get('physical')
---->if link != "Up" or physical != "Up":
-------->print "%s %s %s 0 0 0" % ( channel_name, link, physical )
-------->return
---->idle = 0
---->total = 0
---->for channel in data.findall('ch'):
--------->if channel.get('state') == 'Idle':
-------------->idle += 1
--------->total += 1
---->if channel_name.startswith('PRI'):
--------->total -= 1
----->print "%s %s %s %s %s" % ( channel_name, link, physical, idle, total)
---> Definition PBX MODE <---
def get_pbxmode():
---->global mode
---->address = "http://%s/CMD0/box_info.xml" % server
---->for line in etree.parse(get_url(address)).iterfind('modes'):
-------->mode = line.get('modes')
---->mode = mode.split("!")[1]
---->print "%s" % mode


---> Abfrage PRI/BRI oder TEL <---
print "<<<%schannels>>>" % s_prefix
for what in [ "PRI", "BRI", "TEL"]:
---->for channel in range(1,5):
--------->get_pri_channel(what+str(channel))
---> Abfrage PBX Mode <---
print "<<<%sPBXmode>>>" % s_prefix
get_pbxmode()

if mode == ('pbx0'):
---->print "<<<%slicenses>>>" % s_prefix
---->get_licenses()
Die ---> musste ich hinzufügen, da die Formartierung nicht übernommen wurde.
Für diese Abfragen mussten die checks und das innovaphone.include nicht angepasst werden.

Ist "quick and dirty" und ich bin kein Programmierer! smile
Optimierungen sind herzlich willkommen!
Picture of Nathanael 3988
Registered 6 years 225 days
Nathanael 3988 Tuesday, 27 November 2018, 04:11 PM
Re: Nagios / Check_MK abfragen
Voll super was ihr hingekriegt habt. Ich hab es versucht nachzubauen in meinem Check_mk und krieg das auch hin bis auf die BRI/PRI/TEL Interfaces. ich lauf immer in den selben ERROR

OMD[prod]:~$ cmk -d someHostname
ERROR [special_innovaphone]: Agent exited with code 1: Traceback (most recent call last):
File "/omd/sites/prod/local/share/check_mk/agents/special/agent_innovaphone", line 115, in <module>
get_pri_channel(what+str(channel))
File "/omd/sites/prod/local/share/check_mk/agents/special/agent_innovaphone", line 60, in get_pri_channel
except etree.XMLSyntaxError:
AttributeError: 'module' object has no attribute 'XMLSyntaxError'


habe was habe ich übersehen? hier mein code:

https://pastebin.com/cdnUtBvX


habt ihr mir hier einen Tipp?

Danke im voraus
Picture of Edward 932
Registered 12 years 8 days
Edward 932 Wednesday, 28 November 2018, 01:32 PM
Re: Nagios / Check_MK abfragen
Versuch mal den Befehl auf deinem Gateway auszuführen:
http://IP/PRI1/mod_cmd.xml

Mach hierzu bitte den Browser neu auf und gib den Link ein. Dann solltest Du ein Anmeldefenster bekommen. Hier bitte den Benutzer und Passwort eintragen, das Du für die Nagiosabfragen vorgesehen hast.

Bekommst Du hier auch eine Fehlermeldung?

Grüße

Ed
Picture of stganmat
Registered 2 years 361 days
stganmat Friday, 6 October 2023, 02:51 PM in response to Edward 932
Re: Nagios / Check_MK abfragen
Hallo,

wir haben auch unsere Innovaphone Appliance sowie die physichen Geräte überwacht.
Jedoch fehlen mir alle restlichen Informationen wie z.b Licenses, Memory, Temperatur usw.

Wo genau finde ich diese Checks bzw. was muss ich tun um diese in checkmk zu implementieren?

Danke für eure Hilfe!
Picture of Jesse 4205
Registered 6 years 59 days
Jesse 4205 Friday, 6 October 2023, 03:16 PM
Re: Nagios / Check_MK abfragen
Hallo,

die Werte sind in XML Files per Web zu finden.
Habe mal vor vielen Jahren für uns eine check für Icinga/Nagios geschrieben. Vielleicht hilft dir das:
https://github.com/hashfunktion/check_innovaphone

Grüß
Jesse
← You can define your color theme preference here