Hello,
thanks for this lib.
We try to use it to localize mail sender, testing step was ok with some ips.
But passing it in prod breaks.
Is there a way to handle error when IP is in mmdb but not data :
# cat test.lua
local mm = require 'maxminddb'
local db = mm.open('/var/lib/libmaxminddb/GeoLite2-City.mmdb')
function geoip(ip)
local res, status = db:lookup(ip)
return res:get("country", "iso_code")
end
for k, ip in pairs({'8.8.8.8', '165.72.200.98'}) do
print(ip, geoip(ip))
end
Script breaks on 165.72.200.98 :
# lua test.lua
8.8.8.8 US
lua: The lookup path does not match the data (key that doesn't exist, array index bigger than the array, expected array or map where none exists)
stack traceback:
[C]: in function 'get'
test.lua:6: in function 'geoip'
test.lua:10: in main chunk
[C]: ?
Hello,
thanks for this lib.
We try to use it to localize mail sender, testing step was ok with some ips.
But passing it in prod breaks.
Is there a way to handle error when IP is in mmdb but not data :
Script breaks on 165.72.200.98 :