Added port probing service. (0.25.6)
This commit is contained in:
parent
dfcdd07a84
commit
3a0f555dd3
3 changed files with 21 additions and 15 deletions
|
|
@ -20,7 +20,7 @@ from linspector.environment import Environment
|
||||||
from linspector.linspector import Linspector
|
from linspector.linspector import Linspector
|
||||||
from linspector.monitors import Monitors
|
from linspector.monitors import Monitors
|
||||||
|
|
||||||
__version__ = '0.25.5'
|
__version__ = '0.25.6'
|
||||||
__author__ = 'Johannes Findeisen <you@hanez.org>'
|
__author__ = 'Johannes Findeisen <you@hanez.org>'
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -15,21 +15,28 @@ def create(configuration, environment, log):
|
||||||
|
|
||||||
class PortService(Service):
|
class PortService(Service):
|
||||||
|
|
||||||
def execute(self, execution, **kwargs):
|
def execute(self, identifier, monitor, service, **kwargs):
|
||||||
|
|
||||||
error_code = 0
|
|
||||||
msg = "Connection successful established"
|
|
||||||
|
|
||||||
try:
|
try:
|
||||||
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
||||||
except socket.error as err:
|
sock.connect((monitor.get_host(), int(kwargs['port'])))
|
||||||
error_code = 2
|
sock.close()
|
||||||
msg = "Could not create socket"
|
|
||||||
|
|
||||||
try:
|
self._log.info('Connection to host ' + monitor.get_host() + ' on port ' +
|
||||||
sock.connect((execution.get_host_name(), self.port))
|
kwargs['port'] + ' successful')
|
||||||
except socket.error as err:
|
|
||||||
error_code = 1
|
return {'status': 'OK',
|
||||||
msg = "Could not establish connection"
|
'message': 'Connection to host ' + monitor.get_host() + ' on port ' +
|
||||||
|
kwargs['port'] + ' successful', 'host': monitor.get_host(),
|
||||||
|
'service': service}
|
||||||
|
|
||||||
|
except Exception as err:
|
||||||
|
self._log.info('Connection to host ' + monitor.get_host() + ' on port ' +
|
||||||
|
kwargs['port'] + ' failed (' + str(err))
|
||||||
|
|
||||||
|
return {'status': 'ERROR',
|
||||||
|
'message': 'Connection to host ' + monitor.get_host() + ' on port ' +
|
||||||
|
kwargs['port'] + ' failed (' + str(err) +
|
||||||
|
')', 'host': monitor.get_host(),
|
||||||
|
'service': service}
|
||||||
|
|
||||||
sock.close()
|
|
||||||
|
|
|
||||||
|
|
@ -37,7 +37,6 @@ class IsConnectedService(Service):
|
||||||
' status=' + ('OK' if fc.is_connected else 'ERROR'))
|
' status=' + ('OK' if fc.is_connected else 'ERROR'))
|
||||||
|
|
||||||
result = {"host": monitor.get_host(),
|
result = {"host": monitor.get_host(),
|
||||||
|
|
||||||
"message": "Uplink on host " + monitor.get_host() + " " +
|
"message": "Uplink on host " + monitor.get_host() + " " +
|
||||||
('UP' if fc.is_connected else 'DOWN'),
|
('UP' if fc.is_connected else 'DOWN'),
|
||||||
"service": service,
|
"service": service,
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue