NetXMS Support Forum

English Support => General Support => Topic started by: Luis Montaño on July 18, 2017, 11:25:13 PM

Title: Script on Transformation Tab is not performing any action
Post by: Luis Montaño on July 18, 2017, 11:25:13 PM

Hi everyone, I have an issue.
I don't know if I'm doing something wrong.
I have following script that I'm going to use to avoid collection of wrong values (hundred of TB)  obtained from snmp "iftable"
I dont get any error (of sintaxis) but the script is not performing any action.
In adition, there is a way to debug this scripts used on transformation tab?. I'm using Windows Server 2012R2 as Netxms Server and PostgreSQL

[script]
interface = GetInterfaceObject($node, ((int)$dci->instance));
speed = interface->speed;
if ($1 > speed){
   return 0;
}
else{
   return $1 * 8;
}
Title: Re: Script on Transformation Tab is not performing any action
Post by: Tursiops on July 19, 2017, 02:16:07 AM
Hi,

You can do some inline debugging by using the trace command, e.g.
trace(0,interface->speed);
That would log interface->speed in the server's log at debug level 0. Standard string concatenation rules apply.

You may also want to do $1 * 8 prior to the speed comparison.
For all I recall $1 is Bytes, but interface speed is Bits.

Cheers
Title: Re: Script on Transformation Tab is not performing any action
Post by: Luis Montaño on July 20, 2017, 12:51:18 AM

I did what you told me.
with debugging I could realize that "$dci->instance" was returning the name of the iface instead index(returned in instance discovery)
I have to create another function that return iface index by providing ifname.
Thanks for your help :D