From 52067df293b5f827959cdf9e58fecf5e1b202e4f Mon Sep 17 00:00:00 2001 From: Ross W Date: Wed, 12 Apr 2017 23:29:07 +0000 Subject: [PATCH] Gracefully exit on SIGPIPE --- awslogs/core.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/awslogs/core.py b/awslogs/core.py index a18008c..7936f33 100644 --- a/awslogs/core.py +++ b/awslogs/core.py @@ -2,6 +2,7 @@ import sys import os import time +import errno from datetime import datetime, timedelta from collections import deque @@ -182,7 +183,15 @@ def consumer(): output.append(message.rstrip()) print(' '.join(output)) - sys.stdout.flush() + try: + sys.stdout.flush() + except IOError as e: + if e.errno == errno.EPIPE: + # SIGPIPE received, so exit + os._exit(0) + else: + # We don't want to handle any other errors from this + raise try: consumer() except KeyboardInterrupt: