daemon: Add "datapath" opt to --debug-verbose flag#12568
Conversation
|
test-me-please |
pchaigno
left a comment
There was a problem hiding this comment.
global.debugDatapath made more sense to me, but I'm not sure it matters that much either way 🤷
|
Minor nit, I wondered if you considered extending |
| {{- if .Values.global.debug.datapath }} | ||
| debug-datapath: "{{ .Values.global.debug.datapath }}" | ||
| {{- end }} |
There was a problem hiding this comment.
Shouldn't this be part of config rather than global?
There was a problem hiding this comment.
I'm not very familiar with those groupings. What's a logical difference between config and global?
There was a problem hiding this comment.
config is part of the settings specific to the helm chart that deploys the Cilium configmap; global applies settings to the entire set of helm charts we generate. Recent discussions with @cilium/helm particularly around the time of v1.8 release established that our use of Helm is a bit unusual to the detriment of operators, and one of the areas we can improve is in using more chart-local variables rather than global variables.
Or even reuse the existing flag instead of a new one. |
There was a problem hiding this comment.
Change looks good to me. I'd also like to +1 @borkmann's idea of reusing the same agent flags.
|
Just to be clear, |
Good to know, wasn't aware of that. That sounds reasonable to me. |
|
I cannot reuse |
d4f433c to
ebf60c5
Compare
Adding the "datapath" to --debug-verbose enables debug messages produced
by the datapath.
Previously, it could have been enabled for new endpoints by invoking
"cilium config Debug{,LB}=Enabled" on each node, and for existing -
by "cilium config $EID Debug{,LB}=Enabled".
Signed-off-by: Martynas Pumputis <m@lambda.lt>
|
test-me-please |
|
PTAL. |
aanm
left a comment
There was a problem hiding this comment.
Please add a note in the upgrade guide as this is a breaking change. Previous environments running with debug: true will no longer see any debug message when running with cilium monitor -v
|
|
||
| option.Config.Opts.SetBool(option.Debug, false) | ||
| option.Config.Opts.SetBool(option.DebugLB, false) | ||
| option.Config.Opts.SetBool(option.Debug, debugDatapath) |
There was a problem hiding this comment.
Also, perhaps it would be a good idea to add a note in the flag description of the debug flag that it no longer enables debug messages in the datapath and it should users should use debug-verbose=datapath instead.
There was a problem hiding this comment.
^ Probably needs backport right?
There was a problem hiding this comment.
@joestringer this PR is already marked for backport, was that your concern?
aanm
left a comment
There was a problem hiding this comment.
Also, please add --debug-verbose=datapath in the contrib/vagrant/start.sh where we have --debug
aanm
left a comment
There was a problem hiding this comment.
I wasn't aware that ee5e396 introduced this breaking change. Given that it did, yes we should describe it in the upgrade guide. If we start helping users where we ask them to run cilium with debug: true so that we can see debug messages in Cilium monitor we won't see debug messages and would waste more time until we could realize this was introduced by us.
christarazi
left a comment
There was a problem hiding this comment.
LGTM assuming Andre's comments are addressed
|
|
||
| option.Config.Opts.SetBool(option.Debug, false) | ||
| option.Config.Opts.SetBool(option.DebugLB, false) | ||
| option.Config.Opts.SetBool(option.Debug, debugDatapath) |
There was a problem hiding this comment.
^ Probably needs backport right?
Add a note to the upgrade guide how to enable datapath debug messages which were disabled by [1] (released in v1.8.0). [1]: 583e67c Signed-off-by: Martynas Pumputis <m@lambda.lt>
|
@aanm PTAL - I've updated the upgrade guide. No integration tests (except for docs) need to be rerun, as the new commit touches only the docs (previously all the tests passed). |
This PR adds a support for the
"datapath"option to--debug-verboseAdding the
"datapath"to--debug-verboseenables debug messages produced by the datapath.Previously, it could have been enabled for new endpoints by invoking
cilium config Debug{,LB}=Enabledon each node, and for existing - bycilium config $EID Debug{,LB}=Enabled.Added
needs-backport/1.8, as it will ease debugging of 1.8 user datapath issues.