in functions/source/lambda_function.py [0:0]
def check_vmx_status(dashboard, org_id, vmx_id, ec2_vmx_id):
region = os.environ['AWS_REGION']
ec2 = boto3.client('ec2', region_name=region)
org_device_status = dashboard.organizations.getOrganizationDevicesStatuses(
org_id, total_pages='all'
)
logger.info('Checking vMX status for meraki org id {0} and ec2 instance id {1}'.format(vmx_id, ec2_vmx_id))
meraki_vmx_status = [x for x in org_device_status if str(vmx_id) in str(x['networkId'])][0]['status']
ec2_vmx_status = ec2.describe_instance_status(InstanceIds=[ec2_vmx_id], IncludeAllInstances=True)
if meraki_vmx_status == 'online' and ec2_vmx_status['InstanceStatuses'][0]['InstanceState']['Name'] == 'running':
vmx_status = 'online'
else:
vmx_status ='offline'
return vmx_status