Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - Victor Kirhenshtein

#7666
Так как они видны в Network -> Properties, например Local Area Connection.
#7667
General Support / Re: Tranform and Condition Scripts
August 10, 2007, 07:37:47 PM
Quote from: jdlds on August 10, 2007, 04:44:06 AM

Another issue i've encountered is using the PDH.countervalue for data collection.  This seems to work fine for some counters but not others.

I tried: '\Memory\Committed Bytes' and this seems to work just fine
but when i tried
'\PhysicalDisk(_Total)\Disk Write Bytes/sec' this always returns 0.

if anyone can shed some light on this, that would great.


Some counters (like physical disk counter you mention or CPU utilization counters) requires at least two samples to be taken to calculate value. Such counters should be polled in background by agent. To configure agent to do so, use Counter parameter in WinPerf section, like below:

*WinPerf
Counter = DiskWriteBytes:"\PhysicalDisk(_Total)\Disk Write Bytes/sec":60:A:INT:Average number of bytes per second written to disk for last minute

There are several fields separated by colons (:). First is the name for new parameter (DiskWriteBytes in our example); second is counter path; third is number of samples to calculate average value - minimum is 2, and in our example it's 60 (because we need average value for last minute); fourth field is a collection class - it can be either A (collect values every second), B (collect values every 5 seconds), or C (collect values every 30 seconds); fifth field is a data type - it's only a hint for "select parameter" dialog in console and is not used by agent; and sixth field is a parameter description which will be shown in parameter selection dialog.

After you define your new counter, you can access new parameter on agent by using name specified in the first field.

Best regards,
Victor
#7668
General Support / Re: Tranform and Condition Scripts
August 10, 2007, 07:26:13 PM
Hello!

If you write non-trivial scripts (i.e. something more than single expression like $1/1024) you should define main() function. So you script should looks like this:

sub main()
{
   if ($1>5) return min($2, $3);
}

btw, you should return something also in case  when $1>5 is false, so final form will be

sub main()
{
   if ($1>5)
      return min($2, $3);
   return 0; // Or any other default value
}

Best regars,
Victor
#7669
На каждый интерфейс при configuration poll приходится примерно 5 SNMP запросов/ответов. Похоже просто наконец-то сложилась ситуация когда ни один из ~ 25000 запросов не завершился с ошибкой... Вообщем думать надо и оптимизировать.
#7670
Это можно сделать через ExternalParameter в агенте. В конфиге агента пишем

ExternalParameter = MyParameterName:my_script

После чего можем определить DCI для параметра MyParameterName на ноде где стоит агент. При каждом запросе параметра будет вызываться скрипт. Значением будет первая строчка выданная скриптом на stdout.
#7671
Т.е. на ноде больше 5000 интерфейсов? Похоже что у сервера проблема когда их так много. Буду думать как такие ситуации обрабатывать.
Кстати, что выдаст
nxsnmpget -v 2c -c community node .1.3.6.1.2.1.2.1.0
?
#7672
Вариантов два: или при обработке SYS_IF_DISABLED указываем ключ IF_DOWN_%i_%1, тогда правило обработки SYS_IF_UP этот аларм уберет, или указываем ключ IF_DISABLED_%i_%1, тогда добавляем еще одно правило обработки SYS_IF_UP, но указываем auto-termination для ключа IF_DISABLED_%i_%1.
#7673
Похоже на баг в сервере. А можно ли попробовать такую команду:

nxsnmpwalk -v 2c -c community node .1.3.6.1.2.1.2

заменив community на реальный SNMP community и node на адрес ноды.
Если IP адреса не секрет, то можно прислать все что выдаст мне на мейл (victor -at- opticom.lv), или просто отработалы без ошибок или в конче выдала какое-нибудь сообщение.
#7674
Default login is admin and password is netxms (all small letters).
Btw, this is mentioned in Installation Guide on page 20  :)

Best regards,
Victor
#7675
Quote from: Alex on August 03, 2007, 03:31:10 PM
Можно ли помечать весь объект красным цветом, если к примеру отключается поток E1 в ручную? т.е. переходит в состояние DISABLED?

Можно. В event policy добавляем обработку события SYS_IF_DISABLED для нужной ноды и в качестве действия создаем аларм с приоритетом CRITICAL. Чтобы автоматически его убирать, обрабатываем событие SYS_IF_UP и в качестве реакции на него делаем terminate alarm.

Альтернативный вариант - определяем DCI для Internal параметра ChildStatus(<имя или id объекта интерфейса>) и ставим threshold c генерацией какого-либо event'a. Дальше обрабатываем event как и в первом варианте.
#7676
Quote from: Alex on August 03, 2007, 11:10:02 AM
Quote from: Victor Kirhenshtein on August 03, 2007, 10:47:02 AM
А как два линка отображать? Двойной линией может?

Кнопочку сделать можно, хотя в теории новый хост должен был добавится автоматом. Если хост в контейнере есть, а на карту не попал, то как workaround можно сделать хосту unmanage/manage при открытой карте, тогда он туда попадет.


Да Виктор, именно двойной. Т.е. допустим расстояние между линками пикселей 10-20, чтоб один на другой не накладывался. А при удалении линков можно сделать два варианта. Удалить все линки, или же конкретно из списка. Т.е. можно выводить список уже залинкованных устройств.

Попробую на днях сделать и выложу - посмотрим как это будет выглядеть.
#7677
Новая будет постепенно обрастать функциями. Основных отличий два - модульность и портабельность. Консоль была последним немодульным компонентом, к новой консоли можно писать свои расширения. И у нас уже длвольно много запросов на консоль под Linux/FreeBSD - поскольку под Wine работать конечно можно, но не очень удобно. Ну и я думаю что довольно долго обе консоли будут существовать параллельно.
#7678
Кстати, в 0.2.19-rc3 можно посмотреть прототип новой консоли - nxmc.exe, или попробовать собрать ее для X:

configure --with-console
#7679
А как два линка отображать? Двойной линией может?

Кнопочку сделать можно, хотя в теории новый хост должен был добавится автоматом. Если хост в контейнере есть, а на карту не попал, то как workaround можно сделать хосту unmanage/manage при открытой карте, тогда он туда попадет.
#7680
Зависит от параметра. В консоли в настройках параметров сервера есть колонка Restart, если там стоит Yes то сервер надо перегружать.