Welcome to Questions - Ask OpenNMS, where you can ask questions and receive answers from other members of the community.

How to manually define a topology Map (1.12.X)

0 votes
Folks :


In an installation (carrier) they have mostly all kinds of "radios" (dumb communication channels between locations), and that is a big part of their network.

After Linkd activation (just the "Quick start" from "http://www.opennms.org/wiki/Linkd") the nodes in a test (10) show no links between them after several days (default Linkd configuration, so I assume it should try all the discovery methods mentioned in the URL before mentioned)

Since this are not Bridges &/or smart SNMP components that might be subject to provide MAC-level information to help ONMS construct the tree, I guess : can I tell ONMS explicitly how to draw the topology between the nodes ?



OpenNMS version
asked Dec 5, 2013 by amg (170 points)
Hey Arturo,

if you have the nodes in your nodes table in the database you could manually fill the table datalinkinterface.

There you have to set the relation ship beetween each node.

As soon you have done that the links should occur on the topology map.

You could also do that programatically. For that use "DatalinkInterfaceDaoHibernate" class.
Thanks a lot !!!!

That sounds like a way ... however, since I am total ignorant (but trying hard not to be it for long :) on what can I do with

1) "You could also do that programatically. For that use "DatalinkInterfaceDaoHibernate" class" : looked in the wiki, no a single reference : any pointers on were to read more about it ? Does this mean having to code in Java ?

2) "manually fill the table datalinkinterface" : where / how can I manipulate that ? REST ? Or directly touching PostgreSQL ? Any pointers on documentation on how to do it ?

Looking in the wiki for this, I found (under the REST entry) :


(New in OpenNMS 1.11)

You can manipulate raw Linkd DataLinkInterface information using the links API.
GETs (Reading Data)

    Get a list of links. The default for offset is 0, and the default for limit is 10. To get all results, use limit=0 as a parameter on the URL (ie, GET /links?limit=0).
    Get a link specifically by ID.

PUTs (Modifying Data)

PUT requires form data using application/x-www-form-urlencoded as a Content-Type.

    Modify an existing link.

POSTs (Creating Data)

    Add a new link.

DELETEs (Removing Data)

    Delete the link with the given ID.

Is this the way ?



1 Answer

0 votes
With OpenNMS 18 we have added a GraphML topology provider which allows you to define your own topology. See here: http://docs.opennms.org/opennms/releases/19.0.0/guide-development/guide-development.html#_graphml
answered Feb 15, 2017 by indigo (11,680 points)