Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - sperlm

#46
General Support / Alcoma devices and map integration
October 29, 2013, 05:29:08 PM
Hello,

   this has bothered me for a while now...

Alcoma devices do not have LLDP functionality (confirmed with system developer) and does not appear on Network Maps.

But in the event : "Include end nodes" turned on + one device in Alcoma pair goes offline = Alcoma shows on the map.
On top of it, the device also shows information about network peers in the Interface tab, but as soon as the offline device is back online this information disappears.

My questions would be
- how comes the network peers information is removed when the pair node goes back online
- is it possible somehow define devices without LLDP functionality to be acknowledged and incorporated by the Automatic Network Map process ?

The information about the peer takes into account only network interface of the device so I wouldnt mind these device pairs not being connected, just showing as end nodes at the correct place would be sufficient.

With regards,

Milan Sperl
#47
Feature Requests / Mixed Network Map modes
October 24, 2013, 03:35:41 PM
Hello,

   automated network maps work perfect, but in reality it is somewhat lacking in flexibility related to intentional adjustments and tweaking.

What I am talking about is a network consisting of parts which are "separated" by BPDU drops or consist of devices incapable of LLDP (which are omitted in the map).

So I was thinking how to bypass these limitations...

* BPDU drops and other port related "separations"
If there was an option to select more than one seed node when the map is created (or better - be able to add/remove "additional seeds").
this would be used on maps that have more than one "separated" parts, because seeding the map from the separated part would only create map with only that one part in addition to the main part

* manually adding nodes
The possibility to hard-add devices between two automated ones based on a rule (after the map automatically updates), or being able to override some logic and add nodes to a list of found devices.
this could help with adding non-standard devices without LLDP functionality, right now I have to create two maps - one automated, and one manual with the missing devices

Without these options I had to create one manual map with several drill downs. Trying to unneedingly split up the network so the automatic maps can handle it. It is not perfect as all drill down maps show the main part of the map unless I select appropriate radius and seed node for the map....

Do you think something could be done along those lines ?

With regards,

Milan Sperl
#48
Hi,

   just a quick heads up - the whole problem seems to originate from insufficient disk space.
Looks like playing with tons of DCIs to allocate great deal of free space was the main problem.
After realizing state of the free disk space left we toned down the automatically created DCI amount, backup-restored sql. After that map creation was functional again.

With regards

Milan Sperl
#49
As I wrote - both interfaces are shown in Interfaces tab in NetXMS for both devices
Code (Interface for device 3801) Select
3809 Vlan-interface104 136 855 Vlan-interface104 00:1A:C1:9A:D0:01 10.254.254.9 UP DOWN UP Unmanaged
Code (Interface for device 3881) Select
22311 Vlan-interface212 136 37 Vlan-interface212 D0:7E:28:B6:C3:FC 10.254.254.9 UP UP UP Normal

Find IP function returns one row only (device ID 3881, with interface ID 22311)
1 Rack_Vysocanska_POP Vlan-interface212 D0:7E:28:B6:C3:FC 10.254.254.9 Cakovice-POP GigabitEthernet1/0/25 indirect
The same applies for all other cases.

Deleted and ran configuration poll for both interfaces - both recreated the same way, only with different ID.
Anyway, this kind of "error" which might be intentional configuration cannot be the cause of the map creation problem, right?

Will do some more map testing, I still think it might be node related rather than general.
I thought about using higher debug level than 4 if there were no messages about the problem. Its just that it creates rather big log very fast... do you have any suggestions what level should I try or what to look for?

On a side note - had some issues with space for the DB (can this be the cause of network map creation timeouts?) and eventually run out of space completely. It seems that creating automated DCIs (for 30 day period) might not be a wise move as every object takes approximately 25 MB of space in MySQL database. So we are planning to backup-restore the database to save up space after limiting the DCI spread (and duration to 7 days), for the time being.

With regards

Milan Sperl
#50
Hello,

* regarding network maps
- attaching 2 topology polls, nothing really supsicious though...

* ragarding duplicate IPs
had to look in SQL database and dig for:
- "duplicate" interface ID
- then for the IP found in the interface ID
Then look in NetXMS console and:
- search Interface view for the ports
- check by Find IP function

Results:
- in all cases both interfaces are shown in Interfaces tab in NetXMS for both devices
- interface with the ID in the error log is the one which NetXMS Find IP function finds

Should I delete and recreate the other interface then ?

Quote from: EXAMPLE[11-Sep-2013 10:08:21.100] WARNING: duplicate interface IP address 0AFEFE09 (interface object Vlan-interface212 [22311])
--SQL dig on interface 22311
22311, 3881, 0, '10.254.254.9', '255.255.255.252', 136, 37, 0, 0, 0, 0, 0, 'D07E28B6C3FC', 0, 1, 1, 0, 0, 'Vlan-interface212'
--SQL dig on interface-IP 10.254.254.9
3809, 3801, 0, '10.254.254.9', '255.255.255.252', 136, 855, 0, 0, 0, 0, 0, '001AC19AD001', 0, 1, 2, 0, 0, 'Vlan-interface104'
22311, 3881, 0, '10.254.254.9', '255.255.255.252', 136, 37, 0, 0, 0, 0, 0, 'D07E28B6C3FC', 0, 1, 1, 0, 0, 'Vlan-interface212'
--NetXMS Console Find IP 10.254.254.9
Rack_Vysocanska_POP   Vlan-interface212   D0:7E:28:B6:C3:FC   10.254.254.9   Cakovice-POP   GigabitEthernet1/0/25   indirect
(this is the device 3881 with interface 22311)

* both interfaces are shown in the Interfaces tab in NetXMS.

With regards

Milan Sperl
#51
Hello, back after some debugging-fixing...

Thanks for pointing the debug mode, level 2 found some obvious errors which I managed to fix.
Tried to troubleshoot level 3 after that, not succesfully for now...
The main problem still remains with one exception - managed to create one IP topology map (for one locality only).

In debug level 3 there are obvious parts which might cause the problem I have:
[03-Sep-2013 13:51:53.837] NetworkMap::updateContent(Cerny Most [8770]): call to buildL2Topology on object 5008 failed
[03-Sep-2013 13:51:53.839] NetworkMap::updateContent(Krc [21794]): call to buildL2Topology on object 5181 failed
[03-Sep-2013 13:51:53.839] NetworkMap::updateContent(Jizni Mesto II [21874]): call to buildL2Topology on object 6282 failed
[03-Sep-2013 13:51:53.839] NetworkMap::updateContent(Neratovice [23851]): call to buildL2Topology on object 22855 failed
[03-Sep-2013 13:51:53.839] NetworkMap::updateContent(Lehovec [32983]): call to buildL2Topology on object 3975 failed
[03-Sep-2013 13:51:53.847] NetworkMap::updateContent(Kukelska [36863]): call to buildL2Topology on object 12123 failed

These are mostly IDs of Network Maps and IDs of the base object.

There were some warnings during initialization too, which I would like to fix but failed for now:
[03-Sep-2013 13:50:50.350] WARNING: duplicate interface IP address 0AFEFE09 (interface object Vlan-interface212 [22311])
[03-Sep-2013 13:50:50.615] WARNING: duplicate interface IP address 0AFEFEED (interface object Vl513 [22530])
[03-Sep-2013 13:50:53.217] WARNING: duplicate interface IP address 0AFEFE75 (interface object Vlan-interface108 [36849])
[03-Sep-2013 13:50:53.219] WARNING: duplicate interface IP address 0A006001 (interface object Vlan-interface800 [36851])
[03-Sep-2013 13:50:53.221] WARNING: duplicate interface IP address 0AF89D01 (interface object Vlan-interface801 [36852])
[03-Sep-2013 13:50:53.223] WARNING: duplicate interface IP address 0AFEFE1E (interface object Vlan-interface206 [36853])
[03-Sep-2013 13:50:53.229] WARNING: duplicate interface IP address AC1064C8 (interface object Vl510 [36856])
[03-Sep-2013 13:50:53.231] WARNING: duplicate interface IP address 0AFEFE69 (interface object Vlan-interface501 [36857])
[03-Sep-2013 13:50:53.233] WARNING: duplicate interface IP address 0A005B58 (interface object Vlan-interface91 [36870])

I would like some pointers how to fix these.
Tried to search in database for nodes where these ports are but not sure how to fix it (already tried removing the ports and polling configuration afterward).

Attaching the whole level 3 log to be sure.
p.s. I suppose the errors at the scripts section are just warnings, not interfering with anything (I know these scripts are not fixed/finished)
#52
Hello, I am struggling with creating Network Maps...

After upgrading to 1.2.8 every time I try to create any type of Network Map I get this "Problem Occured - 'Create new network map' has encountered a problem. Cannot create network map object "test": Request timed out".
Not sure if the problem appeared with new version as the map adding feature was needed only recently.

Already created maps work fine.

With regards

Milan Sperl
#53
Not sure if I understood the OP post well so I will just comment on what I achieved with automated creation of DCIs.

I have got a script that scans all possible ports for a node and then creates DCIs with predefined OIDs. Not a script I am proud of but it works somehow...
Basically I can mass-create DCIs if I manually state what sort of base OIDs to use and what types to include. Could expand this to automatically select base OIDs based on device OID.

If I add this to automatic applied scripts it should be possible to create DCIs based on device type.

I mean - creating DCI from script with CreateDCI function is working... so I am just wondering what was the request in the OP and why the statement "you cannot create DCI from script" ?

With regards,

Milan Sperl
#54
Hello,

   is there a way, apart from SQL query, to get information stored in NetXMS ?

The goal would be having a wiki/document or simply a link that would list Overview (General and Comments) information for Object with predefined ID for example?

A sort of html link with user login/password (created for this readonly purpose).
Does not have to be a link, any batch script would do (to pass needed information to a text file for example).

With Regards

Milan Sperl
#55
General Support / Re: Instance Discovery questions
June 20, 2013, 12:26:05 PM
I have to admit I have troubles with using trace too. I even created script to flood all trace levels with a simple message and try to run it in console whenever I need to restart server (and start it with yet another level of debug) and look in all logs I can.
Btw there is no log called "main log" specifically - I might be looking at wrong places ?

As for the DCI description customization... {instance} is a lil bit clumsy for naming purposes but working. What are you trying to achieve?
#56
My bad. It works now, thanks again.

The short-circuit functionality si great too.
Can shorten structures like this:
if (x != null) return (x > 0);
else return 0;

... into this:
if (x != null && x > 0) return 1;
-if I don't need to catch return 0, which is not needed in filters
-in scripts I should add "else return 0;"

p.s. I unintentionally left my test structure (that "x = 0" etc, using 3 lines with just "X") in the last post, sorry about that. It was there only because I was testing it and commenting out lines or skipping the filter altogether.

With Regards

Milan Sperl
#57

now = time();
return GetAvgDCIValue($node, FindDCIByName("System.CPU.Usage"), now - 600, now);  // 600 is number of seconds

Hello, just informing you about results from testing this functionality.
I could not get results using FindDCIByname function because there simply is not "name" in DCI.
Following your explanation from the other topic...
Quote"name" was the old universal name for what you now see as "Parameter" for agent DCI, "OID" for SNMP DCI, etc.
...does not seem right either. That would mean FindDCIByName looks into parameter and that is not really intuitive.

However, using FindDCIByDescription function with this functionality works like a charm.
I find using FindDCIByDescription better by far because I can set up the description myself (even in automatically created DCIs) and use it in scripts not relying on specific "name" of the DCI (if the "name" really means specific OID path), which can vary from device to device.

With Regards

Milan Sperl
#58
This should be really easy.
Notice the setting columns start from "Left red zone end", this literally means you can have red zones at beginning and at the end too.

For your needs these settings should work:
Minimum value : 0.0
Maximum value : 100.0
Left red zone end : 10.0 (end at 10.0, meaning it starts from Minimum value)
Left yellow zone end : 20.0 (end at 20.0, starting from Left red zone end)
(green zone between)
Right yellow zone start : 100.0 (starts "after" Maximum value - not showing yellow zone)
Right red zone start : 100.0 (starts "after" Maximum value - not showing red zone)
Place legend inside dial only moves the legend inside the dial and it comes from data source Display name (in my case I used CPU DCI).

Attached dial how it looks:
#59
Thanks for pointing the problem for me.
I should have used the findObject function and I have to use ID of the tested node only. Cannot use Object Name, which is OK for testing purposes, in called scripts I can use $node again.
The "null" parameter in findObjectNode was not clear to me (but it works with it too).

Thanks once more.

Milan Sperl
#60
Thanks for the patience, youre really doing a great job.
(btw I found where the Performance Tab is just now, thats why I was confused and asked... sorry :-[)

As for the filtering scripts I tried to convert this:
if (($node->snmpOID) == ".1.3.6.1.4.1.25506.1.1")
{
snmp = CreateSNMPTransport($node);
x = SNMPGetValue(snmp, ".1.3.6.1.4.1.25506.2.6.1.1.1.1.6.47");
if (x != null) return (x > 0);
else return 0;
}

Filter is to pick nodes that have set snmpOID and CPU statistics at address 47.
Structure is built with this ideas:
- if snmpOID is not equal the whole CreateSNMPTransport is not executed (and savig a little bit of system resources)
- asking for SNMPGetValue just once to do two tests
- return 1 only if value is numerical and non-zero (if I tried to return just (x>0) there is possibility x is null and creating error)

Tried to "convert" it to script style this way:
use filterTools;
if (($node->snmpOID) == ".1.3.6.1.4.1.25506.1.1")
{
x = 0;
x = aboveZero(.1.3.6.1.4.1.25506.2.6.1.1.1.1.6.47);
return x;
}

Code (filterTools) Select
sub aboveZero(dci)
{
snmp = CreateSNMPTransport($node);
x = SNMPGetValue(snmp, dci);
if (x != null) return (x > 0);
else return 0;
}


With Regards

Milan Sperl