Я имею дело с подпроцессом, который иногда входит в бесконечный цикл и наводняет stdout с мусором. Обычно мне нужно записать stdout, за исключением тех случаев.
Этот обсуждение дает возможность ограничить время, которое занимает подпроцесс, но проблема в том, что для разумного таймаута он может генерировать ГБ выхода до того, как он будет убит.
Есть ли способ ограничить объем вывода, который был получен из процесса?
Если вы не можете обнаружить, когда происходит наводнение, шансов больше никто не может. Поскольку вы выполняете захват, вы, конечно, можете ограничить захват, но это требует, чтобы вы знали, когда произошел цикл.
Возможно, вы можете использовать ограничение rate-, если "регулярная" ставка ниже, чем та, которая наблюдается при возникновении спама?