我是这个领域的新手。试图用OPA[开放策略代理和istio]实现lua过滤器。
为了实现一个简单的poc,我创建了以下过滤器。
############################################################
# Envoy External Authorization filter that will query OPA.
############################################################
apiVersion: networking.istio.io/v1alpha3
kind: EnvoyFilter
metadata:
name: ext-authz
namespace: istio-system
spec:
filters:
- insertPosition:
index: FIRST
listenerMatch:
listenerType: GATEWAY
listenerProtocol: HTTP
filterType: HTTP
filterName: envoy.lua
filterConfig:
inlineCode: |
function envoy_on_request(request_handle)
request_handle:logWarn("envoy_on_request")
end
function envoy_on_response(response_handle)
response_handle:logWarn("envoy_on_response")
response_handle:headers():add("x-this","It works")
end
---
当我执行我的api时,我能够在输出中得到更新的头值。[似乎lua过滤器在过滤器链中被调用]
但我的问题是,我无法在容器日志中找到 "envoy_on_request "的日志。
需要你的建议,以找到该日志... ...
你检查过istio-proxy容器吗?通常情况下,可以在那里找到 Envoy 的日志。