def send_usage_email_to(user, source, threshold, usage_percentage=None):
    from core.email import send_allocation_usage_email
    user_snapshot = UserAllocationSnapshot.objects.filter(
        allocation_source=source, user=user).last()
    if not usage_percentage:
        usage_percentage = int(source.snapshot.compute_used / source.snapshot.compute_allowed * 100)
    if not user_snapshot:
        compute_used = None
    else:
        compute_used = getattr(user_snapshot, 'compute_used')
    try:
        send_allocation_usage_email(
            user, source, threshold, usage_percentage,
            user_compute_used=compute_used)
    except Exception:
        logger.exception("Could not send a usage email to user %s" % user)
def send_usage_email_to(user, source, threshold, usage_percentage=None):
    from core.email import send_allocation_usage_email
    user_snapshot = UserAllocationSnapshot.objects.filter(
        allocation_source=source, user=user).last()
    if not usage_percentage:
        usage_percentage = int(source.snapshot.compute_used / source.snapshot.compute_allowed * 100)
    if not user_snapshot:
        compute_used = None
    else:
        compute_used = getattr(user_snapshot, 'compute_used')
    try:
        send_allocation_usage_email(
            user, source, threshold, usage_percentage,
            user_compute_used=compute_used)
    except Exception:
        logger.exception("Could not send a usage email to user %s" % user)