32 Replies Latest reply on Jun 25, 2012 8:45 AM by david.templeton

    Integration with Google MAPS API


      Will we ever see this in Orion?

      When having lots of nodes spread over a geographically semi sized area (a town), making static maps is way to hard, and the size we can have on them on the Orion web page is never big enough.

      Take a look how it's done in Cacti for example, it looks great.

      Or look at this page:
      Not 100% relative, but this is how it should be done.

      This should be first priority implementing in Orion v10, IMO.

        • Re: Integration with Google MAPS API

          Agreed on the need to integrate w/ Google Maps API.  We are really struggling with more than 100 sites across the US.  Having them shown accurately based on site address info (coming straight from Orion db) would be a great value.  A database attribute could identify the most important sites and they could show different size/color icons on the map.

          Another benefit would be the ability to geographically correlate issues.  Seeing a patch of red on a Google map would help identify a larger problem.

            • Re: Integration with Google MAPS API

              yeah it would be nice to have this feature..

              and btw that link you posted to AIS is really cool to see all those boats tracked LOL

                • Re: Integration with Google MAPS API

                  This is something we have on our list that we are looking deeper at.  However, from a product stand point it is sometimes easier said than done due to legal etc. with using Google API in a commercial product

                    • Re: Integration with Google MAPS API

                      Yeah, you said the same thing 2 years ago, when you posted that beta version of the google integration.

                      Something should have happened in that time.

                        • Re: Integration with Google MAPS API

                          What if someone (!) should show on thwack how to implement that feature. Then it wouldn't be in the original product but an open source solution.

                            • Re: Integration with Google MAPS API

                              So I guess this isn't something we should expect in v10 then.

                                • Re: Integration with Google MAPS API

                                  Hi Dal--

                                  I haven't heard of it being in 10.0, no. But I'm checking and either I or the product manager will get back to you.



                                  • Re: Integration with Google MAPS API

                                    Minus version number, I can't tell you for sure when this will come.  As I stated it is something on my list and we are working down that list as quickly as we can.  We for sure see the value in adding this to the product, so no disagreement on that, just matter of priority and time based on other mapping and Atlas features.

                                      • Re: Integration with Google MAPS API
                                        Henrik Nordbred

                                        Please work faster and  harder, I have over a 1000 locations, cant use static maps :(

                                        • Re: Integration with Google MAPS API

                                          I talked to the Solarwinds people at Cisco Networkers in Barcelona, and they told me that this feature was not likely to be implemented. Mainly because of the increased cost it would cause the customers.

                                          Can you confirm this?

                                          But why should this be an issue for Solarwinds? Isn't up to each customer if they choose to make their maps public to avoid the cost of the Google API? Or choose to pay for it if they want their maps to remain private?


                                          Anyways, while we are waiting (or looking for other providers), here's a few suggestions:

                                          - At least add some scroll bars to the map resource to allow for big maps. Because todays solution (scaling of maps) is totally useless.

                                          - Please let the map resource span over multiple columns, so we can take advantage of the whole screen.



                                            • Re: Integration with Google MAPS API

                                              Add me to the list of requestors. 

                                              Dal, those were some excellent suggestions.

                                              • Re: Integration with Google MAPS API

                                                Dal, you may have talked to me as I was at that show.  The main issue at heart here is if we ship an out of the box integration with Google Maps, the Google Terms of Service allow individual users to use the API for free, but if you ship with with a for sale product, you must pay Google a fee for this.  Many users if you search on thwack for this have done this on their own and do not violate the Google term of service (that I am aware of, I am no lawyer).  See Re: Google Earth and Solarwindsand Re: Map Generator program - works! mapmaker.plfor some examples.

                                                We are investigating this further, along with using other mapping utilities like Bing or Yahoo, so I would not say we will never do this, but unfortunantly this is not as easy as just integrating.

                                                Noted on your other requests.

                                                  • Re: Integration with Google MAPS API

                                                    Well, the two topics you link to isn't that usefull.

                                                    I guess the fastest way to get our nodes in a "google style map" would be to read and learn the Google Maps API / KML and then learn how to creat a script that takes info from the orion DB and generates a xml/kml file that google earth / maps can read and create markers / points on a map. I better get to it..

                                                    If any programmers would like to help, please send me a pm.



                                                      • Re: Integration with Google MAPS API

                                                        Well.. I've done it. And it wasn't that hard! :)

                                                          • Re: Integration with Google MAPS API

                                                            Difficutly was never the problem. Google TOS was our problem. :(

                                                              • Re: Integration with Google MAPS API

                                                                Would you care to share what it looks like?

                                                                  • Re: Integration with Google MAPS API

                                                                    We will share it when it's ready.

                                                                    Right now I have some design problems, and hopefully you can help me out:

                                                                    In the attached picture there are 3 tooltips we get when moving the  mouse over a network object (in the normal Solarwinds NPM), one from the network map (the green), and 2  from the node tree.

                                                                    Where can I find info about the design (colors, fonts, etc) of those tooltips? I want to make them similar in Google Maps, but I'm not able to find any info about them in the Solarwinds files.

                                                                    I guess the design is done with CSS? What is the Styles used called?

                                                                    Can someone show me where to find that info?

                                                                      • Re: Integration with Google MAPS API

                                                                        You can find the styles used in \Orion\styles\NetObjectsTips.css

                                                                        The .clue classes build the background and the .InlineBar classes set the color of the bar on top.

                                                                          • Re: Integration with Google MAPS API

                                                                            I thank thee.

                                                                            Now, if only I could find out how links to custom maps made in Nework Atlas are stored, and if there is a system behind it...

                                                                              • Re: Integration with Google MAPS API

                                                                                Here is what it looks like now:



                                                                                Only the rest to go :)

                                                                                  • Re: Integration with Google MAPS API

                                                                                    When I insert the code into a Custom HTML in the Network Summary, the formatting on the Tooltips are gone. Any ideas why? I guess the CSS I have in my file gets overridden somehow. But how to prevent it?

                                                                                      • Re: Integration with Google MAPS API

                                                                                        Ok, I have uploaded what we have done so far to the Content Exchange.

                                                                                        Here is the readme file that is included:

                                                                                        I am not really a programmer, so I guess there are lot better ways to do this. But this works, right here, right now.

                                                                                        What needs to be done:

                                                                                        Use Custom Property Editor to make 7 properties:

                                                                                        - ConnectionType: To tell what equipment has been used to make the connection between the points (Icons), Modem, fiber, etc.
                                                                                        - Enhetstype: What kind of equipment is this: L3-switch, Router, Radio, etc (not used for Google Maps yet)
                                                                                        - Latitude: No explanation needed
                                                                                        - Longitude: No explanation needed

                                                                                        LAT and LONG for each Node is pulled from here:

                                                                                        - Mapname: The cryptic link name Orion makes for maps made in Network Atlas. Needs to be pulled manually from the MapStudioFiles table.
                                                                                        - Polyline: The encoded polyline, between two or more points. Made with http://code.google.com/intl/nb/apis/maps/documentation/polylineutility.html
                                                                                        - Stedsnavn: (Sitename in English?) The name of the place you want to put on the map. Used to group together nodes at the same location (Site).

                                                                                        3 files are used:
                                                                                        - makexml.aspx -> used to get data from the Solarwinds Database and makes a xml file. This file needs to be run automatically say every 3 minutes. I have made a simple table in it to display the data for easier error detection.
                                                                                        Note: The SQL Connectionstring must be altered to fit your own server.
                                                                                        - data.xml -> the xml file made by makexml.aspx
                                                                                        - displayxml.aspx -> the javascript that actually displays the data from data.xml.
                                                                                        You will of course need to obtain your own Google key, it can be done easily from here: http://code.google.com/intl/nb/apis/maps/signup.html

                                                                                        I put the files under an own directory called GMaps, and the path is: C:\Inetpub\Solarwinds\GMaps
                                                                                        To run the file as standalone: http://your-server-ip/GMaps/displayxml.aspx

                                                                                        If you want to run it from a Custom HTML from Network Summary, the path to the Icons and xml file must have a ../GMaps in front of them.

                                                                                        And then all you have to put this information into every Node in your database :)

                                                                                        I am attaching a xml file you can use for testing.

                                                                                        Just remember:
                                                                                        This is made "on top" of Orion NPM, not really integrated. For example, if you make a submap and link it to GMaps, there is really no interaction between them. The map can contain hundreds of nodes, while GMaps reports only 10.

                                                                                        When I add the GMap into a Custom HTML in the Network Summary, the formatting (font size, table settings, etc) in the Tooltips are gone.

                                                                                        Not all Status Types made by Solarwinds are implemented yet.

                                                                                        There is a function in there called progressBar, but it is not working. Read more about it here:

                                                                                        If someone is able to make it work, please tell!
                                                                                        It is not important though, just cool.

                                                                                        Major problem:
                                                                                        What to do if a site has more than one connection to another site?

                                                                                        To do:
                                                                                        Put some info on the polyline (if possible)
                                                                                        Make a Mouse right click menu that contains for example:
                                                                                        - Zoom to here
                                                                                        - Telnet to here
                                                                                        - Web to here.
                                                                                        - Find address

                                                                                        What SHOULD be done?
                                                                                        -     There should be an own table for what I have called Stedsnavn (Sitename), with a foreign key to the Nodes table. You can have many Nodes in each Stedsnavn.
                                                                                            Adding Stedsnavn to the Nodes table makes the table "flat", and is bad programming.
                                                                                            Data like Stedsnavn name, coordinates, address should be moved to this table.   
                                                                                            The table should also have its own web interface for adding data.
                                                                                        -     Own table for connections between Stedsnavn/Nodes. Because many Stedsnavn/Nodes can have many connections to each Stedsnavn/Nodes.

                                                                                          • Re: Integration with Google MAPS API

                                                                                            Hi Dal,

                                                                                            I tried your GMaps solution and it works perfect for me.

                                                                                            Thank you for sharing your work with us :-)

                                                                                            Did you solve the problem with the tooltips ?

                                                                                            I get only the IP, name and status in my tooltips.



                                                                                              • Re: Integration with Google MAPS API

                                                                                                That's the only you get.

                                                                                                There are 2 kinds of tooltips, one for single node, which looks like this:

                                                                                                and one for groups:

                                                                                                The problem I have with the tooltips, is the formatting, as in the font size and table borders.

                                                                                                The problem occurs when I run the script (displayxml.asxp) as custom html in the Orion Network Summary.

                                                                                                When I run the file as "standalone" it looks the way I want it to look.

                                                                                • Re: Integration with Google MAPS API

                                                                                  Google has lowered their pricing. If you're interested in keeping your personal maps personal, then this is the way to go. The price has been dropped from $4 per 1,000 map loads to $0.50 per 1000 map loads (1/8th the original price). You can view the Google Geo Developers Blog for more details.

                                                                            • Re: Integration with Google MAPS API

                                                                              It would be really nice in the mean time if you could just integrate a KML and/or GeoRSS 'page' and let us users worry about the integration details (it's really pretty easy from there...).  This also frees you from the Bing/Google/Yahoo wars...

                                                            • Re: Integration with Google MAPS API

                                                              I really really hate static maps..
                                                              And guess who's stuck making them..


                                                              So please, hurry up! This would really be a great improvement!

                                                              • Re: Integration with Google MAPS API

                                                                I too would like to see this feature. Static Maps are awfully difficult to maintain.



                                                                • Re: Integration with Google MAPS API

                                                                  I've taken a look at Google Map and AMMAP.

                                                                  I'm leaning more towards AMMAP.  (I use it in Splunk, so it shouldn't be that much more difficult to implement in SW.)

                                                                  With AMMAP, you can build lines, connectors and other actions that are not available in Google.

                                                                  Take a look at AMMAP and see what you think.  


                                                                  My two cents.



                                                                  • Re: Integration with Google MAPS API

                                                                    I have tried everything?

                                                                    I installed the Gmaps just as instructed, and I keep hitting a wall when I try to run the makexml.aspx.  My SQL server is 2008 R2 and I am running on server 2008 R2 x64 with Orion MPN 10.1.  The machine name is WRS-ADS-NETWRK.  The Domain let say is corp.domain.com and the IP address is  The database is on WRS-ADS-NETWRK\Solarwinds and the Initial Catalog is NetPerfMon.  When I try to run the makexml.aspx I get the following error:

                                                                    The Orion website is currently unable to display this page. Orion polling and alerting services often continue running, though this page cannot be displayed. Please take the following steps to attempt to alleviate the issue:

                                                                    1.  Log in to the website again and navigate to another Orion page, allowing you to isolate the error to this page.

                                                                    2.  Ensure the Orion services are still running.

                                                                    3.  Check that your SQL Server is still running and accessible.

                                                                    Please notify SolarWinds of this error. We will address and help you fix the issue.

                                                                    Your specific error is:

                                                                    Invalid value for key 'network library'.

                                                                    I have tried every conceivable way of editing the makexml.aspx and it won't work.

                                                                    I am attaching the portion of the makexml.aspx for connecting the SQL:

                                                                    <script  runat="server">

                                                                    sub Page_Load
                                                                    if Not Page.IsPostBack then

                                                                    <%-- Open SQL-Server START --%>

                                                                    Dim mySQLConn As SqlConnection = New SqlConnection()
                                                                    mySQLConn.ConnectionString = _
                                                                    "Network Library=WRS-ADS-NETWRK\Solarwinds;" & _
                                                                    "Data Source=sqlserver,1433;" & _
                                                                    "Initial Catalog=NetPerfMon;" & _
                                                                    "User ID=username;" & _

                                                                    <%-- Open SQL-Server END --%>


                                                                    If anyone has an idea or could help it would be helpful.