Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как собрать статистику по запуску программ
|
|||
|---|---|---|---|
|
#18+
Приветствую. За 30 лет работы в БД накопилось огромное количество программ. Многие из них уже не нужны, но перед генеральной чисткой хотелось бы убедиться в этом. Можно ли каким-либо образом собрать статистику по запускам программ так, чтобы не вносить в них изменения. Самое простое - это добавить в программы код, который будет писать куда-нибудь дату-время/пользователя/количество запусков и т.п. при запуске программы. Но это очень трудоемко. Может быть у кого-нибудь есть идеи как собрать статистику по запускам программ более легким способом? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2012, 09:46 |
|
||
|
Как собрать статистику по запуску программ
|
|||
|---|---|---|---|
|
#18+
можно просто запустить ^PERFMON на какое то время, и вы получите список запускаемых программ и сколько там было выполнено строк кода ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2012, 10:07 |
|
||
|
Как собрать статистику по запуску программ
|
|||
|---|---|---|---|
|
#18+
DAiMor , конечно, можно. Но это не гарантирует попадания в статистику всех используемых программ. Возможно, какая-то программа используется 1 раз в месяц (варианты: 1 раз в квартал, 1 раз в год...). Впрочем, автору виднее, есть ли у него такое. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2012, 11:17 |
|
||
|
Как собрать статистику по запуску программ
|
|||
|---|---|---|---|
|
#18+
Да, конечно не гарантирует, но я предложил по-моему самый простой вариант другой вариант, это проанализировать цепочки вызовов. нужно писать анализатор вашего кода. смотреть что откуда вызывается. найти программы вызовов которых нет вообще. т.е. работы тут намного больше. и нужно очень хорошо понимать в целом всю архитектуру вашего приложения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2012, 12:20 |
|
||
|
Как собрать статистику по запуску программ
|
|||
|---|---|---|---|
|
#18+
Documentation > System References > MSM to Cache Conversion... > MSM and Cache Utilities...%INDEX Cache equivalent: Not Available Purpose: Provides a cross-reference listing of one or more routines, and optionally provides a structured program listing of selected routines.Если перетащить эту утилитку в Cache, то вполне себе можно построить листинг перекрестных ссылок, по крайней мере, классических M-программ. Помнится, утилитка была с исходником. Впрочем, за давностью могу и ошибаться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2012, 12:21 |
|
||
|
Как собрать статистику по запуску программ
|
|||
|---|---|---|---|
|
#18+
Alexey MaslovЕсли перетащить эту утилитку в Cache, то вполне себе можно построить листинг перекрестных ссылок, по крайней мере, классических M-программ. Помнится, утилитка была с исходником. Впрочем, за давностью могу и ошибаться. Листинг ссылок там не поможет. Программы делались 30 лет (одно из неприятных свойств хорошей переносимости М-программ), авторы уже далече... Всё делалось на работающем сервере (технология такая), поэтому две трети (или больше) этих программ - дубли с небольшими изменениями кода, соответственно, все попадут в листинг. Плюс очень широкое использование FDBMS, также заполненного неиспользуемыми формами, всё это попадёт в ссылки... Надо ^PERFMEN попробовать. А что раз в месяц - аварийно востанавливать... (Попросить пользователей запустить такие режимы в день наблюдения). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2012, 13:12 |
|
||
|
Как собрать статистику по запуску программ
|
|||
|---|---|---|---|
|
#18+
Alexey Maslov Documentation > System References > MSM to Cache Conversion... > MSM and Cache Utilities...%INDEX Cache equivalent: Not Available Purpose: Provides a cross-reference listing of one or more routines, and optionally provides a structured program listing of selected routines.Если перетащить эту утилитку в Cache, то вполне себе можно построить листинг перекрестных ссылок, по крайней мере, классических M-программ. Помнится, утилитка была с исходником. Впрочем, за давностью могу и ошибаться. Жаль, что такой способ не отследит вызовы через косвенность и xecute. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2012, 13:22 |
|
||
|
Как собрать статистику по запуску программ
|
|||
|---|---|---|---|
|
#18+
ser_shu (хотя скорее это вопрос к Denis S), хочется спросить: ради чего столько работы, с риском остановки по <NOROUTINE> в самый неподходящий момент (хотя и подходящий для этого момент представить сложно ))? Неужели нескольких сэкономленных мегабайт ради? К тому же запущенный PERFMON, как вы, конечно, знаете, довольно ощутимо тормозит работу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2012, 14:09 |
|
||
|
Как собрать статистику по запуску программ
|
|||
|---|---|---|---|
|
#18+
Alexey MaslovК тому же запущенный PERFMON, как вы, конечно, знаете, довольно ощутимо тормозит работу. Тормозит работу %SYS.MONLBL, PERFMON вроде не должен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2012, 14:29 |
|
||
|
Как собрать статистику по запуску программ
|
|||
|---|---|---|---|
|
#18+
DAiMor, основа у обеих утилит общая, если верить документации: ДокументацияThe routine ^%SYS.MONLBL provides a user interface to the Caché MONITOR facility. This utility provides a way to diagnose where time is spent executing selected code in Caché ObjectScript and Caché Basic routines, helping to identify lines of code that are particularly resource intensive. It is an extension of the existing MONITOR utility accessed through ^PERFMON and the %Monitor.System package classes. Because these utilities share the same memory allocation, you can only run one of them at a time on a Caché instance.и обе ведут построчный учет выполнения программ, значит, и тормозить должны обе :)). Впрочем, %SYS.MONLBL проделывает бОльшую работу, и тормозит ощутимо сильнее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2012, 14:46 |
|
||
|
Как собрать статистику по запуску программ
|
|||
|---|---|---|---|
|
#18+
Alexey Maslovser_shu (хотя скорее это вопрос к Denis S), хочется спросить: ради чего столько работы... Действительно, вопрос к Денису. Мои предположения. (знаком с ситуацией только постольку, что помогал запустить систему на новой версии Cache с перекодировкой из исо в виндоуз, в разработке не участвовал). Проблема в сопровождении. Насколько я представляю, разрабатывается новое приложение, расширяющее / заменяющее работающее, в режиме нонстоп. Поэтому новые структуры и интерфейсы должны взаимодействовать с существующими. Допустим, написали хороший графический интерфейс для описания площадей хранения с некоторыми новыми необходимыми свойствами. Надо изъять старое описание площадей и немножко проверить/поправить работающие программы, чтобы использовались добавленные свойства, где требуется. Запускаем поиск в программах по строке ^ADRES( и получаем 500 программ... (или 3000...) Бодро начинаем их редактировать и понимаем, что многие из них просто не могут быть рабочими, так как структура другая, или мы что то упустили... В конце мучений оказывается, что редактировать надо было меньше 100 программ... Но удалять 400 нерабочих не решились - может они как то частично используются... И если для площадей появится новое свойство, то придётся опять проверять 500 программ... А по хорошему надо как то весь этот объём старого ПО урезать, чтобы переходить на новые интерфейсы и структуры. Заменить полностью сразу не хватает сил и опыта. Это моя версия проблемы. (Денис, извиняюсь, если не так). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.06.2012, 15:33 |
|
||
|
Как собрать статистику по запуску программ
|
|||
|---|---|---|---|
|
#18+
Сергей все правильно описал. 8000 старых программ. Надо переписывать систему полностью в связи с тем, что крайне устарела. Для этого необходимо знать ее функционал, а общей картиной уже никто не владеет. Разобраться во всем нереально. Поэтому хотелось бы для начала тупо удалить то, что уже не используется, а уже оставшееся анализировать и модернизировать. ^PERFMEN думаю подойдет, спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.06.2012, 01:18 |
|
||
|
Как собрать статистику по запуску программ
|
|||
|---|---|---|---|
|
#18+
Denis S., Как мне кажется, нужно начинать с отчетов. Пусть пользователи системы сообщат своим руководителям, какие отчеты они используют. Те дадут сводную информацию. Далее можно посмотреть соответствующую структуру данных, из которых берутся эти отчеты. Проектировать новое приложение нужно заново, какой бы не был искус перетащить "все как было". Для ввода данных надо пересмотреть структуры, опираясь на знания реального постановщика задач. На период внедрения можно прикрутить дополнительную запись в старые структуры. Отчеты проектировать заново и сверять их со старыми отчетами. Ну вот, все рассказал, что знал :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2012, 20:31 |
|
||
|
Как собрать статистику по запуску программ
|
|||
|---|---|---|---|
|
#18+
rstr, Это все теория. А на практике никто не знает, почему так или иначе работает программа, если на нее не было соотвествующего описания, в том числе технологического (а не подписи к переменным). И в итоге пользователи говорят - хочу такие же цифры. И про отчеты их скорее всего бесполезно спрашивать. Т.е. может и не совсем бесполезно, но даже если они скажут и вы им поверите, то в лой момент они могут прискакать и сказать - "а вот было раньше, мы вспомнили и нам опять нужны эти данные" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.06.2012, 21:05 |
|
||
|
|

start [/forum/topic.php?fid=39&msg=37821397&tid=1557446]: |
0ms |
get settings: |
6ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
51ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
30ms |
get tp. blocked users: |
1ms |
| others: | 209ms |
| total: | 319ms |

| 0 / 0 |
