отдельный скрипт с веб-интерфейсом делает следующее:
r = subprocess.Popen('/usr/local/bin/python3 start.pyw start', shell=True,
stdout=subprocess.PIPE, stdin=subprocess.PIPE)
при этом весь вывод скрипта скрыт и в текстовый лог ничего не пишется
если убрать “stdout=subprocess.PIPE, stdin=subprocess.PIPE” - вывод валится в страницу запустившего его скрипта и текстовый лог пишется
если запустить скрипт “start.pyw start” в консоли - текстовый лог тоже пишется
если запустить start.pyw?start из браузера - все тоже ОК
вопрос - что такого может делать subprocess.Popen, что запущенный им скрипт не пишет логи в файл?
код записи в файл:
from threading import Lock
lock = Lock()
with lock:
with open('log.txt', 'ab') as f:
f.write(bytearray(msg_plain, 'utf-8'))