Instance Discovery для сетевых интерфейсов Hyper-V

Started by l_d, August 24, 2017, 04:05:09 PM

Previous topic - Next topic

l_d

День добрый!
Возникла такая задача, никак не пойму как к ней подступиться.
Исходные данные:
Есть несколько гипервизоров на Hyper-V - Windows 2008/12R2 сервера.
На них есть большое кол-во ~30-40 виртуальных машин
Необходимо:
Надо мониторить сетевой входящий\исходящий трафик с каждого виртуального адаптера, т.е. с каждой машины.
Руками натыкивать эти счетчики долго и муторно + ВМ иногда переезжают в одного хоста на другой через LiveMigration, т.е. каждый раз переносить счетчики туда сюда не очень удобно, к тому же можно забыть.
Хотелось бы понять, как сделать Instance Discovery для данного типа счетчиков, да еще что бы в итоге на вкладке Performance получать сдвоенный график (скриншот приложен).
Как я пробовал сделать:
Я делал нечто похожее для свободного места на дисках.
Счетчик брал с NetXMS агента:
FileSystem.Free({instance})
С настройками Instance Discovery:
Method - Agent List
List name - FileSystem.MountPoints
Script:   if ($1 ~= ":")
                 value = AgentReadParameter($node, "FileSystem.Total(" . $1 . ")");
                 return (value != null) && (value > 0);

Но с этими счетчиками Hyper-V я ведь получаю данные не от агента,а от Windows Performance Counters, какие там должны быть прописаны параметры List name и тд, не пойму где вообще брать эту информацию..
Доп.хотелка
И еще хотелка, но не обязательная.
Hyper-V все инстансы возвращает в виде <Имя машины><длииииииииинннныыыыйй GUID>, и если я в вкладке Performance просто буду вставлять в имя переменную {instance}, то там будет далеко за границы экрана название вылезать, можно ли его править как то с помощью RegExp или еще как..