-
Notifications
You must be signed in to change notification settings - Fork 16
Open
Description
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]: ?
Metadata
Metadata
Assignees
Labels
No labels