steinkrauz - Кудысь мы, кот и мся.

> Recent Entries
> Archive
> Friends
> User Info

September 25th, 2021


Previous Entry Add to Memories Tell A Friend Next Entry
10:55 pm - Кудысь мы, кот и мся.
К вопросу о развитии программного обеспечения.

Работаю я с одной системой управления документацией. Сразу скажу, что не наша, существует она уже лет тридцать, используется по всему миру не самыми последними компаниями, так что в целом не самый плохой софт. Есть в этой системе в числе туевой хучи всего прочего модуль разработки эксплуатационной документации. Когда она разработана, её надо свести из кучи составных элементов в один результирующий документ. Поскольку в этой самой документации зачастую бывает 100500 страниц, да ещё с картинками, разработчики достаточно разумно решили не нагружать этим процессом пользовательский клиент, а выполнять отдельным заданием на сервере.

Уж не знаю по каким соображениям, но разбили они его на два этапа. Сначала в диспетчере создаётся задание для первого модуля, который выгружает в рабочий каталог все заданные элементы и создаёт задание для второго модуля. Тот в свою очередь превращает набор из кучи xml и jpg в один большой, жирный pdf. Пока достаточно разумно, и как показывает практика, даже работает. Но тут приходит жалоба: дескать, отправляю я свой разработанный документ на публикацию, а в ответ -- МПХ. В консоли диспетчера зданий видно, что первое задание как ему и положено создаётся, завершается успешно, и всё.

При расследовании этого глюка начинают раскрываться глубины глубин и ширины ширин. В принципе, диспетчер, который тут используется вещь достаточно гибкая. Изначально он был заточен для того, чтобы автоматизировать конвертацию файлов из одного формата в другой, поэтому добавить что-то новое там проблем нет. Но если вы думаете, что первый модуль это программа или скрипт, которые выгружают данные, то глубоко ошибаетесь. Первый модуль это штатный сервис обращения к API системы, и ему передаётся для вызова ровна одна функция: подготовитьДанныеПубликации, если в примерном переводе. Естественно, они нигде не описана, а так как ядро системы написано на плюсах, то и декомпилировать в читаемый код не получится.

Но теперь у нас хотя бы появилось направление поиска. Уходим из журнала выполнения задания (за исключением технических подробностей там всё то же, что и в консоли: запустились, поработали, успешно завершились) и идём в хранилище логов сессий. Среди нескольких сотен файлов находим таки тот, что оставил после своей работы модуль диспетчера. И о чудо, в логе действительно есть ошибка: "Не могу найти язык ru для раздела такого-то". Не то, чтобы это помогло, так как раздел вполне себе написан на русском, и во всех настройках опять же русский указан. Наконец, после длительный раздумий и сравнения с другими разделами выясняется, что язык раздела определяется по последним символам в имени файла с текстом. На всякий случай, ещё раз напомню: это документарная система, тут на каждом объекте минимум с десяток атрибутов висит, и нет никаких ограничений на добавление новых.

По-моему, в этой картине прекрасно всё.

(7 comments | Leave a comment)

Comments:


From:(Anonymous)
Date:September 26th, 2021 - 12:02 am
(Link)
нормально время проводишь
а я вот битый час срал и ссал пукису в ебало, а ему в кайф
вот что за моральный урод?
From:(Anonymous)
Date:September 26th, 2021 - 12:49 am
(Link)
Пролетают дни,
И не рада я судьбе.
Пролетают дни,
Только всё равно тебе, что я ищу тебя.
Проще солнце снять с небес, чем обрести тебя.

Как хватает сил
Быть всё время там, где ты?
Как хватает сил?
Среди вечной суеты, в толпе ищу тебя,
Где знакомые черты, всегда ищу тебя.
From:(Anonymous)
Date:September 26th, 2021 - 08:53 am
(Link)
уже миллион книг написали как правильно жить, а самосранец еще пишет, оставляя углеродный след.
From:(Anonymous)
Date:September 26th, 2021 - 09:55 am
(Link)
вообрази ебала покупателей его книг
From:(Anonymous)
Date:September 26th, 2021 - 11:43 am
(Link)
минихуйлашки
From:(Anonymous)
Date:September 26th, 2021 - 10:58 am
(Link)
то есть у всех всегда были файлы посконный.текст и только у получившего мпх rockstar.txt? или наоборот?
[User Picture]
From:[info]steinkrauz
Date:September 26th, 2021 - 11:45 am
(Link)
Там немного по-другому получилось. Так как проект ЭД это нехилая конструкция из нескольких объектов с кучей атрибутов, то народ для упрощения своей жизни новые проекты создавал методом SaveAss.

А тут потребовалось родить новый тип документации, проект создали с нуля и получили сюрприз. Причём ни в хелпе, ни в тренингах этот вопрос как-то не рассматривается, поэтому никто этот момент уже и не помнил, и разгадку получили только обратившись в техподдержку.

> Go to Top
LJ.Rossia.org