At some point last year, I built a Windows 7 desktop gadget for displaying NPC views on the desktop. It's a fairly simple gadget. You set the URL you want to display (which could actually be any URL, but use the 'Generate URL' view menu option in NPC to get an NPC view URL) and the size. The gadget will auto refresh every 60 seconds. The settings dialog also allows simply scaling the size of the gadget. So, if the aspect ratio is fine, but it needs to be bigger, just put a bigger number in that field. It's just a scalar and the height and width will be multiplied by that number.
You can download the gadget here.
Enjoy!
I'm an engineer who doesn't care for a lot of fluff for fluff's sake.
Thursday, May 31, 2012
Thursday, May 24, 2012
NPC and NetVoyant Web Services Gadgets
In combination with my method of inserting custom content into NPC, I've created a couple of gadgets that can be added to NPC. These gadgets give the viewer access to the NPC and NetVoyant web services that can be used to import and export group definitions, add devices to NetVoyant for polling, delete devices from NetVoyant, and delete discovery scopes from NetVoyant.
I hope you enjoy them. If you have any improvements, please let me know so I can update the source.
Installation Instructions
- You can download them here [link removed, see the Tools page].
- Extract the zip contents to the custom content directory described here.
- Edit the html files to update the URL.
- Look for the <form> tag and update the action string to point to your NPC or NV server (depending on the html file).
- Put three browser views on a page that only NPC administrators can access.
- Edit the three browser views to point to the following URLs (you should probably update the view names as well and I like to hide the view border)
- NPCGroupExport.html
- NPCGroupImport.html
- NVDeviceMgmt.html [this widget has been moved here]
NPCGroupExport.html
This gadget exports XML for any group in NPC. This XML describes the group structure and defines any rules for the groups. This can be used in conjunction with NPCGroupImport.html to modify or populate NPC groups programmatically.NPCGroupImport.html
This gadget imports XML into NPC to redefine groups. This can be used to redefine groups, rules, or membership.NVDeviceMgmt.html [this widget has been moved here]
This gadget facilitates adding and removing devices from NetVoyant.I hope you enjoy them. If you have any improvements, please let me know so I can update the source.
at
10:27 PM
1 comments
More posts like this:
How To,
My Tools,
NetQoS,
NetVoyant,
NPC,
NPC Browser View
Monday, May 21, 2012
Analyzing TCP Application Performance
Well, I've been talking about doing it for a long time and I finally got an excuse. One of my customers wanted me to prepare my SuperAgent bounce diagram presentation for recording. In stead, I opted to make a YouTube video. I've given this presentation countless times and now that I've got a video, I can spend more time answering advanced questions than going over fundamentals. Without further ado, here it is.
I've got plans for more videos covering the things I cover most often. My next project is the video of the presentation I did for the CAIM Community's monthly webcast.
I've got plans for more videos covering the things I cover most often. My next project is the video of the presentation I did for the CAIM Community's monthly webcast.
Thursday, May 10, 2012
Recent Political Revelations
Don't worry, this isn't a post about gay marriage and I don't intend on starting an argument. Let me be clear, I am going to try to ensure that this post isn't about either side of the argument.
That said, I would like to let people know the rules that I play by when engaging in passionate debate with others on political or religious topics.
So, where on the moral-issues-that-are-laws scale does gay marriage fall? Let me give the boundaries of my moral scale: murder and coffee. I morally believe murder is wrong and it should be outlawed. I morally believe drinking coffee is wrong, but it should not be outlawed. My question is not whether or not gay marriage actually is morally wrong. My question is not really whether or not it should be outlawed because everyone is free to choose and that free will engenders disagreement. My question is whether or not the majority of the people think it should be outlawed.
That said, I would like to let people know the rules that I play by when engaging in passionate debate with others on political or religious topics.
How to Argue
- I'm not going to argue with my good friends trying to convince them that they should think or choose one way or the other. I'll let our democratic republic system of government determine that.
- I don't feel a particular need to broadcast the side of the issue on which I stand.
- I will not berate anyone for announcing their own position, nor will I berate anyone for trying to convince others of the reasons behind their position.
- I will play fair and make statements like 'I believe...' and 'I think...' instead of statements like 'It is a fact that...'. I will not say, 'You are wrong' nor 'I am right'.
- I will probably choose to not engage with people who try get me to contravene these rules. If someone can't have an argument within these constraints, I don't think arguing will produce any meaningful results.
- I will be concise and logical in my arguments.
- I will admit I am wrong when someone points out the logic in my arguments.
- I will allow others time to rephrase or explain their arguments if I point out a flaw in their reasoning.
So, where on the moral-issues-that-are-laws scale does gay marriage fall? Let me give the boundaries of my moral scale: murder and coffee. I morally believe murder is wrong and it should be outlawed. I morally believe drinking coffee is wrong, but it should not be outlawed. My question is not whether or not gay marriage actually is morally wrong. My question is not really whether or not it should be outlawed because everyone is free to choose and that free will engenders disagreement. My question is whether or not the majority of the people think it should be outlawed.
I stand on one side of the gay marriage issue, and my conviction is such that no amount of argument will sway me. I am open to any discussion about the issue, pending my availability after work and family responsibilities.
Wednesday, May 2, 2012
SNMP Counter32 vs. Gauge32
I ran into a problem recently where a manufacturer had built a MIB that contained an OID for 'objects in cache' with syntax Counter32. However, when polling the value of that OID, it was discovered that the OID didn't behave like a Counter32; it went up and down (Counter32 is supposed to only go up; a lower value than the previous poll indicates a roll-over). It occurred to me that the manufacturer probably meant to indicate the current number of objects in cache and mistakenly set the syntax to Counter32. Since the actual number of objects in cache can rise or fall, a Counter32 wouldn't accurately represent this. Instead, a Counter32 would indicate how many items had been added/removed from the cache since the previous poll (since most NMS systems would take the delta between the previous counter value and the current counter value). While knowing how many items had been added or removed from the cache since the previous poll might be useful, what is probably more useful would be the total count. The difference actually has nothing to do with the value returned by the device. The problem is that since the MIB indicated that the OID is a Counter32, most NMS systems interpret that type of object differently, performing a delta instead of reporting the actual number returned by the device.
The fix for this is to change the way the NMS system interprets the returned value by changing the MIB. In this case, the syntax needs to be changed from Counter32 to Gauge32.
Here is what the MIB contained originally:
Here is what the MIB needs to be changed to:
Changing this syntax in the MIB and recompiling into the NMS system instructs the NMS to use the raw value returned instead of performing a delta with the previously obtained value.
In NetVoyant, recompiling the newly edited MIB will be sufficient to correct this problem. However, a restart of the Mibs service is required before the newly compiled syntax gets used. Since everything depends on the Mibs service, everything will get restarted.
The fix for this is to change the way the NMS system interprets the returned value by changing the MIB. In this case, the syntax needs to be changed from Counter32 to Gauge32.
Here is what the MIB contained originally:
proxyNumObjects OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of objects currently held by the proxy." ::= { proxySysPerf 2 }
Here is what the MIB needs to be changed to:
proxyNumObjects OBJECT-TYPE SYNTAX Gauge32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of objects currently held by the proxy." ::= { proxySysPerf 2 }
Changing this syntax in the MIB and recompiling into the NMS system instructs the NMS to use the raw value returned instead of performing a delta with the previously obtained value.
In NetVoyant, recompiling the newly edited MIB will be sufficient to correct this problem. However, a restart of the Mibs service is required before the newly compiled syntax gets used. Since everything depends on the Mibs service, everything will get restarted.
Subscribe to:
Posts (Atom)