static_resources:
  listeners:
  - address:
      socket_address:
        address: 0.0.0.0
        port_value: 8000
    filter_chains:
    - filters:
      - name: envoy.filters.network.http_connection_manager
        typed_config:
          "@type": type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
          codec_type: AUTO
          stat_prefix: ingress_http
          route_config:
            name: local_route
            virtual_hosts:
            - name: local_service
              domains: ["*"]
              routes:
              - match: {prefix: "/path/with/bandwidth/limit"}
                route: {cluster: service_protected_by_bandwidth_limit}
                typed_per_filter_config:
                  envoy.filters.http.bandwidth_limit:
                    "@type": type.googleapis.com/envoy.extensions.filters.http.bandwidth_limit.v3.BandwidthLimit
                    stat_prefix: bandwidth_limiter_custom_route
                    enable_mode: REQUEST_AND_RESPONSE
                    limit_kbps: 500
                    fill_interval: 0.1s
              - match: {prefix: "/"}
                route: {cluster: web_service}
          http_filters:
          - name: envoy.filters.http.bandwidth_limit
            typed_config:
              "@type": type.googleapis.com/envoy.extensions.filters.http.bandwidth_limit.v3.BandwidthLimit
              stat_prefix: bandwidth_limiter_default
          - name: envoy.filters.http.router
  clusters:
  - name: service_protected_by_bandwidth_limit
    type: STRICT_DNS
    lb_policy: ROUND_ROBIN
    load_assignment:
      cluster_name: service1
      endpoints:
      - lb_endpoints:
        - endpoint:
            address:
              socket_address:
                address: web_service
                port_value: 9000
  - name: web_service
    type: STRICT_DNS
    lb_policy: ROUND_ROBIN
    load_assignment:
      cluster_name: service1
      endpoints:
      - lb_endpoints:
        - endpoint:
            address:
              socket_address:
                address: web_service
                port_value: 9000
