Вычисление размера носителей в таблице из SNMP
-
Я создал таблицу с запросов значений из SNMP из OID .1.3.6.1.2.1.25.2.3.1.1
У меня 4 столбца Index, Name, Units, Size
из OID
.1.3.6.1.2.1.25.2.3.1.1
.1.3.6.1.2.1.25.2.3.1.3
.1.3.6.1.2.1.25.2.3.1.4
.1.3.6.1.2.1.25.2.3.1.5Теперь мне нужно чтобы размер указывался в байтах, а лучше в гигабайтах
я пытаюсь сделать трансформацию так:
sub main() {
units = $1->getColumnIndex("Units");
size = $1->getColumnIndex("Size");for(i = 0; i < $1->rowCount; i++)
{
$1->set(i, size, units*size);
}
}Но, видимо, что то делаю не так, не помогает

А вообще я бы хотел сделать шаблон, который показывал все харды сервера на закладке Perfomance в виде графиков или на Дашборде в виде Gauge
Вот результаты запросов
Кстати в результатах Units почему то везде стоит 6

iso.3.6.1.2.1.25.2.3.1.1.1 = INTEGER: 1
iso.3.6.1.2.1.25.2.3.1.1.2 = INTEGER: 2
iso.3.6.1.2.1.25.2.3.1.1.3 = INTEGER: 3
iso.3.6.1.2.1.25.2.3.1.1.4 = INTEGER: 4iso.3.6.1.2.1.25.2.3.1.3.1 = STRING: "C:\\ Label: Serial Number 3c5db92f"
iso.3.6.1.2.1.25.2.3.1.3.2 = STRING: "D:\\"
iso.3.6.1.2.1.25.2.3.1.3.3 = STRING: "Virtual Memory"
iso.3.6.1.2.1.25.2.3.1.3.4 = STRING: "Physical Memory"iso.3.6.1.2.1.25.2.3.1.4.1 = INTEGER: 4096
iso.3.6.1.2.1.25.2.3.1.4.2 = INTEGER: 0
iso.3.6.1.2.1.25.2.3.1.4.3 = INTEGER: 65536
iso.3.6.1.2.1.25.2.3.1.4.4 = INTEGER: 65536iso.3.6.1.2.1.25.2.3.1.5.1 = INTEGER: 13017087
iso.3.6.1.2.1.25.2.3.1.5.2 = INTEGER: 0
iso.3.6.1.2.1.25.2.3.1.5.3 = INTEGER: 76665
iso.3.6.1.2.1.25.2.3.1.5.4 = INTEGER: 65401
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