Skip to content

Commit

Permalink
cleanup(bootstrap): replace deprecated admin_access_log_path
Browse files Browse the repository at this point in the history
Use correct access logging instead using access_log

Fix #2114

Signed-off-by: Charly Molter <charly.molter@konghq.com>
  • Loading branch information
lahabana committed Jul 5, 2022
1 parent f24fdb1 commit fc93b09
Show file tree
Hide file tree
Showing 10 changed files with 61 additions and 10 deletions.
2 changes: 1 addition & 1 deletion pkg/xds/bootstrap/generator.go
Expand Up @@ -376,7 +376,7 @@ func (b *bootstrapGenerator) adminAccessLogPath(operatingSystem string) string {
}
if b.config.Params.AdminAccessLogPath == os.DevNull && operatingSystem == "windows" {
// when AdminAccessLogPath was not explicitly set and DPP OS is Windows we need to set window specific DevNull.
// otherwise when CP is on Linux, we would set /dev/null which is not corrent on Windows.
// otherwise when CP is on Linux, we would set /dev/null which is not valid on Windows.
return "NUL"
}
return b.config.Params.AdminAccessLogPath
Expand Down
21 changes: 20 additions & 1 deletion pkg/xds/bootstrap/template_v3.go
Expand Up @@ -5,14 +5,17 @@ import (
"strconv"

"github.com/asaskevich/govalidator"
envoy_accesslog_v3 "github.com/envoyproxy/go-control-plane/envoy/config/accesslog/v3"
envoy_bootstrap_v3 "github.com/envoyproxy/go-control-plane/envoy/config/bootstrap/v3"
envoy_cluster_v3 "github.com/envoyproxy/go-control-plane/envoy/config/cluster/v3"
envoy_core_v3 "github.com/envoyproxy/go-control-plane/envoy/config/core/v3"
envoy_config_endpoint_v3 "github.com/envoyproxy/go-control-plane/envoy/config/endpoint/v3"
envoy_grpc_credentials_v3 "github.com/envoyproxy/go-control-plane/envoy/config/grpc_credential/v3"
envoy_metrics_v3 "github.com/envoyproxy/go-control-plane/envoy/config/metrics/v3"
access_loggers_file "github.com/envoyproxy/go-control-plane/envoy/extensions/access_loggers/file/v3"
envoy_tls "github.com/envoyproxy/go-control-plane/envoy/extensions/transport_sockets/tls/v3"
envoy_type_matcher_v3 "github.com/envoyproxy/go-control-plane/envoy/type/matcher/v3"
"github.com/pkg/errors"

util_proto "github.com/kumahq/kuma/pkg/util/proto"
clusters_v3 "github.com/kumahq/kuma/pkg/xds/envoy/clusters/v3"
Expand Down Expand Up @@ -188,7 +191,6 @@ func genConfig(parameters configParameters, useTokenPath bool) (*envoy_bootstrap
if parameters.AdminPort != 0 {
res.Node.Metadata.Fields["dataplane.admin.port"] = util_proto.MustNewValueForStruct(strconv.Itoa(int(parameters.AdminPort)))
res.Admin = &envoy_bootstrap_v3.Admin{
AccessLogPath: parameters.AdminAccessLogPath,
Address: &envoy_core_v3.Address{
Address: &envoy_core_v3.Address_SocketAddress{
SocketAddress: &envoy_core_v3.SocketAddress{
Expand All @@ -201,6 +203,23 @@ func genConfig(parameters configParameters, useTokenPath bool) (*envoy_bootstrap
},
},
}
if parameters.AdminAccessLogPath != "" {
fileAccessLog := &access_loggers_file.FileAccessLog{
Path: parameters.AdminAccessLogPath,
}
var marshaled, err = util_proto.MarshalAnyDeterministic(fileAccessLog)
if err != nil {
return nil, errors.Wrapf(err, "could not marshall %T", fileAccessLog)
}
res.Admin.AccessLog = []*envoy_accesslog_v3.AccessLog{
{
Name: "envoy.access_loggers.file",
ConfigType: &envoy_accesslog_v3.AccessLog_TypedConfig{
TypedConfig: marshaled,
},
},
}
}
}
if parameters.DNSPort != 0 {
res.Node.Metadata.Fields["dataplane.dns.port"] = util_proto.MustNewValueForStruct(strconv.Itoa(int(parameters.DNSPort)))
Expand Down
6 changes: 5 additions & 1 deletion pkg/xds/bootstrap/testdata/bootstrap.overridden.golden.yaml
@@ -1,5 +1,9 @@
admin:
accessLogPath: /dev/null
accessLog:
- name: envoy.access_loggers.file
typedConfig:
'@type': type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog
path: /dev/null
address:
socketAddress:
address: 127.0.0.1
Expand Down
@@ -1,5 +1,9 @@
admin:
accessLogPath: /var/log
accessLog:
- name: envoy.access_loggers.file
typedConfig:
'@type': type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog
path: /var/log
address:
socketAddress:
address: 192.168.0.1
Expand Down
@@ -1,5 +1,9 @@
admin:
accessLogPath: NUL
accessLog:
- name: envoy.access_loggers.file
typedConfig:
'@type': type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog
path: NUL
address:
socketAddress:
address: 192.168.0.1
Expand Down
@@ -1,5 +1,9 @@
admin:
accessLogPath: /dev/null
accessLog:
- name: envoy.access_loggers.file
typedConfig:
'@type': type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog
path: /dev/null
address:
socketAddress:
address: 127.0.0.1
Expand Down
@@ -1,5 +1,9 @@
admin:
accessLogPath: /dev/null
accessLog:
- name: envoy.access_loggers.file
typedConfig:
'@type': type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog
path: /dev/null
address:
socketAddress:
address: 127.0.0.1
Expand Down
@@ -1,5 +1,9 @@
admin:
accessLogPath: /dev/null
accessLog:
- name: envoy.access_loggers.file
typedConfig:
'@type': type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog
path: /dev/null
address:
socketAddress:
address: 127.0.0.1
Expand Down
@@ -1,5 +1,9 @@
admin:
accessLogPath: /dev/null
accessLog:
- name: envoy.access_loggers.file
typedConfig:
'@type': type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog
path: /dev/null
address:
socketAddress:
address: 127.0.0.1
Expand Down
@@ -1,5 +1,9 @@
admin:
accessLogPath: /dev/null
accessLog:
- name: envoy.access_loggers.file
typedConfig:
'@type': type.googleapis.com/envoy.extensions.access_loggers.file.v3.FileAccessLog
path: /dev/null
address:
socketAddress:
address: 127.0.0.1
Expand Down

0 comments on commit fc93b09

Please sign in to comment.