Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (Flatly)
  • No Skin
Collapse
Brand Logo

NetXMS Forum

  1. Home
  2. Support (Russian)
  3. Мониторинг загрузки процессора несколькими одноименными процессами (Решено)

Мониторинг загрузки процессора несколькими одноименными процессами (Решено)

Scheduled Pinned Locked Moved Support (Russian)
8 Posts 2 Posters 10.7k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • l_dL
    l_dL
    l_d
    wrote on last edited by
    #1

    День добрый!
    Есть необходимость мониторить сервер 1С. Он запускает для работы 2-6 процессов с именем rphost.exe.
    Если я пытаюсь мониторить количество занимаемой ими памяти через Process.WkSet(rphost.exe) то все работает вроде нормально, вижу общую занимаемую ими память(примерно прикинул, вроде сходится все), но когда пытаюсь посмотреть загрузку процессора через \Процесс(rphost)\% загруженности процессора ожидаемо получаю данные только по одному(видимо у кого PID меньше) процессу, знаю, что это вроде ограничение самой Windows и ее счетчиков производительности. Нет ли аналога этого счетчика в агенте NetXMS? Либо какого-то лайфхака как мониторить общую загрузку CPU этими процессами?

    1 Reply Last reply
    0
    • V
      V
      Victor Kirhenshtein
      wrote on last edited by
      #2

      Можно собирать Process.CPUTime(rphost.exe) - это даст общее время использованое всеми процессами с таким названием в миллисекундах. Затем в трансформации включить подсчет разницы (delta calculation), и добавить формулу пересчета в проценты:

      return $1 * 100 / 60000;

      (принимаем что собирается каждые 60 секунд, если чаще, то соответственно поменять интервал в формуле).

      1 Reply Last reply
      0
      • l_dL
        l_dL
        l_d
        wrote on last edited by
        #3

        Спасибо огромное за быстрый ответ, попробую это реализовать! Отпишусь по результату

        1 Reply Last reply
        0
        • l_dL
          l_dL
          l_d
          wrote on last edited by
          #4

          Возникли вопросы:

          1. Какой тип delta calculation выбирать? Simple Delta?
          2. Как правильно трактовать данный параметр, он ведь будет не в процентах, как обычная загрузка процессора? Какая цифра будет соответствовать 100% загрузки процессора?
          3.  Если время сбора данных 5 секунд, нужно ставить "/5000" в формуле трансформации? Тут вроде все ясно, но на всякий случай решил уточнить.
          1 Reply Last reply
          0
          • V
            V
            Victor Kirhenshtein
            wrote on last edited by
            #5

            Да, "simple delta". Можно еще выбрать "average per second" - тогда будет средняя загрузка за секунду - только делить в таком случае надо будет на 1000.

            Это будет процент процессорного времени, затраченный на исполнение данного процесса. Так что по идее это та-же самая закрузка в процентах - просто когда она считается для системы в целом, то это процент процессорного времени, затраченный на исполнение всех процессов в системе.

            Да, надо делить на 5000.

            1 Reply Last reply
            0
            • l_dL
              l_dL
              l_d
              wrote on last edited by
              #6

              Все сделал, как вы писали:

              Process.CPUTime(rphost.exe)
              Опрос раз в минуту
              Simple Delta
              return $1 * 100 / 60000;
              

              Но вот вижу странные показатели сегодня, либо они не странные, а я просто не могу их правильно интерпретировать.
              Значения больше 100, это как может быть?


              Снимок.JPG

              1 Reply Last reply
              0
              • V
                V
                Victor Kirhenshtein
                wrote on last edited by
                #7

                Это процент использованного процессорного времени - 100% это полная загрузка, т.е. процессор вообще не простаивал. Но если система многопроцессорная, то 100% это полная загрузка одного ядра - поскольку за каждый интервал времени максимальное кол-во потраченного процессорного времени будет кол-во ядер * период. Загрузка процессом 200% означает что процесс полностью использовал 2 ядра. Если хотите процент от общей мощности системы, то надо делить значение на кол-во процессоров.

                1 Reply Last reply
                0
                • l_dL
                  l_dL
                  l_d
                  wrote on last edited by
                  #8

                  Ааа, вот теперь понятно, да выглядит логично, спасибо большое!

                  1 Reply Last reply
                  0

                  Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                  Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                  With your input, this post could be even better 💗

                  Register Login
                  Reply
                  • Reply as topic
                  Log in to reply
                  • Oldest to Newest
                  • Newest to Oldest
                  • Most Votes


                  • Login

                  • Don't have an account? Register

                  • Login or register to search.
                  Powered by NodeBB Contributors
                  • First post
                    Last post
                  0
                  • Categories
                  • Recent
                  • Tags
                  • Popular
                  • Users
                  • Groups