Processor load OIDs changing by themselves in Windows

Post support questions that relate to the Windows 2003/2000/XP operating systems.

Moderators: Developers, Moderators

Post Reply
silviumc
Posts: 4
Joined: Fri Sep 18, 2009 9:09 am

Processor load OIDs changing by themselves in Windows

Post by silviumc »

I monitor Windows machines with the native SNMP service.

It seems that the OIDs for processor load don't follow any rule, they appear random. And what's worse they seem to change for no apparent reason and at random times between reboots.

Example: computer with 4 cores:
.iso.org.dod.internet.mgmt.mib-2.host.hrDevice.hrProcessorTable.hrProcessorEntry.hrProcessorLoad
.1.3.6.1.2.1.25.3.3.1.2
The OIDs for the four cores are:
hrProcessorLoad.2
hrProcessorLoad.3
hrProcessorLoad.4
hrProcessorLoad.5

I cannot understand why they don't start at 0 or at 1. What is this, 2 to 5? When I have first defined this host, they used to be 1 to 4, then at some point they changed.
I do CPU graphs for each core, like in the attachment. You see that only 3 cores are now there because of said random change of OIDs.

Is there a way I could define this so it doesn't matter what number Windows gives them?

Thanks
Attachments
Windows 2003 with 4 CPU
Windows 2003 with 4 CPU
atm.png (4.13 KiB) Viewed 5446 times
User avatar
BSOD2600
Cacti Moderator
Posts: 12171
Joined: Sat May 08, 2004 12:44 pm
Location: USA

Post by BSOD2600 »

This is normal.

How are you collecting data from the hrProcessorLoad OIDs? Using cacti's snmp processor template, it should automatically reindex on the device reboot and should not be a problem if the numbers change.

What cacti version?
silviumc
Posts: 4
Joined: Fri Sep 18, 2009 9:09 am

Post by silviumc »

Cacti 0.8.7e with patches

I define the datasources for each server manually, by browsing SNMP and using the OIDs that have the data. Then I put them all in a "stacked" graph.

I don't understand how the cacti's SNMP processor template is supposed to work for this. I tried it on a server and it could only do a graph for each core, and even that doesn't work. Those graphs have wrong data, see attachment.
Attachments
This is supposed to be a processor graph
This is supposed to be a processor graph
wrong.png (3.02 KiB) Viewed 5404 times
User avatar
BSOD2600
Cacti Moderator
Posts: 12171
Joined: Sat May 08, 2004 12:44 pm
Location: USA

Post by BSOD2600 »

silviumc wrote:I define the datasources for each server manually, by browsing SNMP and using the OIDs that have the data.
This is the wrong way to do it. You should be using the cacti snmp processor template so it automatically reindexes the server on reboot (when OIDs can change).
Those graphs have wrong data, see attachment.
1) you're still using rrdtool 1.0.x, why?
2) read what m means: http://forums.cacti.net/viewtopic.php?t=8168. is the server under heavy processor load?
silviumc
Posts: 4
Joined: Fri Sep 18, 2009 9:09 am

Post by silviumc »

This is the wrong way to do it. You should be using the cacti snmp processor template so it automatically reindexes the server on reboot (when OIDs can change).
I realize that it's wrong, but I don't know how to get it to work right.
1) you're still using rrdtool 1.0.x, why?
Old SLES9 server. If there's an advantage in using a newer rrdtool, I'll compile one.
2) read what m means: http://forums.cacti.net/viewtopic.php?t=8168. is the server under heavy processor load?
No, it isn't. Those are just plain wrong graphs. I know what "m" means, but it's just wrong data, wrong graph, wrong everything :( This is obtained with the CPU template from cacti. My problem is that I don't understand how this template is supposed to work.
User avatar
BSOD2600
Cacti Moderator
Posts: 12171
Joined: Sat May 08, 2004 12:44 pm
Location: USA

Post by BSOD2600 »

silviumc wrote: My problem is that I don't understand how this template is supposed to work.
time to learn.

1) read through http://docs.cacti.net/manual:087

2) The snmp processor template uses \cacti\resource\script_server\host_cpu.xml which then as you can see, invokes cacti\scripts\ss_host_cpu.php. Inside that file, you see it uses the following base OID: "index" => ".1.3.6.1.2.1.25.3.3.1"

3) as for 'wrong everything' read through http://docs.cacti.net/manual:087:4_help.2_debugging
silviumc
Posts: 4
Joined: Fri Sep 18, 2009 9:09 am

Post by silviumc »

2) The snmp processor template uses \cacti\resource\script_server\host_cpu.xml which then as you can see, invokes cacti\scripts\ss_host_cpu.php. Inside that file, you see it uses the following base OID: "index" => ".1.3.6.1.2.1.25.3.3.1"
I appreciate you're trying to help me, but I'm not getting it! I have a few fundamental issues:

1. Why doesn't it just work? Why doesn't Cacti have a template for Windows multiple CPU load that just works (like the one in the first picture I posted)? Is this such an uncommon graph? Nobody ever needed that until now or what?
2. Why does Windows move around those stupid OIDs? Is there a reason, other than to screw with the sysadmin?
User avatar
BSOD2600
Cacti Moderator
Posts: 12171
Joined: Sat May 08, 2004 12:44 pm
Location: USA

Post by BSOD2600 »

1. You can create a multi-cpu graph, just have to use a different method. one must abstract out the specific OID each processor uses since they change. instead, you latch onto the cpu # since it doesn't change. Then once you have data sources tracking each cpu, you create an aggregate graph with all of the cpus. I strongly suggest the aggregate plugin for this otherwise you can do it manually, but it's painful.

2. I researched it a long time ago and sort of forget. think it was something about how windows updates which effect cpu / wmi / monitoring stuff can cause the internal indexes to get re-indexed which of course changes then numbers.
User avatar
TheWitness
Developer
Posts: 17007
Joined: Tue May 14, 2002 5:08 pm
Location: MI, USA
Contact:

Post by TheWitness »

The index is the PID, which when a box is either rebooted, or the service restarted, changes.

Therefore, you have to be very careful how your re-index. Definitely don't want to do this with snmpV1.

TheWitness
True understanding begins only when we realize how little we truly understand...

Life is an adventure, let yours begin with Cacti!

Author of dozens of Cacti plugins and customization's. Advocate of LAMP, MariaDB, IBM Spectrum LSF and the world of batch. Creator of IBM Spectrum RTM, author of quite a bit of unpublished work and most of Cacti's bugs.
_________________
Official Cacti Documentation
GitHub Repository with Supported Plugins
Percona Device Packages (no support)
Interesting Device Packages


For those wondering, I'm still here, but lost in the shadows. Yearning for less bugs. Who want's a Cacti 1.3/2.0? Streams anyone?
Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest