Понятно, что прожка писалась на скорую руку и должна быть доделана. Подскажу, как именно.
Нет смысла качать мегабайт логов, которые всё равно не влезут в консоль. Нужно вытащить последние строки, например алгоритмом, который я описал в прошлом посте.
Не нужно досить сервер запросами. Добавить хотя бы os.sleep(5).
Проверять, изменились ли логи, можно через ETag. Его сервер тоже посылает.
Проверять, что #chunk > 0, смысла не имеет. Там есть 3 случая: nil, когда оборвано соединение, "", если просто пока нет ответа, или же строка с данными.
Прога такая работать будет не более суток. Затем она перестанет обновляться. Думаю, ясно почему.