我是这个领域的新手。尝试使用 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”。
需要你的建议来找到日志……</p>