Service Erkennung Mikrotik API

Danke das du mir so viel hilfst, allerdings ist der Router latest stable version quasi 1 Woche alt, und mit der vor Version ist das auch alles so.
Ich glaube die librouteros2 ist quasi doch anders und nicht mit dem check_mikrotik kompatibel, da Mikrotik in der Version 6.43 einiges an der Api geändert hat was auch das absetzen vom Commands betrifft ist die inkompatibiliät auch nicht sehr ausgeschlossen´. Siehe letzte logfile

ich habe die Abfrage im test explizit ohne SSL durchgeführt, der händische Aufruf zeigt mir auch bei ausgeschaltetem SSL keine Fehler. parameter -n

Test des Plugin ohne SSL
/omd/sites/mysite/local/share/check_mk/agents/special/agent_mikrotik -n -u ‘red-man’ -p ‘password’ -c 2001 -i bgp,ospf,vrrp,health,board ‘192.168.199.1’
<<<check_mk>>>
Version: 0.2-MikroTik
<<<mikrotik_bgp>>>
<<<mikrotik_health>>>
<<<mikrotik_temp>>>
temperature 35
cpu-temperature 54
cpu-overtemp-check True
cpu-overtemp-startup-delay 1m
cpu-overtemp-threshold 100
<<<mikrotik_fan>>>
fan1-speed 3862
use-fan main
fan-mode auto
fan2-speed 0
active-fan main
<<<mikrotik_power>>>
power-consumption 27.4
current 1140
voltage 24.1
<<<mikrotik_vrrp>>>
<<<mikrotik_ospf>>>
<<<mikrotik_board>>>
factory-firmware 3.22
firmware-type tilegx
routerboard True
upgrade-firmware 6.46.6
model CCR1016-12G
current-firmware 6.46.5
routeros-tile 6.46.6

Komisch ist das ich im Datasource auswähle “Do not use SSL to connect to API”
dein vorgeschlagener test mit cmk --debug -vvI maingate aber den Paramenter -n nicht setzt.

[special_mikrotik] Calling external program “/omd/sites/mysite/local/share/check_mk/agents/special/agent_mikrotik -u ‘red-man’ -p ‘password’ -c 2001 -i bgp,ospf,vrrp,health,board ‘192.168.199.1’”

und da ich in der agent_mikrotik quasi im SSL Connection Strink das SSL rausgenommen habe, so das er es immer ohne SSL versucht. tauchen dann eben auch keine SSL fehler mehr auf.
Hier meine anpassungen

if nossl:
api = connect(username=user, password=password, host=host, port=port)
else:
#    ctx = ssl.create_default_context()
#    ctx.check_hostname = False
#    ctx.verify_mode = ssl.CERT_NONE
#    ctx.set_ciphers('ADH')
#    api = connect(username=user, password=password, host=host, ssl_wrapper=ctx.wrap_socket, port=port)
 api = connect(username=user, password=password, host=host, port=port)

Traceback (most recent call last):
File “/omd/sites/mysite/bin/cmk”, line 94, in
exit_status = modes.call(mode_name, mode_args, opts, args)
File “/omd/sites/mysite/lib/python/cmk_base/modes/init.py”, line 72, in call
return mode.handler_function(*handler_args)
File “/omd/sites/mysite/lib/python/cmk_base/modes/check_mk.py”, line 1498, in mode_discover
discovery.do_discovery(hostnames, options.get(“checks”), options[“discover”] == 1)
File “/omd/sites/mysite/lib/python/cmk_base/discovery.py”, line 137, in do_discovery
only_new, on_error)
File “/omd/sites/mysite/lib/python/cmk_base/discovery.py”, line 171, in _do_discovery_for
on_error=on_error)
File “/omd/sites/mysite/lib/python/cmk_base/discovery.py”, line 838, in _discover_services
check_plugin_name, on_error):
File “/omd/sites/mysite/lib/python/cmk_base/discovery.py”, line 951, in _execute_discovery
discovery_function = _get_discovery_function_of(check_plugin_name)
File “/omd/sites/mysite/lib/python/cmk_base/discovery.py”, line 979, in _get_discovery_function_of
(discovery_function.name, check_plugin_name, discovery_function_args))
cmk.utils.exceptions.MKGeneralException: The discovery function “inventory_mikrotik_bgp” of the check “mikrotik_bgp” is expected to take a single argument (info or parsed), but it’s taking the following arguments: [‘checkname’, ‘info’]. You will have to change the arguments of the discovery function to make it compatible with this Checkmk version.