problem with tranformation tool in DCI

Started by Dariusk, August 04, 2012, 09:10:57 AM

Previous topic - Next topic

Dariusk

Hey Victor,

I think there could be a problem with the transformation tool in the DCI configuration

in pic1 I have added a oid for monitoring memory usage of a server, set it to unsigned because else you will get a negative value with large numbers. The data that is send via SNMP it in kB, i want to convert it to Bytes so it shows correctly with the multipliers.

I tested a couple of scenarios, but I kept getting negative values back. (pic2),(pic3)

So eventually I thought it might be the tranformation tool. and when i looked at the last value. it showed up correctly(pic4)

Am I doing something wrong or is it a bug?

lweidig

Just a couple of comments:


  • Try changing your data type on the General tab to Unsigned integer 64 bit.  With your transformation anything over 4GB may fail.
  • Update your transformation to '$1 * 1024' as that is the correct conversion from KB to bytes, not 1000
  • I cannot comment on the test transformation window, I have NEVER had it actually pop up for me.  My only guess is that it is using the base type provided by the SNMP value as its type for processing which means anything over 2,147,483,647 (MAX for 32 bit signed) bytes becomes negative

Victor Kirhenshtein

Quote from: lweidig on August 06, 2012, 04:42:15 PM
Just a couple of comments:


  • Try changing your data type on the General tab to Unsigned integer 64 bit.  With your transformation anything over 4GB may fail.
  • Update your transformation to '$1 * 1024' as that is the correct conversion from KB to bytes, not 1000
  • I cannot comment on the test transformation window, I have NEVER had it actually pop up for me.  My only guess is that it is using the base type provided by the SNMP value as its type for processing which means anything over 2,147,483,647 (MAX for 32 bit signed) bytes becomes negative

You are absolutely correct - test uses DCI data type, so it must be changed to 64 bit integer to get correct result.

Best regards,
Victor