Завис Agent Manager на сервере

Тема в разделе "Lotus - Администрирование", создана пользователем Wanderer, 3 ноя 2006.

  1. Wanderer

    Wanderer Lotus team
    Lotus team

    Регистрация:
    23 мар 2006
    Сообщения:
    367
    Симпатии:
    13
    Не рестартует, не останавливается (ни по запросу tell, ни по макс.времени выполнения, пробитому в параметрах сервера) серверная служба Agent Manager. Что делать в таком случае?
    Рестарт Domino сервера не помогает. Выполнение агента по расписанию в той БД отключил, но Agent Manager все равно подхватывает выполнение агента после рестарта.
     
  2. morpheus

    morpheus скриптописец

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    отключить задачу Agent Manager в ini файле сервера
     
  3. Wanderer

    Wanderer Lotus team
    Lotus team

    Регистрация:
    23 мар 2006
    Сообщения:
    367
    Симпатии:
    13
    Меня ввели в заблуждение, сервер Лотуса еще не перегружался, так что будем наблюдать, что получится после его рестарта.

    Другой вопрос, почему агент менеджер не отрубается по истечению максимального времени исполнения и не отвечает ни на какие запросы.
     
  4. morpheus

    morpheus скриптописец

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    <!--QuoteBegin-Wanderer+3:11:2006, 07:52 -->
    <span class="vbquote">(Wanderer @ 3:11:2006, 07:52 )</span><!--QuoteEBegin-->тоит бесконечно на выполнении исполнение агента в одной базе
    [snapback]47031" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    а может просто агент в базе попал на бесконечный цикл, или там док сам на себяперепрыгивает...

    если в ручную запустить, как себя ведёт агент в базе ?
     
  5. Wanderer

    Wanderer Lotus team
    Lotus team

    Регистрация:
    23 мар 2006
    Сообщения:
    367
    Симпатии:
    13
    Вручную агент выполняется на ура.
    Проблема возникла после недоступности одной папки, куда агент сохранял реплики. Папку потом вернули, а вот Агент Менеджер так до сих пор и висит на выполнении того агента.
     
  6. aks

    aks Гость

    Была подобная проблема: агента уже не существовало, а сервер его всё равно пытался запустить. Всё ушло после перезапуска сервера.
     
  7. aks

    aks Гость

    2Wanderer

    Вы решили проблему?
     
  8. Wanderer

    Wanderer Lotus team
    Lotus team

    Регистрация:
    23 мар 2006
    Сообщения:
    367
    Симпатии:
    13
    Так точно. Проблема разрешена перезагрузкой сервера, а точнее, вообще всей серверной станции - ибо проблема в файловой системе была.
     
  9. Lexa-xa

    Lexa-xa Гость

    Слушайте, у меня такая проблема.
    Есть агент, который выполняет действия с МС Ехсел, генерит данные туда, потом сохраняет в файл на диск и этот файл приаттачивает в Лотусовский документ, после чего (в конце работы агента) все созданные Ехсел файлы должны удаляться с диска.

    Так вот, во время выполнения агента (на сервере) (иногда такое происходит), вылезает модальное окошко (окошко приложения МС Ехсел с предложением сохранить файл на диск и все-такое) и дальше агент на работает, и при этом другой агент той же базы не запускается (походу ждет пока завершится этот).

    Приходится постоянно контролировать выполнение агента (Ехсел) на предмет данной проблемы, звонить администраторам и чтобы они вручную сходили в серверную и нажали на кнопочку "Нет" в этом дурацком окне.

    Есть какой-нить вариант автоматически чтоли нажать на эту кнопочку или убрать окно??? :)
    И можно ли сделать чтобы последующие агенты были зависимы от других агентов??? ;)
     
  10. morpheus

    morpheus скриптописец

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    Для: Lexa-xa
    Возможно в скрипте где то идет создание, но в каком-то условии не происходит сохранение Excel документа.
     
  11. Wanderer

    Wanderer Lotus team
    Lotus team

    Регистрация:
    23 мар 2006
    Сообщения:
    367
    Симпатии:
    13
    Это уже в разделе "Lotus-Программирование" надо было этот вопрос задавать.
     
  12. Lexa-xa

    Lexa-xa Гость

    Самое интересное что когда тестю на своей базе все кучеряво, а там такая хрень, тем более возникает не постоянно.

    Ну можно и там, но какая то проблема двоякая.

    Код примерно следующий:
    Код (Text):
    ...
    ' Begin
    Set xlApp = CreateObject("Excel.application")
    ....
    while
    ...
    ' Обработка и все такое
    ...
    ' Генерим имя файла из цифр
    fName = "Ост задолж на " & "1_.xls"
    filePathExcel = tempDir & "\" & fName
    randD = Rnd() * 1000000
    randS = Cstr(randD)
    randS = String(6 - Len(randS), "0") & randS
    filePathExcel = Mid(filePathExcel, 1, Len(filePathExcel) - 4)
    filePathExcel = filePathExcel & randS & Right$(fName, 4)
    ' ========================================
    ' Сохраняем файлик на диск с уникальным номером
    Call xlApp.Workbooks(1).SaveAs( filePathExcel )

    Call grDoc.RemoveItem("anBody")
    Set rtNew = grDoc.CreateRichTextItem("anBody")  
    Call rtNew.EmbedObject(EMBED_ATTACHMENT, "", filePathExcel)
    If Not grDoc.IsUIDocOpen Then
    Call grDoc.Save(False, False)
    Else
    Print Cstr(count) & ": Документ не сохранен: " & clientNameForError
    End If

    nextDoc:
    On Error Goto errApp
    If Not xlApp.Workbooks Is Nothing Then
    ' Если есть еще листы, то закрываем их БЕЗ сохранения
    xlApp.Workbooks(1).Close False
    End If

    nextCode:
    Set grDoc = compView.GetNextDocument( grDoc )
    Wend

    ' =========ERROR HANDLER=======================
    errL:
    Обрабатываем возможную ошибку при концовке агента при закрытии приложения Ехсел
    On Error Goto errEnd

    По идее не должно быть активных книг, т.к. Ехсел может спросить про сохранение
    If Not Isempty(xlApp) Then
    If Not xlApp.ActiveWorkbook Is Nothing Then
    xlApp.Workbooks(1).Close False
    Print " ===== closed books with error mode ===== "
    End If
    xlApp.Quit
    End If

    i = Shell("cmd /c del /q " & tempDir & "\ост*.xls")
    Print "======== Результат выполнения удаления Ехсел файлов = " & i

    Print " ======== Обработка завершена ======== "
    Exit Sub

    А на счет администрирования, может быть есть какая нибудь команда, которая закрывает все окна вызванные агентом, или показывает, что сейчас делает агент ???
     
  13. Constantin A Chervonenko

    Constantin A Chervonenko Well-Known Member

    Регистрация:
    30 май 2006
    Сообщения:
    1.288
    Симпатии:
    0
    У фонового агента не должно быть никаких окон! Домина этого не допускает, и просто не запускает на сервере агент с любым упоминанием любого UI-класса. Но ты её обманул - протащил контрабандой MS-UI. Так что "сам себе - злобный Буратино".
    Разбирайся не с доминошным, а с MS-ным программированием. Есть там что-то аналогичное нашему SaveOptions="0"?
     
  14. Lexa-xa

    Lexa-xa Гость

    Да, приходиться, а чтож делать если больше никак (ну пока не придумал другие варианты).

    Судя по хелпу по Ехселю xlApp.Workbooks(1).Close False - закрывает файл без сохранения изменений

    А вылетает скорее всего при xlApp.Quit (возможно остается все-таки какая-нить книга не сохраненная).
    Есть шанс вылета на Call xlApp.Workbooks(1).SaveAs( filePathExcel ), но я думаю это маловероятно.


    А по поводу администраторской части, есть какие-нить мысли ??? :)



    Нашел свойство Ехселя xlApp.DisplayAlerts = False - не показывать окно. Попробую такую штуку, мож и поможет.
     
  15. aks

    aks Гость

    Можно поинтересоваться, а что выводит:

    Код (Text):
     Print "======== Результат выполнения удаления Ехсел файлов = " & i
    А по поводу сохранения у меня так:

    Код (Text):
    wObj.Documents(1).saveas(filepath)
    Это правда для Word, но Excel, я думаю, аналогично. Работает на сервере по расписанию.
     
  16. Lexa-xa

    Lexa-xa Гость

    Вывод результат выполнения удаления файлов, если i=33 то удаление прошло успешно.

    Ну у меня также, просто если у тебя небольшое количество файлов, то в принципе нормально, а у меня их порядка чуть меньше 1000, поэтому есть шанс совпадения имен.
     
  17. aks

    aks Гость

    А у меня чуть больше 1000 и доки по папкам раскладываются. А контролировать имя дока из программы не выйдет? У меня доки называются человеческими ФИО поэтому все разные.
     
  18. Lexa-xa

    Lexa-xa Гость

    А если у тебя агент выполняется одновременно на двух базах в которых имеются одинаковые фамилии??? ;)
     
  19. aks

    aks Гость

    Прошу прощения, Доки - я имел ввиду документы (файлы) Word которые на диске раскладываются по папкам. Дык в чем проблема контролировать уникальность имен?
     
  20. Lexa-xa

    Lexa-xa Гость

    Да вроде никаких проблем то с уникальностью не нахожу (может конечно Рандомайз и подвести :( ), просто нету времени экспериментировать с поиском существующих имен и т.д. Может ошибка возникает и не в этой стадии выполнения агента а при закрытии Ехселя.

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

Поделиться этой страницей