Newer
Older

Lluis Gifre Renom
committed
def dump_keys(redis_client, logger):
logger.info('Dump keys...')
keys = redis_client.keys()
logger.info(' keys = {}'.format(str(keys)))
for key_name in keys:
key_name = key_name.decode('UTF-8')
if not key_name.startswith('context'): continue
key_type = redis_client.type(key_name)
if key_type is not None: key_type = key_type.decode('UTF-8')
key_content = {
'hash' : lambda key: {k.decode('UTF-8'):v.decode('UTF-8') for k,v in redis_client.hgetall(key).items()},
'list' : lambda key: [m.decode('UTF-8') for m in redis_client.lrange(key, 0, -1)],
'set' : lambda key: {m.decode('UTF-8') for m in redis_client.smembers(key)},
'string': lambda key: redis_client.get(key).decode('UTF-8'),
}.get(key_type, lambda key: 'UNSUPPORTED_TYPE')
logger.info(' key {} {}: {}'.format(key_type, key_name, key_content(key_name)))