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

Topics - zshnet

#1
General Support / Adding libraries to nxshell Jython?
August 17, 2016, 03:20:57 PM
Hi all,

I'd like to use the python library "requests" with Jython, but I can't seem to find where NetXMS installs it. Is it balled up in the nxshell Jar? Is there a way I could add libraries to Jython? I looked, and apparently requests is compatible with Jython.

Thanks,
Zach
#2
Hi all,

I'm having an issue with accessing my main NetXMS server from a separate private network. I have a computer with  a public address through 1 to 1 NAT, which tries to use nxshell to run a script. This computer talks to the NetXMS server's public IP address (which I can use to access the NetXMS console, so it does work). Any time I try to do this, the process hangs for many minutes (>10) and then eventually ends with an NXCsession timeout error.

Is there anywhere I can find more information? I didn't see anything in the logs, but is there a keyword I should be looking for? It seems to be specific to this private network (others can access the NetXMS server fine). When I run packet capture on one of the intervening routers, I can see that the two talk and send acknowledgement packets, but no data is ever exchanged.

Thanks,
Zach

P.S.
For clarification, I have the following topology when trying to access NetXMS


|----------------Private Network 1----------------- ------------------------------------------------| ------------Public Internet-----------| --------------------Private Network 2-----------------------------------------------------------------|

Server with NAT-ed public IP address, ==> Router with public internet access====>         Fiber head-end       ====>  Router with public internet access====> NetXMS server with public IP address
so it can reach public internet                                                                                         to public internet
#3
General Support / GPS Directly from SNMP?
August 08, 2016, 06:43:27 PM
Hi all,

We have a bunch of Airfiber 24's which have GPS receivers. They report GPS based on SNMP (one for Lat, one for Long), and I'd love to directly plug that into the geolocation attribute. Is there any way to do this? If not, I'll just use NXshell to take the data and plug it directly.

Thanks,
Zach
#4
Hi all,

We had a very bad crash on our system, and luckily we could recover the database files.

I replaced the files in /var/lib/postgresql/version/main with all the old database files,  I could view the files in the database, and I could run the nxdbmgr check without any errors.

However, when I ran Netxms, it just sat, pouring out tons of select queries. I could not log in, receiving a "connection refused."

After a lot of troubleshooting, I discovered my error was similar to this:

ERROR: could not access status of transaction 4244329
DETAIL: could not open file "/var/lib/postgresql/9.3/main/pg_clog/0004"

I needed to fill the file with zeroes so that postgresql would decide that row was full of zeroes and continue on. Once I had solved all of those errors (I tried to pg_dump a specific table and it told me the files to fix) I was able to run NetXMS without issue.

Is there any way for nxdbmgr to find that sort of error? I don't know much about databases, but I figured it might help to have this error be visible.

Finally, I'm curious what the nxdbmgr means when it says a database is "Locked by the server." I could not find an answer through Googling, though it wasn't the most thorough search. Any suggestions?

Thanks,
Zach
#5
Hi all,

I am looking into more event log filtering, and I'm unsure from the documentation how exactly to create an OR filter. I would like to filter events with severity 0 OR severity 4, rather than filtering them separately. Anyone have any suggestions where to look?

Thanks,
Zach
#6
Hi all,

I can see in the docs there's a SetObjectManaged call from NXCSession. Is there a way to get the managed state?

Thanks,
Zach
#7
General Support / De-duplicating nodes?
July 07, 2016, 08:10:14 PM
Hi all,

I have three nodes that are the same object (found, I assume, through network discovery). Normally when this happens, the nodes appear to have some difference between their interfaces, and I chalk the duplication up to that. However, these three have all the same interfaces. Is there any way to de-duplicate this node?

They all have different primary hostnames, of course, but under the interfaces tab there's no difference. Any guesses?

Thanks,
Zach
#8
General Support / Make missing data all zeros?
June 27, 2016, 06:46:29 PM
Hello all,

We have a lot of nodes that flap on SNMP availability due to routing issues. However, graphs can be deceiving as they simply replace any empty zones with a line connecting the two pieces of "real" data on either side.

Is there a good way to replace lost data with zeros, -1's, anything to make it obvious that it's an outage? I was thinking at worst I could add a transformation script, but something smarter would be preferred.

Thanks,
Zach
#9
Hi all,

I'm interested in filtering object tools by OS, as we have to keep up a few tools for linux, mac, and windows and it's starting to crowd menus.

I know there's a System OS name filter on object tools, but I could not figure out (by guessing likely candidates) what the OS names might be. Is there a way to check what NetXMS thinks my OS name is?

Thanks,
Zach
#10
Hi all,

I figured this belongs in a different topic. I am trying to query the event log, and am instead getting a Databaase Failure error of the following:


Traceback (most recent call last):
  File "nxshell_eventcounter.py", line 8, in <module>
    eventLog.query(logFilter)
at org.netxms.client.NXCSession.waitForRCC(NXCSession.java:1536)
at org.netxms.client.log.Log.query(Log.java:121)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)

org.netxms.client.NXCException: org.netxms.client.NXCException: Database failure



Any thoughts? I'm worried the Columfilter is being set incorrectly. My eventual goal is to use a column filter to query events only of a certain severity, but I figured I would start easy. My code is reproduced below:



eventLog = session.openServerLog("EventLog")

columnFilter = ColumnFilter(ColumnFilter.EQUALS,8153)
logFilter = LogFilter()
logFilter.setColumnFilter("Source",columnFilter)

eventLog.query(logFilter)

table = eventLog.retrieveData(0,2)


Thanks,
Zach
#11
Hi all,

I can see in the nxshell docs that I can get logs out of the server. However, it requires a string to get the right log. I tried "Event Log" "eventlog" "events" and a few others but can't seem to guess the correct string to pull the event log from the server. Can anyone point me to a list of the log strings?

For the curious, I'm attempting to build an audit of our events every night, and email an easy-to-read summary of what occurred every morning. We have a network with a huge number of devices, so the event log can be pretty dense. Rather than seeking out the event log on devices, this way engineering is forced to see problems in the network each morning. If you might have a better NetXMS way to do this without scripting, I'm all ears, but as a programmer scripting is usually my first stop.

Thanks,
Zach
#12
Hi all,

We have a network with >1000 devices. I was asked to display all node down alerts for 24 hours, and our "critical" alerts alone surpassed the amount NetXMS will put in one list (i.e., it went from 24 hours ago to 12 hours ago, instead of 24 hours to now). I assume this is a limit somewhere on number of events NetXMS will display in the event log. Since it already scrolls, is there a way we could increase this amount? We'd love to at least be able to show 24 hours of events.

Before you ask, they were generated mostly by a small set of devices that are flapping, and not because our entire network goes down on a nightly basis.

Also, how does NetXMS sort when you choose to sort by "Source?" It groups events from the same node, but otherwise seems to sort the groups arbitrarily. Is there a way I can make it sort alphabetically?

Thanks,
Zach
#13
Hi all,

I was wondering if anyone has a fix for either of the two problems we encountered. The first is that if you right click on a network map item and choose "Object Details" it will not go to the correct object details. However, this works from the alarm browser, so I would hope someone has a fix?

The second is that if a network map is scaled at all (or on my co-worker's awful low-res display) the mouse clicks in the wrong place. I know that's probably in a lower-level library, but has anyone encountered a solution?

Thanks,
Zach
#14
Hi all,

I have a set of switches that are always reported in the "UNKNOWN" state, due to some issues with snmp (they report IfOperState, not IfAdminState). Also, on random nights between 11pm-6am, the switches will stop responding to snmp. However, they're still functioning and continuing to pass ICMP ping checks.

Is there any way to force a node to only care about its ping status, not interface snmp status? Alternatively, can I force interfaces to poll IfOperState, not IfAdminState?


Thanks,
Zach
#15
General Support / Disable DCI in script?
May 20, 2016, 09:29:06 PM
Hi all,

I may have missed this somewhere, but I can't set the status of a DCI to disabled from a script. Is there a specific way to do this? I'd like to disable certain interface DCIs after the configuration poll. Just trying to assign a number to the DCI->status variable results in an error.

Thanks!
#16
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