如何查看请求详情,包括 headers,Kong 正在制作的主机?

How do you view the request details including headers, host that Kong is Making?

我正在使用 kong 作为 API 网关。

我正在努力调试 kong 向上游发出的请求。

我试过使用 syslog 插件,但它只记录了 kong 收到的请求和它发送回客户端的响应。 我正在寻找调试 kong 发送到上游的请求和它收到的响应。

为了调试 Kong 发送的请求,你可以查看你的 Kong 错误日志,它通常位于 /usr/local/kong/logs/error.log for unix OS.

如果您启用了日志插件,请确保签入该位置。

在启用 syslog 的情况下,我查看了 /var/log/syslog 并发现:

  Apr 30 12:49:34 db kong[7467]: {"latencies":{"request":3100,"kong":1148,"proxy":1952},
  "service": ...

它存储了很多关于请求和响应的信息,但没有正文信息。

对于那些正在寻找 kubernetes ingress 解决方案的人。 我启用了这个 file plugin 并将输出重定向到 /dev/stdout 而不是文件。它盯着显示 kong 日志中的 header 信息。

  • 全局插件
apiVersion: configuration.konghq.com/v1
kind: KongClusterPlugin
metadata:
  name: global-file-log
  annotations:
    kubernetes.io/ingress.class: kong

config:
  path: /dev/stdout
  reopen: false
plugin: file-log

将此插件添加到您的入口

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: microservice-ingress
  namespace: something
  annotations:
    kubernetes.io/ingress.class: "kong"
    konghq.com/plugins: global-file-log
spec:
  rules:
.
.

生活在这of-course之后又变得美好了。