Fix log streamer closing

For some reason, it can (rarely) happen that the socket used by the log
streamer is already closed when we are in server_close(). Since
our intent is to close it anyway, do not raise an exception on an
already closed socket.

Change-Id: I5828f6351341bac5e55ae2211e8a3b3f94032899
diff --git a/zuul/lib/log_streamer.py b/zuul/lib/log_streamer.py
index 8bb586f..6aa51a6 100644
--- a/zuul/lib/log_streamer.py
+++ b/zuul/lib/log_streamer.py
@@ -172,8 +172,14 @@
         '''
         Overridden from base class to shutdown the socket immediately.
         '''
-        self.socket.shutdown(socket.SHUT_RD)
-        self.socket.close()
+        try:
+            self.socket.shutdown(socket.SHUT_RD)
+            self.socket.close()
+        except socket.error as e:
+            # If it's already closed, don't error.
+            if e.errno == socket.EBADF:
+                return
+            raise
 
 
 class LogStreamer(object):