无法使用 istio-proxy 记录出口流量 HTTP 请求
Unable to log egress traffic HTTP requests with the istio-proxy
我正在关注 this guide。
正在记录入口请求。出口流量控制按预期工作,但我无法记录出口 HTTP 请求。缺少什么?
apiVersion: networking.istio.io/v1beta1
kind: Sidecar
metadata:
name: myapp
spec:
workloadSelector:
labels:
app: myapp
outboundTrafficPolicy:
mode: REGISTRY_ONLY
egress:
- hosts:
- default/*.example.com
apiVersion: networking.istio.io/v1alpha3
kind: ServiceEntry
metadata:
name: example
spec:
location: MESH_EXTERNAL
resolution: NONE
hosts:
- '*.example.com'
ports:
- name: https
protocol: TLS
number: 443
apiVersion: telemetry.istio.io/v1alpha1
kind: Telemetry
metadata:
name: mesh-default
namespace: istio-system
spec:
accessLogging:
- providers:
- name: envoy
Kubernetes 1.22.2 Istio 1.11.4
AFAIK istio 默认只收集入口 HTTP 日志。
在 istio 文档中有一个 old article(自 2018 年起)描述了如何启用出口流量 HTTP 日志。
请记住,某些信息可能已过时,但我相信这是您所缺少的部分。
对于入口流量日志记录,我使用 EnvoyFilter
设置日志格式,它无需任何额外配置即可工作。在出口的情况下,我必须设置 accessLogFile: /dev/stdout
.
apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
metadata:
name: config
namespace: istio-system
spec:
profile: default
meshConfig:
accessLogFile: /dev/stdout
我正在关注 this guide。
正在记录入口请求。出口流量控制按预期工作,但我无法记录出口 HTTP 请求。缺少什么?
apiVersion: networking.istio.io/v1beta1
kind: Sidecar
metadata:
name: myapp
spec:
workloadSelector:
labels:
app: myapp
outboundTrafficPolicy:
mode: REGISTRY_ONLY
egress:
- hosts:
- default/*.example.com
apiVersion: networking.istio.io/v1alpha3
kind: ServiceEntry
metadata:
name: example
spec:
location: MESH_EXTERNAL
resolution: NONE
hosts:
- '*.example.com'
ports:
- name: https
protocol: TLS
number: 443
apiVersion: telemetry.istio.io/v1alpha1
kind: Telemetry
metadata:
name: mesh-default
namespace: istio-system
spec:
accessLogging:
- providers:
- name: envoy
Kubernetes 1.22.2 Istio 1.11.4
AFAIK istio 默认只收集入口 HTTP 日志。
在 istio 文档中有一个 old article(自 2018 年起)描述了如何启用出口流量 HTTP 日志。
请记住,某些信息可能已过时,但我相信这是您所缺少的部分。
对于入口流量日志记录,我使用 EnvoyFilter
设置日志格式,它无需任何额外配置即可工作。在出口的情况下,我必须设置 accessLogFile: /dev/stdout
.
apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
metadata:
name: config
namespace: istio-system
spec:
profile: default
meshConfig:
accessLogFile: /dev/stdout