# Description: hddtemp netdata python.d module
# Author: Pawel Krupa (paulfantom)
-from base import NetSocketService
+from base import SocketService
# default module values (can be overridden per job in `config`)
#update_every = 2
}
-class Service(NetSocketService):
+class Service(SocketService):
def __init__(self, configuration=None, name=None):
- NetSocketService.__init__(self, configuration=configuration, name=name)
+ SocketService.__init__(self, configuration=configuration, name=name)
self.request = ""
self.host = "127.0.0.1"
self.port = 7634
return False
-class NetSocketService(SimpleService):
+class SocketService(SimpleService):
def __init__(self, configuration=None, name=None):
self.host = "localhost"
self.port = None
self.sock = None
+ self.unix_socket = ""
self.request = ""
SimpleService.__init__(self, configuration=configuration, name=name)
"""
if self.sock is None:
try:
- sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
- sock.settimeout(self.update_every)
- sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
- sock.connect((self.host, self.port))
+ if len(self.unix_socket) == 0:
+ sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
+ sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
+ sock.settimeout(self.update_every)
+ sock.connect((self.host, self.port))
+ else:
+ sock = socket.socket(socket.AF_UNIX, socket.SOCK_DGRAM)
+ sock.settimeout(self.update_every)
+ sock.connect(self.unix_socket)
+
except Exception as e:
self.error(e)
self.sock = None
else:
self.name = str(self.name)
try:
- self.host = str(self.configuration['host'])
- except (KeyError, TypeError):
- self.error("No host specified. Using: '" + self.host + "'")
- try:
- self.port = int(self.configuration['port'])
+ self.unix_socket = int(self.configuration['unix_socket'])
except (KeyError, TypeError):
- self.error("No port specified. Using: '" + str(self.port) + "'")
+ self.error("No unix socket specified. Trying TCP/IP socket.")
+ try:
+ self.host = str(self.configuration['host'])
+ except (KeyError, TypeError):
+ self.error("No host specified. Using: '" + self.host + "'")
+ try:
+ self.port = int(self.configuration['port'])
+ except (KeyError, TypeError):
+ self.error("No port specified. Using: '" + str(self.port) + "'")
try:
self.request = str(self.configuration['request'])
except (KeyError, TypeError):
# Description: squid netdata python.d module
# Author: Pawel Krupa (paulfantom)
-from base import NetSocketService
+from base import SocketService
# default module values (can be overridden per job in `config`)
# update_every = 2
}
-class Service(NetSocketService):
+class Service(SocketService):
def __init__(self, configuration=None, name=None):
- NetSocketService.__init__(self, configuration=configuration, name=name)
+ SocketService.__init__(self, configuration=configuration, name=name)
self.request = ""
self.host = "localhost"
self.port = 3128