diff --git a/flowmon-ads/warden3_flowmon_ads_filer.py b/flowmon-ads/warden3_flowmon_ads_filer.py
index c8786018d6ee4d35196970d1bceee24c09225b97..1ab1c2a686c637fbe52a0041ed09734f907bd51b 100644
--- a/flowmon-ads/warden3_flowmon_ads_filer.py
+++ b/flowmon-ads/warden3_flowmon_ads_filer.py
@@ -219,7 +219,7 @@ def main():
     add_orig_data = True
     sdir = SafeDir("/data/warden/var/feeds-out")
 
-    ads_fields = [it[0] for it in sorted(ads_fieldnames.items(), key=lambda(it): it[1]["order"])]
+    ads_fields = [it[0] for it in sorted(ads_fieldnames.items(), key=lambda it: it[1]["order"])]
     for row in csv.reader(sys.stdin, dialect="excel-tab"):
         if not row:
             continue
@@ -232,8 +232,8 @@ def main():
         nf = sdir.newfile()
         try:
             data = json.dumps(event)
-            nf.f.write(data)
-        except Exception, e:
+            nf.f.write(data.encode("utf-8"))
+        except Exception as 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))