21
Июл
2021

Как из разных функций отправлять по одному API информацию о выполнении этой функции?

Доброго времени суток!

Суть: Есть софтина на Python, со своим API и суть ее работы, давайте представим, заключается в автоматической готовке пиццы.
У нее есть набор модулей, например, модуль для работы с печью, модуль для работы с автоматом для разрезания теста и т.д. Каждый модуль – набор функций. В ходе выполнения каждой функции, с помощью команды print в стандартный поток вывода выводится текущий статус.
(Ну например print(‘Запускается печь…’).

Задача: Мне нужно, что бы эти статусы отображались в стандартном потоке вывода и отправлялись по API (в данном случае, API – это экземпляр класса, с помощью методов которого осуществляются различные операции, нас интересует метод broadcast_sending, который отправляет заданные аргументы всем клиентам, которые к этому API подключены (подключение по сокетам)).
Т.е. я в другом модуле сделал функцию:

def send_status(*data):
    print(data)
    global api
    api.broadcast_sending(data)

Теперь, во всех функциях в других модулях я заменил просто print на send_status, таким образом, информация попадает и на стандартный поток вывода, и клиенту, который был подключен по к этому API и дал, собственно, команду на начало заготовки пиццы..
Но мне кажется, что я делаю что-то неправильно, нет ли решения изящней? Спасибо.

Источник:

Тебе может это понравится...

Добавить комментарий