| import requests |
| import logging |
| import json |
|
|
| class LoadBalancerAPI: |
| def __init__(self, base_url): |
| self.base_url = base_url |
|
|
| def register_instance(self, instance_id, instance_url): |
| data = { |
| "url": instance_url |
| } |
| api_endpoint = f'{self.base_url}/api/post/register' |
| |
| try: |
| headers = {'Content-Type': 'application/json'} |
| response = requests.post(api_endpoint, data=json.dumps(data), headers=headers) |
| response.raise_for_status() |
| return response.json() |
| except requests.exceptions.RequestException as e: |
| logging.error(f'Failed to register instance {instance_id} to load balancer: {e}') |
| return None |
|
|
| def get_file_structure(self): |
| api_endpoint = f'{self.base_url}/api/get/file_structure' |
| try: |
| headers = {'Content-Type': 'application/json'} |
| response = requests.get(api_endpoint, headers=headers) |
| response.raise_for_status() |
| return response.json() |
| except requests.exceptions.RequestException as e: |
| logging.error(f'Failed to file structure: {e}') |
| return None |
|
|