Add country region in logs

Hello nginx!

Iam trying to identify all my visitors based on their continent region,
i want to log this info in each log entry. There is no geoip database
for continent region so I want to map manually the countries within
their regions.

I already have the GeoIP db loaded, and an example map for a region as
follows:

map $geoip_country_code $north_africa {
default “”;
##Northern Africa
DZ 1; #“Algeria”
EG 1; #“Egypt”
EH 1; #“Western Sahara”
LY 1; #“Libyan Arab Jamahiriya”
MA 1; #“Morocco”
SD 1; #“Sudan”
TN 1; #“Tunisia”
}

Would anybody kindly offer me an example of how to generate a variable I
can use in the logging that would print “NorthAfica” if one of the
countries in the map matched?

Thanks
Alex

On Wed, Aug 28, 2013 at 12:03:48PM -0600, Alex Flex wrote:

Hi there,

I haven’t tested this, but…

I already have the GeoIP db loaded, and an example map for a region as
follows:

map $geoip_country_code $north_africa {
default “”;
##Northern Africa
DZ 1; #“Algeria”

http://nginx.org/r/map

The “value” does not have to just be “1”. It could be, for example,
“NorthAfrica”.

Would anybody kindly offer me an example of how to generate a variable I
can use in the logging that would print “NorthAfica” if one of the
countries in the map matched?

$north_africa.

But it might make more sense to call it $continent_region, and let it
take values for the whole world.

f

Francis D. [email protected]