From 4c87bf280d7d2a0bdb101d1d3d61cd1acfa71c5f Mon Sep 17 00:00:00 2001 From: Gris Ge Date: Tue, 26 Jun 2018 01:10:33 +0800 Subject: [PATCH] Python plugin runner: don't print socket error to syslog. Treat socket.error as client went away if plugin is registered. Fixing bug: https://bugzilla.redhat.com/show_bug.cgi?id=1582458 Signed-off-by: Gris Ge --- python_binding/lsm/_pluginrunner.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/python_binding/lsm/_pluginrunner.py b/python_binding/lsm/_pluginrunner.py index 0b52e95a..f2642f2e 100644 --- a/python_binding/lsm/_pluginrunner.py +++ b/python_binding/lsm/_pluginrunner.py @@ -20,6 +20,7 @@ from lsm import LsmError, error, ErrorNumber from lsm.lsmcli import cmd_line_wrapper import six +import errno from lsm._common import SocketEOF as _SocketEOF from lsm._transport import TransPort @@ -137,6 +138,12 @@ def run(self): # occurring. if need_shutdown: error('Client went away, exiting plug-in') + except socket.error as se: + if se.errno == errno.EPIPE: + error('Client went away, exiting plug-in') + else: + error("Unhandled exception in plug-in!\n" + + traceback.format_exc()) except Exception: error("Unhandled exception in plug-in!\n" + traceback.format_exc()) -- 2.18.0