Логи с Макса.
Логи с Макса.
Есть вопрос к разработчикам: а как запрашиваются логи с макса? А афанасии в блоке тасков есть output - по идее туда сбрасываются логи. У меня при запуске 3dsmaxcmd логи не идут. Вопрос: не может ли это быть связанно с тем, что я пробрасываю задание через интернет?
Точнее - Retrieving running task output from render... и все - больше запросов нет. Все остальные машины - они находятся в локальной сети, включая виндовые с cinema4d отдают логи нормально.
Версия 2.2.3 (Render -Windows, Сервер - lInux deb). Просмотр - через web-afanasy. Причет при запросе номера Output - веб-сервер подвисает почти наглухо. Если нужно, могу подкинуть файлы, которые он пытается открыть (я их нашел в системе). Там очень странная кодировка
Точнее - Retrieving running task output from render... и все - больше запросов нет. Все остальные машины - они находятся в локальной сети, включая виндовые с cinema4d отдают логи нормально.
Версия 2.2.3 (Render -Windows, Сервер - lInux deb). Просмотр - через web-afanasy. Причет при запросе номера Output - веб-сервер подвисает почти наглухо. Если нужно, могу подкинуть файлы, которые он пытается открыть (я их нашел в системе). Там очень странная кодировка
- Timur
- Site Admin
- Сообщения: 178
- Зарегистрирован: Вс июл 09, 2017 4:59 pm
- Откуда: Королёв
- Контактная информация:
Re: Логи с Макса.
Логи никак не запрашиваются.
Макс или любой другой софт\команда - не важно.
Команда (дочерний процесс) запускаются афрендером с редиректом stdout и stderr в pipe, содержимое которого каждую секунду сохраняется в памяти афрендера.
После завершения процесса, афрендер отправляет весь аутпут серверу. Тот его сохраняет в файл.
При запросе аутпута из гуёв, если таск выполнился, сервер посылает содержимое файла с его аутпутом. Если таск выполняется, сервер запрашивает текущий аутпут у рендера.
Такого понятия как "кодировка" в тут нету. Что вышло то и сохраняется, то и отправляется.
Винда+макс всегда страдает чертовщиной в аутпуте, не используйте везде только ascii, и ENG винду.
То, что афрендер находится "далеко" может повлиять на этот процесс. Например, если айтпут очень большой, он будет его долго пересылать.
А так по идее, всё равно где находится афрендер.
Но может тут ещё какой баг зарылся, надо тестить.
Может действительно отображение странной кодировки вводит браузер в ступор.
Тогда надо узнать зависит ли это только от кодировки.
Может все нелокальные винды русские? Или китайские?
Макс или любой другой софт\команда - не важно.
Команда (дочерний процесс) запускаются афрендером с редиректом stdout и stderr в pipe, содержимое которого каждую секунду сохраняется в памяти афрендера.
После завершения процесса, афрендер отправляет весь аутпут серверу. Тот его сохраняет в файл.
При запросе аутпута из гуёв, если таск выполнился, сервер посылает содержимое файла с его аутпутом. Если таск выполняется, сервер запрашивает текущий аутпут у рендера.
Такого понятия как "кодировка" в тут нету. Что вышло то и сохраняется, то и отправляется.
Винда+макс всегда страдает чертовщиной в аутпуте, не используйте везде только ascii, и ENG винду.
То, что афрендер находится "далеко" может повлиять на этот процесс. Например, если айтпут очень большой, он будет его долго пересылать.
А так по идее, всё равно где находится афрендер.
Но может тут ещё какой баг зарылся, надо тестить.
Может действительно отображение странной кодировки вводит браузер в ступор.
Тогда надо узнать зависит ли это только от кодировки.
Может все нелокальные винды русские? Или китайские?
Тимур Хайрулин
CGRU 3.3.1 Ubuntu 22.04LTS, MS Windows 10 (clients only).
CGRU 3.3.1 Ubuntu 22.04LTS, MS Windows 10 (clients only).
Re: Логи с Макса.
Нелокальные винды - русские. Будем менять их. Посмотрим.
Re: Логи с Макса.
Нет, от английской винды не зависит.
Все одно.
Параметры: Windows 7 64 - bit, Max 2016 64 -bit, CGRU - 2.2.3
В файле вместо пробелов и точек символы:
COMPUTERNAME=W-RENDER2
0^@9^@.^@0^@1^@.^@2^@0^@1^@8^@ ^@1^@5^@:^@4^@4^@:^@1^@2^@;^@ ^@ ^@P^@a^@r^@s^@i$
^@
И как с этим бороться - не ясно.
Все одно.
Параметры: Windows 7 64 - bit, Max 2016 64 -bit, CGRU - 2.2.3
В файле вместо пробелов и точек символы:
COMPUTERNAME=W-RENDER2
0^@9^@.^@0^@1^@.^@2^@0^@1^@8^@ ^@1^@5^@:^@4^@4^@:^@1^@2^@;^@ ^@ ^@P^@a^@r^@s^@i$
^@
И как с этим бороться - не ясно.
- Timur
- Site Admin
- Сообщения: 178
- Зарегистрирован: Вс июл 09, 2017 4:59 pm
- Откуда: Королёв
- Контактная информация:
Re: Логи с Макса.
А что там написано?
Что если команду просто в cmd.exe запустить на том же компе и от того же пользователя?
Даю 90% что это
И если это так, то даю 90% что это из-за какого-нибудь пробела не в кавычках ))
Что если команду просто в cmd.exe запустить на том же компе и от того же пользователя?
Даю 90% что это
Код: Выделить всё
"command" is not recognized as an internal or external command, operable program or batch file.
Тимур Хайрулин
CGRU 3.3.1 Ubuntu 22.04LTS, MS Windows 10 (clients only).
CGRU 3.3.1 Ubuntu 22.04LTS, MS Windows 10 (clients only).
Re: Логи с Макса.
Если присмотреться и удалить все эти ^@, то можно увидеть лог:
09.01.2018 15:44:12; Parsi
В cmd оно съедается, в просмотре в линуксе - просто пробелы, а в редактировании - в nano - вот такая кракозябра.
Причем, если взять и каким-нибудь Notepad++ насильно приобразовать в ANSI и обратно подсунуть серверу афанасия -то все будет отлично открываться.
Теперь осталось догадаться откуда ноги растут: От операционки, От 3dsmax, от компонента .Net, который макс поставил... или еще откуда
И судя по всему - python эти самые пробелы и не нравятся. Как-то он их не так видит.
09.01.2018 15:44:12; Parsi
В cmd оно съедается, в просмотре в линуксе - просто пробелы, а в редактировании - в nano - вот такая кракозябра.
Причем, если взять и каким-нибудь Notepad++ насильно приобразовать в ANSI и обратно подсунуть серверу афанасия -то все будет отлично открываться.
Теперь осталось догадаться откуда ноги растут: От операционки, От 3dsmax, от компонента .Net, который макс поставил... или еще откуда
И судя по всему - python эти самые пробелы и не нравятся. Как-то он их не так видит.
- Timur
- Site Admin
- Сообщения: 178
- Зарегистрирован: Вс июл 09, 2017 4:59 pm
- Откуда: Королёв
- Контактная информация:
Re: Логи с Макса.
Попробуйте поковыряться тут:
https://github.com/CGRU/cgru/blob/maste ... er.py#L135
https://github.com/CGRU/cgru/blob/maste ... max.py#L21
https://github.com/CGRU/cgru/blob/maste ... ls.py#L385
Может если там "странная" кодировка, то эти ф-ии не работают.
Попробуйте там просто коментить код, что будет если в питоне вообще ничего не делать.
https://github.com/CGRU/cgru/blob/maste ... er.py#L135
https://github.com/CGRU/cgru/blob/maste ... max.py#L21
https://github.com/CGRU/cgru/blob/maste ... ls.py#L385
Может если там "странная" кодировка, то эти ф-ии не работают.
Попробуйте там просто коментить код, что будет если в питоне вообще ничего не делать.
Тимур Хайрулин
CGRU 3.3.1 Ubuntu 22.04LTS, MS Windows 10 (clients only).
CGRU 3.3.1 Ubuntu 22.04LTS, MS Windows 10 (clients only).
Re: Логи с Макса.
Спасибо, посмотрим. Только сначала попробуем определить - в чем же отдается файл. Уникод это или что.
Re: Логи с Макса.
В общем, я так и не понял - что это за логи, в какой кодировке.
Может кто подскажет?
https://yadi.sk/i/uQBFNqkT3RfPW2
(В сообщение не смог вставить - говорит - неверное расширение.)
Может кто подскажет?
https://yadi.sk/i/uQBFNqkT3RfPW2
(В сообщение не смог вставить - говорит - неверное расширение.)
Re: Логи с Макса.
У меня аналогичная ерунда.
Windows 10 x64 ENG + CGRU 2.2.3
Запускается макс командой 3dsmaxcmd, которая на фоне использует backburner. Но формирует команду и запускает её python командой os.system или subprocess.call.
Если команду стартовать в терминале из кипера то аутпут на месте, если в афанасии, то в аутпуте только то то что было в скриптах до запуска основного python-файла и потом просто "0". Потом тишина.
В документации написано что макс использует формат UTF-8 BOM или UTF-16 BOM, но получается считать через ASCII
https://help.autodesk.com/view/3DSMAX/2 ... 8E89F5_htm
По коду вот что добавил
В этом файле
https://github.com/CGRU/cgru/blob/maste ... max.py#L28
Вывод такой примерно
В результате текст читается почти верно, кроме лишних пробелов между всеми символами, но только тот аутпут который макс прсилал. То что пишет сприкт питона то без пробелов. В гугле пишут что это нулевые байты.
Что с этим делать далее я не нашел, нужно както это конвертнуть в utf-8.
Может у вас получится? Или может вопрос уже както иначе решили?
ps Пришлось на питон в cgru поставить модуль chardet
Windows 10 x64 ENG + CGRU 2.2.3
Запускается макс командой 3dsmaxcmd, которая на фоне использует backburner. Но формирует команду и запускает её python командой os.system или subprocess.call.
Если команду стартовать в терминале из кипера то аутпут на месте, если в афанасии, то в аутпуте только то то что было в скриптах до запуска основного python-файла и потом просто "0". Потом тишина.
В документации написано что макс использует формат UTF-8 BOM или UTF-16 BOM, но получается считать через ASCII
https://help.autodesk.com/view/3DSMAX/2 ... 8E89F5_htm
По коду вот что добавил
В этом файле
https://github.com/CGRU/cgru/blob/maste ... max.py#L28
Код: Выделить всё
import chardet
print(chardet.detect(data.encode('ascii')))
print(data.encode('ascii'))
Код: Выделить всё
{'encoding': 'ascii', 'confidence': 1.0, 'language': ''}
0 6 - M a y - 1 8 1 3 : 3 3 : 2 2 ; E N D F R A M E 0 ; T A S K 1 O F 1 ; ( C : \ U s e r s \ p a u l \ D e s k t o p \ r e n d e r 0 0 0 . p n g ) ; 0 . 0 9 4 s ; 2 4 f a c e s ; M E M 7 1 5 M B ;
0 6 - M a y - 1 8 1 3 : 3 3 : 2 2 ; F r a m e 0 c o m p l e t e d ; E l a p s e d t i m e 0 0 : 0 0 : 0 1
0 6 - M a y - 1 8 1 3 : 3 3 : 2 2 ; J o b C o m p l e t e - R e s u l t s i n C : \ U s e r s \ p a u l \ D e s k t o p \
0 6 - M a y - 1 8 1 3 : 3 3 : 2 2 ; S e n d E n d o f J o b c o m m a n d t o M a x
Что с этим делать далее я не нашел, нужно както это конвертнуть в utf-8.
Может у вас получится? Или может вопрос уже както иначе решили?
ps Пришлось на питон в cgru поставить модуль chardet
Последний раз редактировалось paulwinex Пн май 07, 2018 3:06 pm, всего редактировалось 1 раз.