Ad Widget

Collapse

Проверка процесса Windows

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Rann
    Member
    • Jul 2012
    • 51

    #1

    Проверка процесса Windows

    Добрый день.
    Хочу узнать есть-ли возможность мониторить завис процесс или нет в системе Windows с помощью заббикс агента. С утра не могу найти информацию.
  • rough-84
    Senior Member
    • Oct 2014
    • 198

    #2
    Если процесс свой "родной", самописный, заставить его писать какие нить данные периодически, в какой нить лог, который можно мониторить.

    Comment

    • Rann
      Member
      • Jul 2012
      • 51

      #3
      нет, процесс написан не мной и даже не в компании. Может кто знает косвенные способы мониторинга процесса, например смотреть время его аптайма и если оно застывает на одном значении то тогда можно было бы сделать вывод о том что процесс завис?

      Comment

      • rough-84
        Senior Member
        • Oct 2014
        • 198

        #4
        Что значит время аптайма ?
        Как вы в обще собираетесь различать завис процесс или нет ?
        Если для вас зависший процесс это тот процесс который отрубился- то достаточно просто мониторить запущен он или нет.
        Если процесс зависает и продолжает висеть в диспетчере, то надо ловить момент и смотреть к примеру потребление памяти процессом, если число статично то можно от этого отталкиваться и просто мониторить количество используемой памяти.

        Comment

        • sadman
          Senior Member
          • Dec 2010
          • 1611

          #5
          Убивать по неизменности выделяемой памяти из кучи - спорный вопрос. Процесс может висеть в паузе, может по onTimer ждать...

          Могу предложить попробовать учитывать состояние "stop pending" в ключе service_state[].
          Это может помочь, в принципе, если опираться на следующие статьи:
          1) https://gallery.technet.microsoft.co...opped-67bc718d
          2) https://msdn.microsoft.com/ru-ru/lib...v=vs.110).aspx

          Или извратиться с 'Run a programm' в диспетчере сервисов , чтобы получать сообщение о падении сервиса сразу ( http://stackoverflow.com/questions/2...ndows-services )

          В WinAPI Есть ещё функция IsHungAppWindow() - если нужно мониторить приложение, взаимодействующее с GUI (имеющее интерактивные окошки)...

          Если же ничего из этого не подойдет, то остается только прикладывать лопух к зависшему процессу и смотреть, что перестало меняться в данных proc_info[]

          Comment

          • Rann
            Member
            • Jul 2012
            • 51

            #6
            Спасибо всем, информацию почитал и принял к сведению, но решение проблемы пока откладывается. Еще раз всем огромное спасибо, статьи я изучил.

            Comment

            Working...