aboutsummaryrefslogtreecommitdiffstats
path: root/python/onfailure.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/onfailure.py')
-rw-r--r--python/onfailure.py31
1 files changed, 17 insertions, 14 deletions
diff --git a/python/onfailure.py b/python/onfailure.py
index 651892f5..17bb867b 100644
--- a/python/onfailure.py
+++ b/python/onfailure.py
@@ -1,17 +1,20 @@
-from serenitas.utils.exchange import ExchangeMessage
+from systemd import journal
+import os
import argparse
+import sys
-parser = argparse.ArgumentParser(description="Generate quantifi product files")
-parser.add_argument(
- "service",
- help="name of failed service",
- )
-args = parser.parse_args()
-
-em = ExchangeMessage()
+if os.environ["EXIT_STATUS"] != "0":
+ from serenitas.utils.exchange import ExchangeMessage
-em.send_email(
- 'Failed Service',
- f'This service failed: {args.service}',
- ('fyu@lmcg.com',)
-) \ No newline at end of file
+ service = sys.argv[1]
+ em = ExchangeMessage()
+ content = []
+ j = journal.Reader()
+ j.add_match(_SYSTEMD_INVOCATION_ID=os.environ["INVOCATION_ID"])
+ for entry in j:
+ content.append(entry["MESSAGE"])
+ em.send_email(
+ f"{service} failed",
+ "\n".join(content),
+ ("fyu@lmcg.com", "ghorel@lmcg.com"),
+ )