Document toolboxDocument toolbox

Geolocated Longitude with MaxMind GeoIP2 (mm2longitude, longitude)

Description

Uses MaxMind GeoIP2 services to return the approximate longitude associated with an IPv4 or IPv6 address. 

Note that this value is estimated and therefore not precise. Use Geolocated Accuracy Radius with MaxMind GeoIP2 (mm2accuracyradius) to obtain the radius of accuracy for each IP address's geocoordinates.

Agnostic operation alias

The alias longitude is an agnostic operation aimed at defining more generic names for the GeoIP v2 operations.

Note that agnostic operations are only available in our APIs for now. These will be available in the search window of the Devo app in future releases.

How does it work in the search window?

This operation only requires one argument:

Argument

Data type

Argument

Data type

Ip (v4 or v6) mandatory

ip, ip6

The data type of the new column is float.

In the demo.ecommerce.data table, we want to get the approximate longitudes associated with the IP addresses in our clientIpAddress column, so we click Create column and select the Geolocated ISP name with MaxMind GeoIP2 operation. Select clientIpAddress as the argument and assign a name to the new column - let's call it longitudeApprox.

The result is a column of float data type containing the approximate longitude.

How does it work in LINQ?

Use the operator select... as...  and add the operation syntax to create the new column. 

  • mm2longitude(ip)

  • mm2longitude(ip6)

Example

Copy the following LINQ script and try the above example on the demo.ecommerce.data table. 

from demo.ecommerce.data select mm2longitude(clientIpAddress) as longitudeApprox

This LINQ script filters out null values from the clientIpAddress column, adds the approximate longitude, and finally adds the radius of accuracy. The radius of accuracy is an indicator of the level of precision of the longitude.

from demo.ecommerce.data where clientIpAddress /= null select mm2longitude(clientIpAddress) as longitudeApprox, mm2accuracyradius(clientIpAddress) as accuracyRadiusKm