'Report container info to an account server.
:param node: node dictionary from the account ring
:param part: partition the account is on
:param container: container name
:param put_timestamp: put timestamp
:param delete_timestamp: delete timestamp
:param count: object count in the container
:param bytes: bytes used in the container
:param storage_policy_index: the policy index for the container'

def container_report(self, node, part, container, put_timestamp, delete_timestamp, count, bytes, storage_policy_index):

    with ConnectionTimeout(self.conn_timeout):
        try:
            headers = {'X-Put-Timestamp': put_timestamp, 'X-Delete-Timestamp': delete_timestamp, 'X-Object-Count': count, 'X-Bytes-Used': bytes, 'X-Account-Override-Deleted': 'yes', 'X-Backend-Storage-Policy-Index': storage_policy_index, 'user-agent': self.user_agent}
            conn = http_connect(node['ip'], node['port'], node['device'], part, 'PUT', container, headers=headers)
        except (Exception, Timeout):
            self.logger.exception(_('ERROR    account    update    failed    with    %(ip)s:%(port)s/%(device)s    (will    retry    later):    '), node)
            return HTTP_INTERNAL_SERVER_ERROR
    with Timeout(self.node_timeout):
        try:
            resp = conn.getresponse()
            resp.read()
            return resp.status
        except (Exception, Timeout):
            if (self.logger.getEffectiveLevel() <= logging.DEBUG):
                self.logger.exception(_('Exception    with    %(ip)s:%(port)s/%(device)s'), node)
            return HTTP_INTERNAL_SERVER_ERROR
        finally:
            conn.close()
