[python] mprpc の RPCServer 使用時のエラー 以下のようなエラー File "mprpc/server.pyx", line 68, in mprpc.server.RPCServer.__call__ (mprpc/server.c:1551) self._address.client_host = address[0] AttributeError: 'NoneType' object has no attribute 'client_host' 12345 File "mprpc/server.pyx", line 68, in mprpc.server.RPCServer.__call__ (mprpc/server.c:1551) self._address.client_host = address[0]AttributeError: 'NoneType' object has no attribute 'client_host' __init__ を override していて親の __init__ を呼び忘れていた。。 def __init__(self, *args, **kwargs): super(ConductorSerivce, self).__init__(*args, **kwargs) 1234 def __init__(self, *args, **kwargs): super(ConductorSerivce, self).__init__(*args, **kwargs) のようにしてあげた
[python] kill での signal受信時の動作を実装する def handler(signum, frame): # signal 受信時の処理 pass # SIGTERM が発生した時の handler の登録 signal.signal(signal.SIGTERM, handler) 1234567 def handler(signum, frame): # signal 受信時の処理 pass# SIGTERM が発生した時の handler の登録signal.signal(signal.SIGTERM, handler) とるすると良い。 SIGKILLとか使うと Traceback (most recent call last): File "main.py", line 34, in <module> signal.signal(signal.SIGKILL, handler) RuntimeError: (22, 'Invalid argument') 123456 Traceback (most recent call last): File "main.py", line 34, in <module> signal.signal(signal.SIGKILL, handler)RuntimeError: (22, 'Invalid argument') というエラーになる。 kill -9 をつけた時は強制的に終了するので捕捉できない。