Blob Blame History Raw
From fd42f7d34c58aa66601eb9bd7aacc86556003918 Mon Sep 17 00:00:00 2001
From: Neependra Khare <nkhare@redhat.com>
Date: Tue, 27 Jan 2015 15:58:32 +0000
Subject: [PATCH 86/93] [kubernetes] add services and pod logs collection

Signed-off-by: Neependra Khare <nkhare@redhat.com>
Signed-off-by: Bryn M. Reeves <bmr@redhat.com>
---
 sos/plugins/kubernetes.py | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/sos/plugins/kubernetes.py b/sos/plugins/kubernetes.py
index 289d784..9c2df5e 100644
--- a/sos/plugins/kubernetes.py
+++ b/sos/plugins/kubernetes.py
@@ -22,6 +22,8 @@ class kubernetes(Plugin, RedHatPlugin):
     """Kubernetes plugin
     """
 
+    option_list = [("podslog", "capture logs for pods", 'slow', False)]
+
     def setup(self):
         self.add_copy_spec("/etc/kubernetes")
         self.add_copy_spec("/var/run/flannel")
@@ -30,9 +32,19 @@ class kubernetes(Plugin, RedHatPlugin):
         self.add_cmd_output("kubectl version")
         self.add_cmd_output("kubectl get -o json pods")
         self.add_cmd_output("kubectl get -o json minions")
+        self.add_cmd_output("kubectl get -o json services")
         self.add_cmd_output("kubectl get -o json replicationController")
         self.add_cmd_output("kubectl get -o json events")
         self.add_cmd_output("journalctl -r -u kubelet")
 
+        if self.get_option('podslog'):
+            result = self.get_command_output("kubectl get pods")
+            if result['status'] == 0:
+                for line in result['output'].splitlines()[1:]:
+                    pod_name = line.split(" ")[0]
+                    self.add_cmd_output([
+                        "{0} log {1}".format("kubectl", pod_name)
+                    ])
+
 
 # vim: et ts=5 sw=4
-- 
1.9.3