From efa6651a7a76b820b515477ea6033abba8a29c3b Mon Sep 17 00:00:00 2001 From: "Dr. Stefan Schimanski" Date: Tue, 29 Sep 2020 14:15:31 +0200 Subject: [PATCH 1/2] operator: allow log levels for old clients and unify OperatorLogLevel --- imageregistry/v1/00-crd.yaml | 5 ++++- imageregistry/v1/01-crd.yaml | 1 + operator/v1/0000_10_config-operator_01_config.crd.yaml | 5 ++++- operator/v1/0000_12_etcd-operator_01_config.crd.yaml | 5 ++++- .../v1/0000_20_kube-apiserver-operator_01_config.crd.yaml | 5 ++++- ...25_kube-controller-manager-operator_01_config.crd.yaml | 5 ++++- .../v1/0000_25_kube-scheduler-operator_01_config.crd.yaml | 5 ++++- ...000_30_openshift-apiserver-operator_01_config.crd.yaml | 5 ++++- .../0000_40_cloud-credential-operator_00_config.crd.yaml | 5 ++++- ...e-storage-version-migrator-operator_00_config.crd.yaml | 5 ++++- ..._50_cluster-authentication-operator_01_config.crd.yaml | 5 ++++- ...enshift-controller-manager-operator_02_config.crd.yaml | 5 ++++- operator/v1/0000_50_cluster_storage_operator_01_crd.yaml | 5 ++++- operator/v1/0000_50_service-ca-operator_02_crd.yaml | 5 ++++- operator/v1/0000_70_cluster-network-operator_01_crd.yaml | 1 + operator/v1/0000_70_console-operator.crd.yaml | 5 ++++- .../0000_80_csi_snapshot_controller_operator_01_crd.yaml | 5 ++++- operator/v1/0000_90_cluster_csi_driver_01_config.crd.yaml | 5 ++++- operator/v1/types.go | 8 +++++--- operator/v1/zz_generated.swagger_doc_generated.go | 2 +- 20 files changed, 72 insertions(+), 20 deletions(-) diff --git a/imageregistry/v1/00-crd.yaml b/imageregistry/v1/00-crd.yaml index f34dfe732b0..8f7d5c5ce05 100644 --- a/imageregistry/v1/00-crd.yaml +++ b/imageregistry/v1/00-crd.yaml @@ -652,6 +652,7 @@ spec: type: string default: Normal enum: + - "" - Normal - Debug - Trace @@ -683,9 +684,11 @@ spec: operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves. \n Valid values are: \"Normal\", - \"Debug\", \"Trace\", \"TraceAll\"." + \"Debug\", \"Trace\", \"TraceAll\". Defaults to \"Normal\"." type: string + default: Normal enum: + - "" - Normal - Debug - Trace diff --git a/imageregistry/v1/01-crd.yaml b/imageregistry/v1/01-crd.yaml index 6913dd4516a..8f1ac607738 100644 --- a/imageregistry/v1/01-crd.yaml +++ b/imageregistry/v1/01-crd.yaml @@ -663,6 +663,7 @@ spec: type: string default: Normal enum: + - "" - Normal - Debug - Trace diff --git a/operator/v1/0000_10_config-operator_01_config.crd.yaml b/operator/v1/0000_10_config-operator_01_config.crd.yaml index 5f6b0666135..5fe799ffe64 100644 --- a/operator/v1/0000_10_config-operator_01_config.crd.yaml +++ b/operator/v1/0000_10_config-operator_01_config.crd.yaml @@ -52,6 +52,7 @@ spec: type: string default: Normal enum: + - "" - Normal - Debug - Trace @@ -73,9 +74,11 @@ spec: operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves. \n Valid values are: \"Normal\", - \"Debug\", \"Trace\", \"TraceAll\"." + \"Debug\", \"Trace\", \"TraceAll\". Defaults to \"Normal\"." type: string + default: Normal enum: + - "" - Normal - Debug - Trace diff --git a/operator/v1/0000_12_etcd-operator_01_config.crd.yaml b/operator/v1/0000_12_etcd-operator_01_config.crd.yaml index baf00068a1f..150a872661a 100644 --- a/operator/v1/0000_12_etcd-operator_01_config.crd.yaml +++ b/operator/v1/0000_12_etcd-operator_01_config.crd.yaml @@ -64,6 +64,7 @@ spec: type: string default: Normal enum: + - "" - Normal - Debug - Trace @@ -85,9 +86,11 @@ spec: operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves. \n Valid values are: \"Normal\", - \"Debug\", \"Trace\", \"TraceAll\"." + \"Debug\", \"Trace\", \"TraceAll\". Defaults to \"Normal\"." type: string + default: Normal enum: + - "" - Normal - Debug - Trace diff --git a/operator/v1/0000_20_kube-apiserver-operator_01_config.crd.yaml b/operator/v1/0000_20_kube-apiserver-operator_01_config.crd.yaml index 55904d59c00..58a1d3bc137 100644 --- a/operator/v1/0000_20_kube-apiserver-operator_01_config.crd.yaml +++ b/operator/v1/0000_20_kube-apiserver-operator_01_config.crd.yaml @@ -55,6 +55,7 @@ spec: interpret for their operands. \n Valid values are: \"Normal\", \"Debug\", \"Trace\", \"TraceAll\". Defaults to \"Normal\"." enum: + - "" - Normal - Debug - Trace @@ -73,12 +74,14 @@ spec: type: object x-kubernetes-preserve-unknown-fields: true operatorLogLevel: + default: Normal description: "operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves. \n Valid values are: \"Normal\", - \"Debug\", \"Trace\", \"TraceAll\"." + \"Debug\", \"Trace\", \"TraceAll\". Defaults to \"Normal\"." enum: + - "" - Normal - Debug - Trace diff --git a/operator/v1/0000_25_kube-controller-manager-operator_01_config.crd.yaml b/operator/v1/0000_25_kube-controller-manager-operator_01_config.crd.yaml index 274bcb74b24..efd88b3c986 100644 --- a/operator/v1/0000_25_kube-controller-manager-operator_01_config.crd.yaml +++ b/operator/v1/0000_25_kube-controller-manager-operator_01_config.crd.yaml @@ -57,6 +57,7 @@ spec: interpret for their operands. \n Valid values are: \"Normal\", \"Debug\", \"Trace\", \"TraceAll\". Defaults to \"Normal\"." enum: + - "" - Normal - Debug - Trace @@ -75,12 +76,14 @@ spec: type: object x-kubernetes-preserve-unknown-fields: true operatorLogLevel: + default: Normal description: "operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves. \n Valid values are: \"Normal\", - \"Debug\", \"Trace\", \"TraceAll\"." + \"Debug\", \"Trace\", \"TraceAll\". Defaults to \"Normal\"." enum: + - "" - Normal - Debug - Trace diff --git a/operator/v1/0000_25_kube-scheduler-operator_01_config.crd.yaml b/operator/v1/0000_25_kube-scheduler-operator_01_config.crd.yaml index 4124d9d35f3..3cb62b80b20 100644 --- a/operator/v1/0000_25_kube-scheduler-operator_01_config.crd.yaml +++ b/operator/v1/0000_25_kube-scheduler-operator_01_config.crd.yaml @@ -57,6 +57,7 @@ spec: interpret for their operands. \n Valid values are: \"Normal\", \"Debug\", \"Trace\", \"TraceAll\". Defaults to \"Normal\"." enum: + - "" - Normal - Debug - Trace @@ -75,12 +76,14 @@ spec: type: object x-kubernetes-preserve-unknown-fields: true operatorLogLevel: + default: Normal description: "operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves. \n Valid values are: \"Normal\", - \"Debug\", \"Trace\", \"TraceAll\"." + \"Debug\", \"Trace\", \"TraceAll\". Defaults to \"Normal\"." enum: + - "" - Normal - Debug - Trace diff --git a/operator/v1/0000_30_openshift-apiserver-operator_01_config.crd.yaml b/operator/v1/0000_30_openshift-apiserver-operator_01_config.crd.yaml index e713ec6cc26..269edb4d85a 100644 --- a/operator/v1/0000_30_openshift-apiserver-operator_01_config.crd.yaml +++ b/operator/v1/0000_30_openshift-apiserver-operator_01_config.crd.yaml @@ -53,6 +53,7 @@ spec: type: string default: Normal enum: + - "" - Normal - Debug - Trace @@ -74,9 +75,11 @@ spec: operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves. \n Valid values are: \"Normal\", - \"Debug\", \"Trace\", \"TraceAll\"." + \"Debug\", \"Trace\", \"TraceAll\". Defaults to \"Normal\"." type: string + default: Normal enum: + - "" - Normal - Debug - Trace diff --git a/operator/v1/0000_40_cloud-credential-operator_00_config.crd.yaml b/operator/v1/0000_40_cloud-credential-operator_00_config.crd.yaml index 383d50d9e01..829cf05b368 100644 --- a/operator/v1/0000_40_cloud-credential-operator_00_config.crd.yaml +++ b/operator/v1/0000_40_cloud-credential-operator_00_config.crd.yaml @@ -63,6 +63,7 @@ spec: type: string default: Normal enum: + - "" - Normal - Debug - Trace @@ -84,9 +85,11 @@ spec: operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves. \n Valid values are: \"Normal\", - \"Debug\", \"Trace\", \"TraceAll\"." + \"Debug\", \"Trace\", \"TraceAll\". Defaults to \"Normal\"." type: string + default: Normal enum: + - "" - Normal - Debug - Trace diff --git a/operator/v1/0000_40_kube-storage-version-migrator-operator_00_config.crd.yaml b/operator/v1/0000_40_kube-storage-version-migrator-operator_00_config.crd.yaml index 29ea914276e..d0133c88a39 100644 --- a/operator/v1/0000_40_kube-storage-version-migrator-operator_00_config.crd.yaml +++ b/operator/v1/0000_40_kube-storage-version-migrator-operator_00_config.crd.yaml @@ -50,6 +50,7 @@ spec: type: string default: Normal enum: + - "" - Normal - Debug - Trace @@ -71,9 +72,11 @@ spec: operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves. \n Valid values are: \"Normal\", - \"Debug\", \"Trace\", \"TraceAll\"." + \"Debug\", \"Trace\", \"TraceAll\". Defaults to \"Normal\"." type: string + default: Normal enum: + - "" - Normal - Debug - Trace diff --git a/operator/v1/0000_50_cluster-authentication-operator_01_config.crd.yaml b/operator/v1/0000_50_cluster-authentication-operator_01_config.crd.yaml index 349150cdb7a..ceb754a52ce 100644 --- a/operator/v1/0000_50_cluster-authentication-operator_01_config.crd.yaml +++ b/operator/v1/0000_50_cluster-authentication-operator_01_config.crd.yaml @@ -49,6 +49,7 @@ spec: type: string default: Normal enum: + - "" - Normal - Debug - Trace @@ -70,9 +71,11 @@ spec: operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves. \n Valid values are: \"Normal\", - \"Debug\", \"Trace\", \"TraceAll\"." + \"Debug\", \"Trace\", \"TraceAll\". Defaults to \"Normal\"." type: string + default: Normal enum: + - "" - Normal - Debug - Trace diff --git a/operator/v1/0000_50_cluster-openshift-controller-manager-operator_02_config.crd.yaml b/operator/v1/0000_50_cluster-openshift-controller-manager-operator_02_config.crd.yaml index 06f49142540..ce10a157622 100644 --- a/operator/v1/0000_50_cluster-openshift-controller-manager-operator_02_config.crd.yaml +++ b/operator/v1/0000_50_cluster-openshift-controller-manager-operator_02_config.crd.yaml @@ -51,6 +51,7 @@ spec: type: string default: Normal enum: + - "" - Normal - Debug - Trace @@ -72,9 +73,11 @@ spec: operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves. \n Valid values are: \"Normal\", - \"Debug\", \"Trace\", \"TraceAll\"." + \"Debug\", \"Trace\", \"TraceAll\". Defaults to \"Normal\"." type: string + default: Normal enum: + - "" - Normal - Debug - Trace diff --git a/operator/v1/0000_50_cluster_storage_operator_01_crd.yaml b/operator/v1/0000_50_cluster_storage_operator_01_crd.yaml index c774399d4f8..0ae3d956895 100644 --- a/operator/v1/0000_50_cluster_storage_operator_01_crd.yaml +++ b/operator/v1/0000_50_cluster_storage_operator_01_crd.yaml @@ -50,6 +50,7 @@ spec: type: string default: Normal enum: + - "" - Normal - Debug - Trace @@ -71,9 +72,11 @@ spec: operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves. \n Valid values are: \"Normal\", - \"Debug\", \"Trace\", \"TraceAll\"." + \"Debug\", \"Trace\", \"TraceAll\". Defaults to \"Normal\"." type: string + default: Normal enum: + - "" - Normal - Debug - Trace diff --git a/operator/v1/0000_50_service-ca-operator_02_crd.yaml b/operator/v1/0000_50_service-ca-operator_02_crd.yaml index 2bc9b9a8608..b33eff67f84 100644 --- a/operator/v1/0000_50_service-ca-operator_02_crd.yaml +++ b/operator/v1/0000_50_service-ca-operator_02_crd.yaml @@ -51,6 +51,7 @@ spec: type: string default: Normal enum: + - "" - Normal - Debug - Trace @@ -72,9 +73,11 @@ spec: operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves. \n Valid values are: \"Normal\", - \"Debug\", \"Trace\", \"TraceAll\"." + \"Debug\", \"Trace\", \"TraceAll\". Defaults to \"Normal\"." type: string + default: Normal enum: + - "" - Normal - Debug - Trace diff --git a/operator/v1/0000_70_cluster-network-operator_01_crd.yaml b/operator/v1/0000_70_cluster-network-operator_01_crd.yaml index dacbdfb8f75..329a7237760 100644 --- a/operator/v1/0000_70_cluster-network-operator_01_crd.yaml +++ b/operator/v1/0000_70_cluster-network-operator_01_crd.yaml @@ -373,6 +373,7 @@ spec: logging may affect performance. The default value is "Normal". type: string enum: + - "" - Normal - Debug - Trace diff --git a/operator/v1/0000_70_console-operator.crd.yaml b/operator/v1/0000_70_console-operator.crd.yaml index e2a592536ea..ae39ae7164d 100644 --- a/operator/v1/0000_70_console-operator.crd.yaml +++ b/operator/v1/0000_70_console-operator.crd.yaml @@ -96,6 +96,7 @@ spec: type: string default: Normal enum: + - "" - Normal - Debug - Trace @@ -117,9 +118,11 @@ spec: operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves. \n Valid values are: \"Normal\", - \"Debug\", \"Trace\", \"TraceAll\"." + \"Debug\", \"Trace\", \"TraceAll\". Defaults to \"Normal\"." type: string + default: Normal enum: + - "" - Normal - Debug - Trace diff --git a/operator/v1/0000_80_csi_snapshot_controller_operator_01_crd.yaml b/operator/v1/0000_80_csi_snapshot_controller_operator_01_crd.yaml index 9383b6aa3e2..709eff4fe4e 100644 --- a/operator/v1/0000_80_csi_snapshot_controller_operator_01_crd.yaml +++ b/operator/v1/0000_80_csi_snapshot_controller_operator_01_crd.yaml @@ -50,6 +50,7 @@ spec: type: string default: Normal enum: + - "" - Normal - Debug - Trace @@ -71,9 +72,11 @@ spec: operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves. \n Valid values are: \"Normal\", - \"Debug\", \"Trace\", \"TraceAll\"." + \"Debug\", \"Trace\", \"TraceAll\". Defaults to \"Normal\"." type: string + default: Normal enum: + - "" - Normal - Debug - Trace diff --git a/operator/v1/0000_90_cluster_csi_driver_01_config.crd.yaml b/operator/v1/0000_90_cluster_csi_driver_01_config.crd.yaml index 20b61625ba4..6bfa31c9775 100644 --- a/operator/v1/0000_90_cluster_csi_driver_01_config.crd.yaml +++ b/operator/v1/0000_90_cluster_csi_driver_01_config.crd.yaml @@ -50,6 +50,7 @@ spec: interpret for their operands. \n Valid values are: \"Normal\", \"Debug\", \"Trace\", \"TraceAll\". Defaults to \"Normal\"." enum: + - "" - Normal - Debug - Trace @@ -68,12 +69,14 @@ spec: type: object x-kubernetes-preserve-unknown-fields: true operatorLogLevel: + default: Normal description: "operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves. \n Valid values are: \"Normal\", - \"Debug\", \"Trace\", \"TraceAll\"." + \"Debug\", \"Trace\", \"TraceAll\". Defaults to \"Normal\"." enum: + - "" - Normal - Debug - Trace diff --git a/operator/v1/types.go b/operator/v1/types.go index e158c69e0b4..c4cd345052b 100644 --- a/operator/v1/types.go +++ b/operator/v1/types.go @@ -56,14 +56,16 @@ type OperatorSpec struct { // Defaults to "Normal". // +optional // +kubebuilder:default=Normal - LogLevel LogLevel `json:"logLevel"` + LogLevel LogLevel `json:"logLevel,omitempty"` // operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a // simple way to manage coarse grained logging choices that operators have to interpret for themselves. // // Valid values are: "Normal", "Debug", "Trace", "TraceAll". + // Defaults to "Normal". // +optional - OperatorLogLevel LogLevel `json:"operatorLogLevel"` + // +kubebuilder:default=Normal + OperatorLogLevel LogLevel `json:"operatorLogLevel,omitempty"` // unsupportedConfigOverrides holds a sparse config that will override any previously set options. It only needs to be the fields to override // it will end up overlaying in the following order: @@ -83,7 +85,7 @@ type OperatorSpec struct { ObservedConfig runtime.RawExtension `json:"observedConfig"` } -// +kubebuilder:validation:Enum=Normal;Debug;Trace;TraceAll +// +kubebuilder:validation:Enum="";Normal;Debug;Trace;TraceAll type LogLevel string var ( diff --git a/operator/v1/zz_generated.swagger_doc_generated.go b/operator/v1/zz_generated.swagger_doc_generated.go index 64735e07f52..cc82d26e28f 100644 --- a/operator/v1/zz_generated.swagger_doc_generated.go +++ b/operator/v1/zz_generated.swagger_doc_generated.go @@ -58,7 +58,7 @@ var map_OperatorSpec = map[string]string{ "": "OperatorSpec contains common fields operators need. It is intended to be anonymous included inside of the Spec struct for your particular operator.", "managementState": "managementState indicates whether and how the operator should manage the component", "logLevel": "logLevel is an intent based logging for an overall component. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for their operands.\n\nValid values are: \"Normal\", \"Debug\", \"Trace\", \"TraceAll\". Defaults to \"Normal\".", - "operatorLogLevel": "operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves.\n\nValid values are: \"Normal\", \"Debug\", \"Trace\", \"TraceAll\".", + "operatorLogLevel": "operatorLogLevel is an intent based logging for the operator itself. It does not give fine grained control, but it is a simple way to manage coarse grained logging choices that operators have to interpret for themselves.\n\nValid values are: \"Normal\", \"Debug\", \"Trace\", \"TraceAll\". Defaults to \"Normal\".", "unsupportedConfigOverrides": "unsupportedConfigOverrides holds a sparse config that will override any previously set options. It only needs to be the fields to override it will end up overlaying in the following order: 1. hardcoded defaults 2. observedConfig 3. unsupportedConfigOverrides", "observedConfig": "observedConfig holds a sparse config that controller has observed from the cluster state. It exists in spec because it is an input to the level for the operator", } From c82088e6f665f7e304ff0efd5a8b2343fa51e695 Mon Sep 17 00:00:00 2001 From: "Dr. Stefan Schimanski" Date: Tue, 29 Sep 2020 14:20:55 +0200 Subject: [PATCH 2/2] operator/network: unify defaulting with OperatorSpec loglevel Note, that this type is already broken once it is revendored into network operator: it got the enum and the enum does not allow typos. Hence, we need support in the normalization controller in 4.6 and 4.5, cc @vareti. --- operator/v1/0000_70_cluster-network-operator_01_crd.yaml | 7 +++++-- operator/v1/types_network.go | 6 +++++- operator/v1/zz_generated.swagger_doc_generated.go | 2 +- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/operator/v1/0000_70_cluster-network-operator_01_crd.yaml b/operator/v1/0000_70_cluster-network-operator_01_crd.yaml index 329a7237760..8b1817ffab2 100644 --- a/operator/v1/0000_70_cluster-network-operator_01_crd.yaml +++ b/operator/v1/0000_70_cluster-network-operator_01_crd.yaml @@ -367,11 +367,14 @@ spec: items: type: string logLevel: - description: logLevel allows configuring the logging level of the + description: "logLevel allows configuring the logging level of the components deployed by the operator. Currently only Kuryr SDN is affected by this setting. Please note that turning on extensive - logging may affect performance. The default value is "Normal". + logging may affect performance. The default value is \"Normal\". + \n Valid values are: \"Normal\", \"Debug\", \"Trace\", \"TraceAll\". + Defaults to \"Normal\"." type: string + default: Normal enum: - "" - Normal diff --git a/operator/v1/types_network.go b/operator/v1/types_network.go index 7e678d11ae0..669eb0d177b 100644 --- a/operator/v1/types_network.go +++ b/operator/v1/types_network.go @@ -74,8 +74,12 @@ type NetworkSpec struct { // by the operator. Currently only Kuryr SDN is affected by this setting. // Please note that turning on extensive logging may affect performance. // The default value is "Normal". + // + // Valid values are: "Normal", "Debug", "Trace", "TraceAll". + // Defaults to "Normal". // +optional - LogLevel LogLevel `json:"logLevel"` + // +kubebuilder:default=Normal + LogLevel LogLevel `json:"logLevel,omitempty"` } // ClusterNetworkEntry is a subnet from which to allocate PodIPs. A network of size diff --git a/operator/v1/zz_generated.swagger_doc_generated.go b/operator/v1/zz_generated.swagger_doc_generated.go index cc82d26e28f..4bafee72653 100644 --- a/operator/v1/zz_generated.swagger_doc_generated.go +++ b/operator/v1/zz_generated.swagger_doc_generated.go @@ -794,7 +794,7 @@ var map_NetworkSpec = map[string]string{ "disableMultiNetwork": "disableMultiNetwork specifies whether or not multiple pod network support should be disabled. If unset, this property defaults to 'false' and multiple network support is enabled.", "deployKubeProxy": "deployKubeProxy specifies whether or not a standalone kube-proxy should be deployed by the operator. Some network providers include kube-proxy or similar functionality. If unset, the plugin will attempt to select the correct value, which is false when OpenShift SDN and ovn-kubernetes are used and true otherwise.", "kubeProxyConfig": "kubeProxyConfig lets us configure desired proxy configuration. If not specified, sensible defaults will be chosen by OpenShift directly. Not consumed by all network providers - currently only openshift-sdn.", - "logLevel": "logLevel allows configuring the logging level of the components deployed by the operator. Currently only Kuryr SDN is affected by this setting. Please note that turning on extensive logging may affect performance. The default value is \"Normal\".", + "logLevel": "logLevel allows configuring the logging level of the components deployed by the operator. Currently only Kuryr SDN is affected by this setting. Please note that turning on extensive logging may affect performance. The default value is \"Normal\".\n\nValid values are: \"Normal\", \"Debug\", \"Trace\", \"TraceAll\". Defaults to \"Normal\".", } func (NetworkSpec) SwaggerDoc() map[string]string {