NetXMS Support Forum

English Support => General Support => Topic started by: zshnet on May 11, 2016, 10:25:39 PM

Title: Templates and Performance graphs with multiple DCIs
Post by: zshnet on May 11, 2016, 10:25:39 PM
Hi all,

We've just started using NetXMS and I wanted to double-check that I'm not missing something. When I make a template with multiple DCIs and try to bind one to the other in the performance tab, that binding fails to propagate down to the templated nodes. When I click the performance tab, only one of the DCI's shows up on the graph. Looking at the DCI itself, it claims "Cannot resolve DCI name: Invalid DCI ID." Sounds to me like it's looking for the original template's DCI ID? If I go into the nodes, and reapply the connection manually, they show up in the graphs again.

Is there any way to make it so two template DCI's can show up on the same performance graph?

Thanks!
Zach
Title: Re: Templates and Performance graphs with multiple DCIs
Post by: tomaskir on May 11, 2016, 11:34:27 PM
Template DCIs binding to perf. tab works fine for me.

For example, this is 3 DCIs on perf. tab from a template.

The 2 "used" DCIs are attached to the "size" DCI.
Title: Re: Templates and Performance graphs with multiple DCIs
Post by: zshnet on May 11, 2016, 11:56:04 PM
That's heartening. What version of NetXMS / OS are you using? We have 2.0.3 on an Ubuntu 14.04 server.

Could I see a screenshot of your template DCI's performance tab? Mine is attached. I just want to be sure that I'm not doing something out of the ordinary.

Thanks for the help!
Title: Re: Templates and Performance graphs with multiple DCIs
Post by: tomaskir on May 12, 2016, 12:03:26 AM
Here is the configuration for the perf. tab graph I attached in the previous post.

Server is running from newest commit in develop (which is not too far ahead of 2.0.3) on Ubuntu Server 14.04.
Client is running on Win 7.
Title: Re: Templates and Performance graphs with multiple DCIs
Post by: zshnet on May 12, 2016, 12:16:49 AM
Good to know. You mean a snapshot of source, from here:

https://www.netxms.org/download/

right? I'll make sure to upgrade before we push to a production server. Thanks for the info!
Title: Re: Templates and Performance graphs with multiple DCIs
Post by: tomaskir on May 12, 2016, 12:43:01 AM
No, I mean from here http://git.netxms.org/public/netxms.git?js=1
I am running both the client and the server from newest commits in develop.

Please be aware these are development builds, and may contain bugs and/or issues.
I would recommend running only release versions in production, unless you are prepared to deal with all that comes with running latest development builds in production.

That said, nothing was really touched in DCIs and Perf. tab since 2.0.3 release (atleast not that I remember), so your issue is probably somewhere else.
Title: Re: Templates and Performance graphs with multiple DCIs
Post by: zshnet on May 12, 2016, 12:57:42 AM
Ah, I found out my problem. It's for DCI's that are using instancing. That's a bit different I would bet. What I mean is, I'm able to have (say) a graph with in/out bits/second by using two instanced DCI's that fetch those numbers from every interface. However, if I put those DCI's on a template, I get that earlier invalid DCI ID error when I open it up on a node's data configuration.

You were right about the regular graphs, though. I'm not sure what was wrong with that last attempt, but I got templated DCI's on the same performance graph, with my version, which is definitely nice.

Are you able to graph with instanced DCI's? Or should I log a bug report and move on?

Thanks,
Zach

Title: Re: Templates and Performance graphs with multiple DCIs
Post by: Tursiops on May 12, 2016, 02:35:50 AM
I think this is likely directly related to my post here: https://www.netxms.org/forum/configuration/instance-discovery-performance-tab-and-attached-dcis/

If you have two DCIs created from instance discovery, make sure that the first one created by instance discovery is the "primary", i.e. not attached to anything else.
The other DCI which is created afterwards can then attach to said "primary" and it should all work.
The order of your DCIs for this is important.

Cheers
Title: Re: Templates and Performance graphs with multiple DCIs
Post by: zshnet on May 12, 2016, 06:23:20 PM
Of course! That makes sense. I was wondering why it worked sometimes...

Thanks for clearing it up!
Title: Re: Templates and Performance graphs with multiple DCIs
Post by: Kevo on November 01, 2017, 03:15:02 PM
I'm trying to set this up now. I have interfaces setup in my template to pull the traffic from all the interfaces (bits/sec). I have the DCIs getting created properly and showing proper last values in nodes that have the template bound to them.

However, I can't seem to get a graph working for these. Is anyone able to explain to me how to set up the performance tab to get a combined graph of these values.

The best I've been able to do is get one graph per interface DCI which creates a bunch of graphs and it's not that helpful.
Title: Re: Templates and Performance graphs with multiple DCIs
Post by: Victor Kirhenshtein on November 02, 2017, 10:34:34 AM
Hi,

assuming you are using version 2.1.x you can put proper group name in DCI configuration. You can use macro {instance} there, so for example you can set group name for both Tx and Rx DCI as IfTraffic_{instance} - then server will create unique group name for each Tx/Rx DCI pair, and you'll have one graph per interface.

Best regards,
Victor
Title: Re: Templates and Performance graphs with multiple DCIs
Post by: Kevo on November 02, 2017, 02:33:23 PM
Thanks Victor. I have it working now. I am a little confused by the macro substitutions though. In the General section for description I have {instance-name} to put the interface name into the description column when looking at last values. For the parameter I have {instance} at the end of the oid to be able to grab the data from SNMP.

Just now when I tried your suggestion on the performance tab, {instance} works to pull the same value as {instance-name} does on the general tab, but {instance-name} didn't substitute anything.

Are the substitutions tab specific, or is there some rules for this that I am not understanding?

Also, is there anyway to filter out the unconnected interfaces on the performance tab? I don't want to filter them out of the node entirely as it would be good to know if something is plugged into a port it shouldn't be, but I don't want to see the traffic graphs for interfaces which don't have any if I can avoid it.

Thanks again.
Title: Re: Templates and Performance graphs with multiple DCIs
Post by: Victor Kirhenshtein on November 02, 2017, 04:21:22 PM
{instance-name} substitution is not implemented for group field (which I agree is counter-intuitive). We just need to clean it up a bit and make sure that both macros are substituted.
Currently there is no instance filtering for performance tabs.

Best regards,
Victor
Title: Re: Templates and Performance graphs with multiple DCIs
Post by: Kevo on November 03, 2017, 01:00:27 AM
A few things I think would be really nice to have in the template
1) Filtering on the performance tab
2) A way to order the graphs on the tab
3) The invert values option in the performance tab. I'd like to be able to do the TX/RX as positive and negative values.

And having some consistency in the macros would be great. It feels kind of like whack a mole trying to configure things to match up what we have on our other nms right now. I think we will be able to get all the functionality we need and then some, but it's a bit of a steep curve getting to speed.

Thanks again for the help.
Title: Re: Templates and Performance graphs with multiple DCIs
Post by: Victor Kirhenshtein on November 06, 2017, 10:34:50 AM
Hi,

regarding #2 - there is "order" option. Graphs with lower value will go up.

Best regards,
Victor
Title: Re: Templates and Performance graphs with multiple DCIs
Post by: Kevo on November 06, 2017, 04:37:13 PM
I'd like to be able to order the macro generated dci graphs as well. Is there any macros that work in the order field?