diff --git a/flowmon-ads/warden3_flowmon_ads_filer.py b/flowmon-ads/warden3_flowmon_ads_filer.py
index c00f329917999761d75e79c92e4b0a6d3f3c546c..04efe820458a3f0e22df0b0f97d330823421a160 100644
--- a/flowmon-ads/warden3_flowmon_ads_filer.py
+++ b/flowmon-ads/warden3_flowmon_ads_filer.py
@@ -218,13 +218,13 @@ def main():
         event = gen_idea_from_ads(row, anonymised_target)
         nf = sdir.newfile()
         try:
-            f = nf.f
             data = json.dumps(event)
-            f.write(data)
-        except IOError, e:
-            f.close()
-        else:
-            f.close()
+            nf.f.write(data)
+        except Exception, e:
+            sys.stderr.write("Error: %s\n" % str(e))
+            sys.stderr.write("Error source line: %s\n" % row)
+            sys.stderr.write("Error event data: %s\n" % str(event))
+        nf.f.close()
         nf.moveto(sdir.incoming)