Summary
What are you observing that doesn't seem right?
Access log is not getting generated from Envoy when corresponding virtual-node has no listener defined on it.
Steps to Reproduce
What are the steps you can take to reproduce this issue?
Launch app-mesh application with virtual-node spec as below
{
"backends": [
{
"virtualService": {
"virtualServiceName": "<some-vsvc>"
}
}
],
"logging": {
"accessLog": {
"file": {
"path": "/dev/stdout"
}
}
}
}
Are you currently working around this issue?
How are you currently solving this problem?
I am adding a fake listener and service-discovery to workaround this.
Additional context
Anything else we should know?
Following is envoy configuration for egress listener with both forms of virtual-node. Note that in both cases virtual-node is configured with access-log.
{
"name": "lds_egress_0.0.0.0_15001",
"address": {
"socket_address": {
"address": "0.0.0.0",
"port_value": 15001
}
},
"filter_chains": [
{
"filter_chain_match": {
"destination_port": 9080
},
"filters": [
{
"name": "envoy.http_connection_manager",
"config": {
"rds": {
"config_source": {
"ads": {}
},
"route_config_name": "rds_egress_http_9080"
},
"stat_prefix": "egress",
"tracing": {
"operation_name": "EGRESS"
},
"access_log": [
{
"config": {
"path": "/dev/stdout"
},
"name": "envoy.file_access_log"
}
],
"http_filters": [
{
"name": "envoy.router"
}
]
}
}
]
},
{
"filter_chain_match": {
"destination_port": 443,
"server_names": [
"*.amazonaws.com"
]
},
"filters": [
{
"name": "envoy.tcp_proxy",
"config": {
"stat_prefix": "egress",
"cluster": "cds_egress_app-mesh-load-test_amazonaws"
}
}
]
}
],
"listener_filters": [
{
"name": "envoy.listener.original_dst"
},
{
"name": "envoy.listener.tls_inspector"
}
]
}
Notice that access_log directive is missing
{
"name": "lds_egress_0.0.0.0_15001",
"address": {
"socket_address": {
"address": "0.0.0.0",
"port_value": 15001
}
},
"filter_chains": [
{
"filter_chain_match": {
"destination_port": 9080
},
"filters": [
{
"name": "envoy.http_connection_manager",
"config": {
"http_filters": [
{
"name": "envoy.router"
}
],
"rds": {
"route_config_name": "rds_egress_http_9080",
"config_source": {
"ads": {}
}
},
"stat_prefix": "egress",
"tracing": {
"operation_name": "EGRESS"
}
}
}
]
},
{
"filter_chain_match": {
"destination_port": 443,
"server_names": [
"*.amazonaws.com"
]
},
"filters": [
{
"name": "envoy.tcp_proxy",
"config": {
"cluster": "cds_egress_app-mesh-load-test_amazonaws",
"stat_prefix": "egress"
}
}
]
}
],
"listener_filters": [
{
"name": "envoy.listener.original_dst"
},
{
"name": "envoy.listener.tls_inspector"
}
]
}
Attachments
If you think you might have additional information that you'd like to include via an attachment, please do - we'll take a look. (Remember to remove any personally-identifiable information.)
The bug has been fixed.
Most helpful comment
The bug has been fixed.