diff options
Diffstat (limited to 'pym/elog_modules/mod_save_summary.py')
-rw-r--r-- | pym/elog_modules/mod_save_summary.py | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/pym/elog_modules/mod_save_summary.py b/pym/elog_modules/mod_save_summary.py new file mode 100644 index 000000000..ed2507951 --- /dev/null +++ b/pym/elog_modules/mod_save_summary.py @@ -0,0 +1,23 @@ +import os. time +from portage_data import portage_uid, portage_gid + +def process(mysettings, cpv, logentries, fulltext): + if mysettings["PORT_LOGDIR"] != "": + elogdir = os.path.join(mysettings["PORT_LOGDIR"], "elog") + else: + elogdir = os.path.join(os.sep, "var", "log", "portage", "elog") + if not os.path.exists(elogdir): + os.makedirs(elogdir) + os.chown(elogdir, portage_uid, portage_gid) + os.chmod(elogdir, 02770) + + # TODO: Locking + elogfilename = elogdir+"/summary.log" + elogfile = open(elogfilename, "a") + elogfile.write(">>> Messages generated by process %d on %s:\n\n" % \ + (os.getpid(), time.strftime("%Y%m%d-%H%M%S", time.gmtime(time.time())))) + elogfile.write(fulltext) + elogfile.write("\n") + elogfile.close() + + return elogfilename |