Istio 实例中的空地图占位符

Empty map placeholder in an Istio instance

我正在尝试创建一个 Istio 实例,如下所示:

apiVersion: "config.istio.io/v1alpha2"
kind: instance
metadata:
  name: accesslog
  namespace: istio-system
spec:
  compiledTemplate: logentry
  params:
    severity: '"Default"'
    timestamp: request.time
    variables:
      sourceIp: source.ip | ip("0.0.0.0")
      sourceLabels: source.labels | map[""]""
      requestPath: request.path | ""

我已经为空地图 map[""]"" 尝试了几种风格,例如 map[string]stringmap[string]string{}{} 但其中 none 被接受了。我读过的文档也没有设置空地图的例子。如何声明空地图?

在文档中找到:https://istio.io/docs/reference/config/policy-and-telemetry/expression-language/

emptyStringMap - Create an empty string map

使用示例:request.headers | emptyStringMap()

apiVersion: "config.istio.io/v1alpha2"
kind: instance
metadata:
  name: accesslog
  namespace: istio-system
spec:
  compiledTemplate: logentry
  params:
    severity: '"Default"'
    timestamp: request.time
    variables:
      sourceIp: source.ip | ip("0.0.0.0")
      sourceLabels: source.labels | emptyStringMap()
      requestPath: request.path | ""