self._log(ret['message'], out=False, **kw)
         elif ret['verb'] == 'PART':
             self._db.channels[ret['channel']].remove_nick(ret['parter'])
+            self._log(f'{ret["parter"]} parts: {ret["message"]}',
+                      LogScope.CHAT, target=ret['channel'])
             if ret['parter'] == self._db.users['me']:
                 del self._db.channels[ret['channel']]
         elif ret['verb'] == 'PING':
 
     _MsgParseExpectation((MsgTok.NICK_USER_HOST, ':parter'),
                          'PART',
                          ((MsgTok.CHANNEL, ':channel'),)),
+    _MsgParseExpectation((MsgTok.NICK_USER_HOST, ':parter'),
+                         'PART',
+                         ((MsgTok.CHANNEL, ':channel'),
+                          (MsgTok.ANY, ':message'))),
     _MsgParseExpectation((MsgTok.NICK_USER_HOST, ':author'),
                          'TOPIC',
                          ((MsgTok.CHANNEL, ':channel'),