in source/tools/iot-devices-cmp.py [0:0]
def compare_device(thing_name):
global NUM_THINGS_COMPARED, NUM_THINGS_NOTSYNCED, NUM_ERRORS
try:
logger.info('thing_name: {}'.format(thing_name))
start_time = int(time.time()*1000)
device_status_primary = get_device_status(c_iot_p, thing_name)
device_status_secondary = get_device_status(c_iot_s, thing_name)
logger.info('thing_name: {} device_status_primary: {} device_status_secondary: {}'.format(thing_name, device_status_primary, device_status_secondary))
errors = []
if not thing_name in device_status_primary:
errors.append('thing name does not exist in primary')
elif not thing_name in device_status_secondary:
errors.append('thing name does not exist in secondary')
if thing_name in device_status_primary and thing_name in device_status_secondary:
if device_status_primary[thing_name]['cert_id'] != device_status_secondary[thing_name]['cert_id']:
errors.append('cert id missmatch')
if device_status_primary[thing_name]['policy'] != device_status_secondary[thing_name]['policy']:
errors.append('policy missmatch')
if errors:
logger.error('replication error: {}: primary: {} secondary: {}'.format(','.join(errors), device_status_primary, device_status_secondary))
NUM_ERRORS += 1
end_time = int(time.time()*1000)
duration = end_time - start_time
NUM_THINGS_COMPARED += 1
logger.info('compare device: thing_name: {} duration: {}ms'.format(thing_name, duration))
except Exception as e:
logger.error('{}'.format(e))
NUM_ERRORS += 1
traceback.print_stack()