From 3bddef790bead42e6c4822d7d1db79d0dab70179 Mon Sep 17 00:00:00 2001 From: Derek Carr Date: Fri, 7 Jul 2017 14:20:06 -0400 Subject: [PATCH] Log abridged set of rules at v2 in kube-proxy on error --- pkg/proxy/iptables/proxier.go | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/pkg/proxy/iptables/proxier.go b/pkg/proxy/iptables/proxier.go index 3ca08763b82..8d7d72b636b 100644 --- a/pkg/proxy/iptables/proxier.go +++ b/pkg/proxy/iptables/proxier.go @@ -1599,7 +1599,20 @@ func (proxier *Proxier) syncProxyRules() { err = proxier.iptables.RestoreAll(proxier.iptablesData.Bytes(), utiliptables.NoFlushTables, utiliptables.RestoreCounters) if err != nil { glog.Errorf("Failed to execute iptables-restore: %v", err) - glog.V(2).Infof("Rules:\n%s", proxier.iptablesData.Bytes()) + // ~rough approximation, assume ~100 chars per line + // we log first 1000 bytes, but full list at higher levels + rules := proxier.iptablesData.Bytes() + if len(rules) > 1000 { + abridgedRules := rules[:1000] + if glog.V(4) { + glog.V(4).Infof("Rules:\n%s", rules) + } else { + glog.V(2).Infof("Rules (abridged):\n%s", abridgedRules) + } + } else { + glog.V(2).Infof("Rules:\n%s", rules) + } + // Revert new local ports. revertPorts(replacementPortsMap, proxier.portsMap) return