【问题标题】:EnvoyFilter [ lua filter ] is not printing log on consoleEnvoyFilter [ lua filter ] 不在控制台上打印日志
【发布时间】:2020-06-15 12:01:22
【问题描述】:

我是这个领域的新手。尝试使用 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”。

需要你的建议来查找日志……

【问题讨论】:

  • 我也遇到同样的问题

标签: logging lua istio envoyproxy open-policy-agent


【解决方案1】:

你检查过 istio-proxy 容器吗?通常可以在那里找到 Envoy 日志。

【讨论】:

  • 是的..我主要在那个容器里找..但没有找到..这让我很惊讶...
【解决方案2】:

在服务规范元数据注释中添加这一行应该会有所帮助 sidecar.istio.io/componentLogLevel: "lua:info"

【讨论】:

    猜你喜欢
    • 2019-12-15
    • 1970-01-01
    • 2016-12-20
    • 2015-10-03
    • 1970-01-01
    • 2015-10-28
    • 1970-01-01
    • 2018-10-04
    • 1970-01-01
    相关资源
    最近更新 更多