Страница 2 из 2

Re: Логи с Макса.

Добавлено: Пн май 07, 2018 9:12 am
Timur
Ну надо вам (у кого винда+макс) дальше ковырять.
У меня под рукой нет ни макса ни винды.
Периодически проверяю на виртуалке (win10) работоспособность той простейшей сцены что в примере, у меня всё ок.

Re: Логи с Макса.

Добавлено: Пн май 07, 2018 1:27 pm
lcenzoredl
Ребята привет!
Я с этим тоже столкнулся, свои изыскания я тут постил.
http://forum.cgru.info/viewtopic.php?f= ... smax#p1075

В общем по моим наблюдениям, с аутпутом все было ок, ровно до того момента как в версии 2.2.0 появилось это:
- Parsers got "tagHTML" function. It designed to mark task output for AfWatch gui. For example replace terminal escape sequences, highlight errors.

Т.е. в версии 2.1.0 - все было ок.

Моих познаний хватило только на то чтобы поковыряться с отключением функций связанных с HTML, в итоге получалось добиться того что афвотч начинал видеть лог, но в консоли валились другие ерроры, и кажется после рестарта афвотча, весь лог валился в одну строку.

Может вам удастся разобраться с этим.

Re: Логи с Макса.

Добавлено: Пн май 07, 2018 3:06 pm
paulwinex
Ок, будем копать.

Re: Логи с Макса.

Добавлено: Пн май 07, 2018 6:19 pm
paulwinex
Проблему пустого лога решил переопределением функции parse для парсера макса.

Код: Выделить всё

def parse(self, data, mode):
        data = data.replace(b'\x00', b'')
        super(max, self).parse(data, mode)
То есть удаляю все нулевые байты.
Но в вотче теперь всё в одну строку. Тимур, подскажите где происходит преобразование строки в что будет показано в вотче?

Web пока не удалось проверить. Output зависает на Retrieving running task output from render... а Listen показывает одну случайную строку.

Re: Логи с Макса.

Добавлено: Вт май 08, 2018 9:39 am
Timur
wndtask.cpp - WndTask::showOutput()

https://github.com/CGRU/cgru/blob/maste ... k.cpp#L559

Re: Логи с Макса.

Добавлено: Вт май 08, 2018 9:42 am
Timur
Может тода у макса переопределить
toHTML(self, i_data)

Re: Логи с Макса.

Добавлено: Вт май 08, 2018 9:45 am
Timur
А по-хорошему у нас в первую очередь:
def parse(self, data, mode, pid=0):
data = cgruutils.toStr(data)
Так вот если cgruutils.toStr сможет вернуть "хорошую" строку в случае с максом - будет супер.
И ничего в парсере править тогда не надо будет.
Заодно если вдруг ещё какой софт в "своеобразной" кодировке писать начнет, он тоже автоматически работать будет.

Re: Логи с Макса.

Добавлено: Вт май 08, 2018 6:39 pm
paulwinex
Вот тут тестить надо, чтоб не сломать другие софты. Я бы сделал только для макса если другое работает. То есть если работает то отскоч и не трогай) Ну в общем попробуем по-всякому.