Skip to content

Commit d04a6a1

Browse files
committed
asn expert: add feedback from @kamil-certat
PR #2606
1 parent 3092f9e commit d04a6a1

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

intelmq/bots/experts/asn_lookup/expert.py

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
import sys
1010
import bz2
1111
import requests
12+
from datetime import datetime, timedelta
1213
from pathlib import Path
1314

1415
from intelmq import VAR_STATE_PATH
@@ -69,13 +70,18 @@ def process(self):
6970
def check(parameters):
7071
database_path = Path(parameters.get('database', ''))
7172
if not database_path.exists():
72-
return [["error", f"File given as parameter 'database' ({database_path!s}) does not exist."]]
73+
return [["warning", f"File given as parameter 'database' ({database_path!s}) does not exist. You may need to trigger first downloading manually. See: https://docs.intelmq.org/latest/user/bots/#asn-lookup."]]
7374
elif not database_path.is_file():
7475
return [["error", f"Parameter 'database' ({database_path!s}) exists, but is not a file."]]
7576
try:
7677
pyasn.pyasn(parameters['database'])
7778
except Exception as exc:
78-
return [["error", f"Error reading database ({database_path!s}): %r." % exc]]
79+
return [["error", f"Error reading database ({database_path!s}): {exc!r}."]]
80+
81+
# Check the age of the database file
82+
# use local time zone for both time operations
83+
if datetime.now() - datetime.fromtimestamp(database_path.stat().st_mtime) < timedelta(weeks=1):
84+
return [["warning", f"Database ({database_path!s}) is older than one week. Check the auto update, see: https://docs.intelmq.org/latest/user/bots/#asn-lookup."]]
7985

8086
@classmethod
8187
def run(cls, parsed_args=None):

0 commit comments

Comments
 (0)