помоему битый report-generator в архиве 1.2.3
по следам этой темы
https://www.netxms.org/forum/oe-oo/reporting-bug/msg7308/#msg7308
по следам этой темы
https://www.netxms.org/forum/oe-oo/reporting-bug/msg7308/#msg7308
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 MenuQuote from: Rabid on October 12, 2012, 08:56:40 PMwrong
I am guessing that I am missing something.
I created two new events (node_down_emailB and node_up_emailB).
I copied the Node Down and Node Up event processing policies and replaced with the events above. I also added new email actions.
I then went to the node status DCI and added a new threshold using the above events with 1 sample < 0. (I already have a sys_node_down event that fires an email to a certain group and this part works). I then checked process all thresholds.
I reboot the server and userA gets an email (belongs to the sys_node_down event) but userB does not get an email (belongs to the node_down_emailB event).
Quote from: gkaudewitz on October 12, 2012, 02:01:01 PM
Not really what I want to do.
Within transformationscript some pseudocode now
sub main()
{
pos = rindex(trim($dci->name),".");
len = length(trim($dci->name)) - pos;
port = right($dci->name,len);
snmpoid = ".1.3.6.1.2.1.2.2.1.5.".port;
speed = GetDCIValueByName($node,snmpoid);
result = (($1**100)/speed;
return result;
}
the meaning of $dci in this example would be the same as with $node refering to the current DCI.
sub main()
{
if ($node->isSNMP)
{
transport = CreateSNMPTransport($node);
if (transport == null)
{
return -1;
}
ifspeed = SNMPGetValue(transport, ".1.3.6.1.2.1.2.2.1.5.10201"); // get if speed
if (ifspeed != null)
{
//you can use "case/switch" if have y have many params
if (ifspeed == "blablabla") //change blabla bla string. see mib, i don't know how it on cisco
{
return (($1*8)/(1 << 20)); //transform bytes to megabites
}
else
{
return $1; //return default value
}
}
}
}
Quote from: zeratyl on October 10, 2012, 05:06:41 PM$1 это значение dci полученное при последнем опросе.
$1 - это и есть определение параметра, или если к примеру он называется val_1 то надо использовать $val_1, я не очень понял как представляется в NXSL параметр DCI, сам язык понятен.
Quote from: zeratyl on October 10, 2012, 04:22:52 PM
2. Есть во вкладке измеряемого DCI функция Transformation с использованием NXSL, вот только не судите строго, не понял как ей воспользоваться (документацию читал), как получить параметр этого dci и проверить, к примеру, если значение больше 200 то возвращаем значение параметра 200. Если не сложно приведите просто пример.
sub main()
{
if ($1 > 200)
return 200;
else
return $1;
}
Quote from: mobe on October 10, 2012, 09:55:04 AMyep, and check properties>communication and properties>polling for this node. Check agent config, start manually with debug options.
OK thanks!
The "IsAgent" status was NO. So I have connected the NetXMS Server via loopback and everything is OK. So I will check my Windows Firewallsettings to get the Clients Connected. I just need to open Port 4700 right?
Mo
Quote from: mobe on October 10, 2012, 08:33:22 AMno, no. If you want use agent on node, you should install agent to the node and start it. and you see in object details this
Hi,
thanks for your reply.
i thnik he is connected (see Screenshot). And the screenshot, from the first Post, shows the creation of a Template, isn't it in this case irrelevant if a client is connected?
Mo
Quote from: mobe on October 10, 2012, 01:23:34 AMagent not started for this node or communication lost.
Hi Everybody
i downloaded NetXMS today and installed it on a Win7 mashine (with SQlite) so I'm a complete Newby.
My Problem is, that when i try to select a Agent parameter for a Template (or direkt in the Node) NetXMS didnt find any available parameters (a Screenshot is attached).
Any Ideas?
Mo
Quote from: Victor Kirhenshtein on October 09, 2012, 04:41:57 PMQuote from: SKYnv on October 05, 2012, 06:17:10 PM
src\server\core\main.cppfor(int i = 0; i < vlans->getSize(); i++)
{
VlanInfo *vlan = vlans->get(i);
ConsolePrintf(pCtx, _T("%4d | %-16s |"), vlan->getVlanId(), vlan->getName());
for(int j = 0; j < vlan->getNumPorts(); j++)
ConsolePrintf(pCtx, _T(" %d.%d"), (int)(vlan->getPorts()[j] >> 16), (int)(vlan->getPorts()[j] & 0xFFFF));
ConsolePrintf(pCtx, _T("\n"));
}
если порты идут в формате 1/portNum то в данном месте(int)(vlan->getPorts()[j] >> 16), (int)(vlan->getPorts()[j] & 0xFFFF));
они все станут 0.0 0.0Quotenetxmsd: sh vl 2738
VLAN | Name | Ports
-----+------------------+-----------------------------------------------------------------
1 | default | 0.0
3 | vlan3 | 0.0 0.0
4 | vlan4 | 0.0 0.0
5 | vlan5 | 0.0 0.0
6 | vlan6 | 0.0 0.0
7 | vlan7 | 0.0 0.0
8 | vlan8 | 0.0 0.0
9 | vlan9 | 0.0 0.0
10 | vlan10 | 0.0 0.0 0.0
Вроде так )))
0.0 они становятся скорее всего из-за отсутствия драйвера для сетевого устройства. Без драйвера сервер не знает, какие интерфейсы являются физическими портами, а какие нет, поэтому у всех интерфейсов номер слота и порта выставлены в 0.
Quote from: zeratyl on October 09, 2012, 04:50:25 PMQuote from: SKYnv on October 09, 2012, 04:25:48 PM
ну а железка которая кодирует и выдает мультикаст неспособна мониторить данные параметры? неверю.
Может, но вытаскивать из неё не очень удобно и не всегда именно будет относиться к каналу как таковому, как я себе представляю.Quote from: Victor Kirhenshtein on October 09, 2012, 04:40:05 PM
Можно использовать PING субагента для мониторинга - он выдает время ответа и количество потерянных пакетов. Соответственно средствами NetXMS сервера уже можно отслеживать резкие изменения во времени ответа. Конечно это будет статистика по ICMP, но в большинстве ситуазий она даст представление о примерном состоянии каналов. Конкретные данные по VoIP трафику надо снимать уже с VoIP устройств.
Спасибо. Сейчас так и сделано, но в такой реализации не возможно измерить jitter. Буду думать.