Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Как организовать "лог" в csp-странице с работающего на сервере метода класса? / 7 сообщений из 7, страница 1 из 1
25.07.2006, 19:18
    #33877943
ZvezDuke
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как организовать "лог" в csp-странице с работающего на сервере метода класса?
Здраствуйте!

Возникла следующая проблема: есть csp-страница с которой с опрелеленными параметрами запускается метод класса на сервере
и необходимо выводить лог работы и результат завершения метода, если делать в лоб, то истекает время ожидания отклика от сервера...

пробовал запускать и писать "лог" работы процесса в глобал
Код: plaintext
1.
set LogStr="[дата время]: текущее сообщение..."
set ^ExportLog=^ExportLog_LogStr

в глобал записывается лишь 512 символов, остальное отбрасывается и дописывается ***Warning: string truncated!
хотя в документации пишут что ячейка глобала может быть до 32K:
Код: plaintext
1.
Data within a global is stored within one or more nodes, identified by a subscript name. 
Each node can contain approximately 32K characters of text. (The exact maximum size is 32K minus  1 , or  32 , 767  characters.)

подскажите пожалуйста в чем проблема с глобалом и как лучше организовать отображение "лога" на стороне клиента и запуск метода в фоне.
...
Рейтинг: 0 / 0
26.07.2006, 08:14
    #33878323
EllenO
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как организовать "лог" в csp-странице с работающего на сервере метода класса?
Я бы сделала так - хранить каждое сообщение в отдельном индексе по дате,времени :
set ^ErrLog(+$h,$p($h,",",2))=текущее сообщение
А уж вывести каждый индекс из глобала не проблема - выбрал узел по текущей дате и айда-пошел
if $Data(^ErrLog(+$h) { ; если есть сообщения текщего дня
set key=$Order(^ErrLog(+$h,"") ; выбираем первое
while (key'="") {
w ^ErrLog(+$h,key)
set key = $Order(^ErrLog(+$h,key))
}
}
...
Рейтинг: 0 / 0
26.07.2006, 09:02
    #33878390
CJIECAPb
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как организовать "лог" в csp-странице с работающего на сервере метода класса?
В проводжнике, если значение глобали большое, отображается только его часть. В самой базе при этом ни каких усечений нет. w ^ExportLog - должен выдать всё значение полностью.
...
Рейтинг: 0 / 0
26.07.2006, 10:56
    #33878674
ZvezDuke
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как организовать "лог" в csp-странице с работающего на сервере метода класса?
CJIECAPbВ проводжнике, если значение глобали большое, отображается только его часть. В самой базе при этом ни каких усечений нет. w ^ExportLog - должен выдать всё значение полностью.
усекается именно в базе, смотрю глобал через проводник...
...
Рейтинг: 0 / 0
26.07.2006, 11:00
    #33878695
ZvezDuke
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как организовать "лог" в csp-странице с работающего на сервере метода класса?
quot EllenO: идея неплохая плюс еще как индекс присобачить ID сеанса, т.к. страница может запускаться одновременно несколькими пользователями
...
Рейтинг: 0 / 0
26.07.2006, 11:06
    #33878713
ZvezDuke
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как организовать "лог" в csp-странице с работающего на сервере метода класса?
так а как все-таки запустить метод в фоне и обновлять страничку в браузере без участия пользователя (выводить лог)?
насколько я понимаю job работает только с рутиной а метод так вызвать нельзя... :(
...
Рейтинг: 0 / 0
26.07.2006, 11:28
    #33878804
ну я
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как организовать "лог" в csp-странице с работающего на сервере метода класса?
ZvezDukeВозникла следующая проблема: есть csp-страница с которой с опрелеленными параметрами запускается метод класса на сервере
и необходимо выводить лог работы и результат завершения метода, если делать в лоб, то истекает время ожидания отклика от сервера...

Запускаете джобом рутину, а в ней метод класса. Пусть джоб прописывает результат работы в глобал, а также индикатор что он делает - работает, свалился по ошибке, закончил нормально или еще что вам интересно от него. С клиента периодически опрашиваете состояние через этот глобал и показываете что нужно видеть.

ZvezDukeв глобал записывается лишь 512 символов, остальное отбрасывается и дописывается ***Warning: string truncated!

Во-первых, в глобал записывается что надо, можете проверить через $l что там с длинами. Во-вторых, строку про string truncated скорее всего дописывает кашевый проводник. В третьих, возьмите на www.makova.ru глобал вьюер, он попрактичнее. В четвертых, если ведете лог, то сделайте под него свой вьюер.
...
Рейтинг: 0 / 0
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Как организовать "лог" в csp-странице с работающего на сервере метода класса? / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]