@@ -344,7 +344,7 @@ def compute(self, capture): # TODO ADD FUNCTION TO MANUALLY IMPORT ???
344344 self .root_item = None
345345
346346 # Save Capture
347- saved = self .save_capture_response (parent_id , entries )
347+ saved = self .save_capture_response (capture , task , parent_id , entries )
348348 if saved :
349349 if self .parent != 'lookup' :
350350 # Update domain first/last seen
@@ -395,16 +395,22 @@ def compute(self, capture): # TODO ADD FUNCTION TO MANUALLY IMPORT ???
395395 task .remove ()
396396 self .root_item = None
397397
398- def save_capture_response (self , parent_id , entries ):
398+ def save_capture_response (self , capture , task , parent_id , entries ):
399399 filter_page = False
400400 print (entries .keys ())
401401 if 'error' in entries :
402402 # TODO IMPROVE ERROR MESSAGE
403+ error_message = str (entries ['error' ])
403404 self .logger .warning (str (entries ['error' ]))
404- print (entries .get ('error' ))
405+ if error_message .startswith ('Something went poorly' ):
406+ # Timeout, require restart of lacus
407+ if 'Too many open files' in error_message :
408+ task .reset ()
409+ capture .delete ()
410+ self .logger .warning (f'Lacus Too many open files Error, { task .uuid } Send back in queue' )
411+ time .sleep (60 )
405412 if entries .get ('html' ):
406413 print ('retrieved content' )
407- # print(entries.get('html'))
408414
409415 if 'last_redirected_url' in entries and entries .get ('last_redirected_url' ): # TODO ADD RELATIONSHIP REDIRECT
410416 last_url = entries ['last_redirected_url' ]
@@ -551,7 +557,7 @@ def save_capture_response(self, parent_id, entries):
551557 entries_children = entries .get ('children' )
552558 if entries_children :
553559 for children in entries_children :
554- self .save_capture_response (parent_id , children )
560+ self .save_capture_response (capture , task , parent_id , children )
555561 return True
556562
557563
0 commit comments