У меня есть следующий класс (вынесен в отдельный файл sms.py):
import requests
import time

class SmsActivateAPI:
BASE_URL = 'https://sms-activate.guru/stubs/handler_api.php'


def __init__(self, api_key):
    self.api_key = api_key

def get_number(self, service='ya'):
    params = {
        'api_key': self.api_key,
        'action': 'getNumber',
        'service': service,
        'country': 0,
        'operator': "megafon",
        'maxPrice': 10
    }
    response = requests.get(self.BASE_URL, params=params)
    if "ACCESS_NUMBER" in response.text:
        _, id, number = response.text.split(':')
        return {'id': id, 'number': number}
    else:
        raise Exception(f"Ошибка получения номера: {response.text}")

def wait_for_sms(self, id, timeout=120, interval=5):
    start_time = time.time()
    while time.time() - start_time < timeout:
        params = {
            'api_key': self.api_key,
            'action': 'getStatus',
            'id': id
        }
        response = requests.get(self.BASE_URL, params=params)
        if 'STATUS_OK' in response.text:
            _, code = response.text.split(':')
            return code
        elif 'STATUS_WAIT_CODE' in response.text:
            print("Ожидание СМС...")
        elif 'STATUS_WAIT_RETRY' in response.text:
            print("Ожидание СМС...")
        elif 'STATUS_CANCEL' in response.text:
            raise Exception("Номер был отменен.")
        else:
            print(f"Текущий статус: {response.text}")
        time.sleep(interval)

    self.cancel_number(id)
    raise TimeoutError("СМС не пришла в течение времени ожидания. Номер отменен.")

def set_status_more(self, id):
    params = {
        'api_key': self.api_key,
        'action': 'setStatus',
        'status': 3,
        'id': id
    }
    response = requests.get(self.BASE_URL, params=params)

    if response.text == 'ACCESS_READY':
        return True
    elif response.text == 'ACCESS_RETRY_GET':
        print("Ожидание новой СМС (ACCESS_RETRY_GET).")
        return True
    else:
        raise Exception(f"Ошибка изменения статуса: {response.text}")

def cancel_number(self, id):
    max_retries = 3
    for attempt in range(max_retries):
        params = {
            'api_key': self.api_key,
            'action': 'setStatus',
            'status': -1,
            'id': id
        }
        response = requests.get(self.BASE_URL, params=params)
        if response.text == 'ACCESS_CANCEL':
            print("Номер успешно отменен.")
            return True
        elif "EARLY_CANCEL_DENIED" in response.text:
            if attempt < max_retries - 1:
                print("Ошибка: номер нельзя отменить слишком рано. Ожидание 120 секунд перед повторной попыткой...")
                time.sleep(120)
            else:
                print("Принудительное завершение задачи после 3 попыток отмены.")
                break
        else:
            raise Exception(f"Ошибка отмены номера: {response.text}")

    return False
Все логгирование в моем коде выглядит так:
Поток ThreadPoolExecutor-0_0: Проверка номера телефона успешна.
Поток ThreadPoolExecutor-0_0: POST-запрос на подтверждение кода успешно отправлен.
Поток ThreadPoolExecutor-0_0: POST-запрос на подтверждение кода успешен.

Я бы хотел, чтобы эти сообщения тоже писались с потоком. Как это сделать?