sos/SOURCES/sos-SUPDEV145-ovnkube-logs....

127 lines
5.1 KiB
Diff

From 43714aa5aeb3dcb0dec17dd026ca5c394cc06afd Mon Sep 17 00:00:00 2001
From: Periyasamy Palanisamy <pepalani@redhat.com>
Date: Fri, 11 Aug 2023 14:30:42 +0200
Subject: [PATCH] Collect additional ovnkube node logs
With Interconnect support in latest OVN-Kubernetes, ovnkube-nodes
logs grew large. This commit adds the ability to collect those
additional logs.
Signed-off-by: Periyasamy Palanisamy <pepalani@redhat.com>
---
sos/report/plugins/openshift_ovn.py | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/sos/report/plugins/openshift_ovn.py b/sos/report/plugins/openshift_ovn.py
index d81fc97aa..2d804e9ae 100644
--- a/sos/report/plugins/openshift_ovn.py
+++ b/sos/report/plugins/openshift_ovn.py
@@ -30,7 +30,8 @@ def setup(self):
# Collect ovn interconnect specific files if exists.
self.add_copy_spec([
"/var/lib/ovn-ic/etc/ovnnb_db.db",
- "/var/lib/ovn-ic/etc/ovnsb_db.db"
+ "/var/lib/ovn-ic/etc/ovnsb_db.db",
+ "/var/lib/ovn-ic/etc/libovsdb*log*"
])
# The ovn cluster/status is not valid anymore for interconnect setup.
From e11a594f942f9ae98aeb644c573293b391050657 Mon Sep 17 00:00:00 2001
From: Periyasamy Palanisamy <pepalani@redhat.com>
Date: Tue, 15 Aug 2023 11:47:20 +0200
Subject: [PATCH] Collect ovn logs as much as possible
The sosreport limits to collect logs at maximum of 25 MB in a given
collection passed into add_copy_spec method. so this may lead into
logs wouldn't have fully collected when user collected sos report
without --all-logs option.
Hence this commit ensures logs and dbs collected as much as possible
when --all-logs option is not specified.
Signed-off-by: Periyasamy Palanisamy <pepalani@redhat.com>
---
sos/report/plugins/openshift_ovn.py | 25 +++++++++++++++++--------
1 file changed, 17 insertions(+), 8 deletions(-)
diff --git a/sos/report/plugins/openshift_ovn.py b/sos/report/plugins/openshift_ovn.py
index 2d804e9ae..347b15eea 100644
--- a/sos/report/plugins/openshift_ovn.py
+++ b/sos/report/plugins/openshift_ovn.py
@@ -20,19 +20,28 @@ class OpenshiftOVN(Plugin, RedHatPlugin):
profiles = ('openshift',)
def setup(self):
+ all_logs = self.get_option("all_logs")
+
self.add_copy_spec([
"/var/lib/ovn/etc/ovnnb_db.db",
"/var/lib/ovn/etc/ovnsb_db.db",
- "/var/lib/openvswitch/etc/keys",
- "/var/log/openvswitch/libreswan.log",
- "/var/log/openvswitch/ovs-monitor-ipsec.log"
- ])
- # Collect ovn interconnect specific files if exists.
+ "/var/lib/openvswitch/etc/keys"
+ ], sizelimit=300)
+
+ # Collect ovn interconnect specific db files if exists.
self.add_copy_spec([
"/var/lib/ovn-ic/etc/ovnnb_db.db",
- "/var/lib/ovn-ic/etc/ovnsb_db.db",
- "/var/lib/ovn-ic/etc/libovsdb*log*"
- ])
+ "/var/lib/ovn-ic/etc/ovnsb_db.db"
+ ], sizelimit=300)
+
+ # Collect libovsdb logs in case of ovn interconnect setup.
+ if not all_logs:
+ self.add_copy_spec([
+ "/var/lib/ovn-ic/etc/libovsdb.log",
+ "/var/lib/ovn-ic/etc/libovsdb*log.gz"
+ ], sizelimit=100)
+ else:
+ self.add_copy_spec("/var/lib/ovn-ic/etc/libovsdb*log*")
# The ovn cluster/status is not valid anymore for interconnect setup.
self.add_cmd_output([
From 7cd6f61fd15ae7fc93d62cca927204351cdc1322 Mon Sep 17 00:00:00 2001
From: Periyasamy Palanisamy <pepalani@redhat.com>
Date: Wed, 30 Aug 2023 09:56:40 +0200
Subject: [PATCH] Collect logs from ovnkube-controller container
This enables ovn sos report plugin to collect logs ovnkube-controller
container because ovn-kubernetes now provides option to run both
ovnkube-node and ovnkube-controller in same container with this
PR https://github.com/ovn-org/ovn-kubernetes/pull/3807.
Signed-off-by: Periyasamy Palanisamy <pepalani@redhat.com>
---
sos/report/plugins/openshift_ovn.py | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/sos/report/plugins/openshift_ovn.py b/sos/report/plugins/openshift_ovn.py
index 347b15eea..cb48057d3 100644
--- a/sos/report/plugins/openshift_ovn.py
+++ b/sos/report/plugins/openshift_ovn.py
@@ -16,7 +16,8 @@ class OpenshiftOVN(Plugin, RedHatPlugin):
"""
short_desc = 'Openshift OVN'
plugin_name = "openshift_ovn"
- containers = ('ovnkube-master', 'ovnkube-node', 'ovn-ipsec')
+ containers = ('ovnkube-master', 'ovnkube-node', 'ovn-ipsec',
+ 'ovnkube-controller')
profiles = ('openshift',)
def setup(self):
@@ -54,6 +55,10 @@ def setup(self):
'ovs-appctl -t /var/run/ovn/ovn-controller.*.ctl ' +
'ct-zone-list'],
container='ovnkube-node')
+ self.add_cmd_output([
+ 'ovs-appctl -t /var/run/ovn/ovn-controller.*.ctl ' +
+ 'ct-zone-list'],
+ container='ovnkube-controller')
# Collect ovs ct-zone-list directly on host for interconnect setup.
self.add_cmd_output([
'ovs-appctl -t /var/run/ovn-ic/ovn-controller.*.ctl ' +