def logout(self):
        """ 
        Logout session from SMC
        
        :return: None
        """
        if not self.session:
            self.manager._deregister(self)
            return
        try:
            r = self.session.put(self.entry_points.get('logout'))
            if r.status_code == 204:
                logger.info('Logged out admin: %s of domain: %s successfully',
                    self.name, self.domain)
            else:
                logger.error('Logout status was unexpected. Received response '
                    'with status code: %s', (r.status_code))

        except requests.exceptions.SSLError as e:
            logger.error('SSL exception thrown during logout: %s', e)
        except requests.exceptions.ConnectionError as e:
            logger.error('Connection error on logout: %s', e)
        finally:
            self.entry_points.clear()
            self.manager._deregister(self)
            self._session = None
            try:
                delattr(self, 'current_user')
            except AttributeError:
                pass
        
        logger.debug('Call counters: %s' % counters)