Add logging to geo_lookup.
This commit is contained in:
parent
5d284a5259
commit
0e844d5a15
1 changed files with 7 additions and 1 deletions
|
@ -33,12 +33,14 @@ def geoip_download(data_folder):
|
||||||
|
|
||||||
tar.extract(files, datafolder)
|
tar.extract(files, datafolder)
|
||||||
logging.debug('%s has been extracted to %s', files, datafolder)
|
logging.debug('%s has been extracted to %s', files, datafolder)
|
||||||
|
|
||||||
os.remove(tar_dbfile)
|
os.remove(tar_dbfile)
|
||||||
|
|
||||||
|
|
||||||
def geo_lookup(ipaddress, data_folder):
|
def geo_lookup(ipaddress, data_folder):
|
||||||
datafolder = data_folder
|
datafolder = data_folder
|
||||||
|
logging.debug('Reading GeoLite2 from %s', datafolder)
|
||||||
|
|
||||||
dbfile = abspath(join(datafolder, 'GeoLite2-City.mmdb'))
|
dbfile = abspath(join(datafolder, 'GeoLite2-City.mmdb'))
|
||||||
now = time.time()
|
now = time.time()
|
||||||
|
|
||||||
|
@ -46,9 +48,13 @@ def geo_lookup(ipaddress, data_folder):
|
||||||
dbinfo = os.stat(dbfile)
|
dbinfo = os.stat(dbfile)
|
||||||
db_age = now - dbinfo.st_ctime
|
db_age = now - dbinfo.st_ctime
|
||||||
if db_age > (35 * 86400):
|
if db_age > (35 * 86400):
|
||||||
|
logging.info('GeoLite2 DB is older than 35 days. Attempting to re-download...')
|
||||||
|
|
||||||
os.remove(dbfile)
|
os.remove(dbfile)
|
||||||
|
|
||||||
geoip_download(datafolder)
|
geoip_download(datafolder)
|
||||||
except FileNotFoundError:
|
except FileNotFoundError:
|
||||||
|
logging.error('GeoLite2 DB not found. Attempting to download...')
|
||||||
geoip_download(datafolder)
|
geoip_download(datafolder)
|
||||||
|
|
||||||
reader = geoip2.database.Reader(dbfile)
|
reader = geoip2.database.Reader(dbfile)
|
||||||
|
|
Loading…
Reference in a new issue