Утечка памяти в асинхронном скрипте (memory leaks)

Есть скрипт, который в асинхронном режиме слушает udp-порты с помощью библиотеки asyncio_dgram:

ss = await asyncio_dgram.bind((listen_ip, self.port))

В цикле, поступившая информация пишется в лог (в файл и консоль):

while True:
    try:
        data, addr = await ss.recv()
        self.logger.debug('{}'.format(data.hex()))
        await asyncio.sleep(1)

При запуске скрипта видно, что и в консоль, и в файлы информация записывается (объём файлов с логами растёт). Запускаю htop и вижу, как с течением времени скрипт потребляет всё больше и больше оперативной памяти. В конечном итоге выполнение скрипта приостанавливается, либо обработка начинает занимать очень долгое время, так как израсходавана вся оперативная память. Но сам скрипт не останавливается, не выбрасывается какое-либо исключение. Подскажите, где может происходить утечка памяти? Спасибо.


Ответы (0 шт):