UNIX socket fallback to SOCK_STREAM when SOCK_DGRAM is not available
paulfantom committed
Aug 3, 2016 at 18:29 UTC
84f235e8158a199d3f221009137431e5ff9592b2
1 file changed
+7
-2
python.d/python_modules/base.py
+7
-2
@@ -543,8 +543,13 @@ class SocketService(SimpleService):
543
self._disconnect()
544
else:
545
# connect to unix socket
546
- self._sock = socket.socket(socket.AF_UNIX, socket.SOCK_DGRAM)
547
- self._sock.connect(self.unix_socket)
546
+ try:
547
+ self._sock = socket.socket(socket.AF_UNIX, socket.SOCK_DGRAM)
548
+ self._sock.connect(self.unix_socket)
549
+ except socket.error:
550
+ self._sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
551
+ self._sock.connect(self.unix_socket)
552
+
553
except Exception as e:
554
self.error(str(e),
555
"Cannot create socket with following configuration: host:", str(self.host),