【发布时间】:2019-04-24 08:48:42
【问题描述】:
我使用 kong 作为 API 网关。
我正在努力调试 kong 向上游发出的请求。
我曾尝试使用syslog 插件,但它只记录kong 收到的请求以及它发送回客户端的响应。
我正在寻找调试 kong 发送到上游的请求以及它收到的响应。
【问题讨论】:
标签: kong
我使用 kong 作为 API 网关。
我正在努力调试 kong 向上游发出的请求。
我曾尝试使用syslog 插件,但它只记录kong 收到的请求以及它发送回客户端的响应。
我正在寻找调试 kong 发送到上游的请求以及它收到的响应。
【问题讨论】:
标签: kong
为了调试 Kong 发送的请求,您可以查看 Kong 错误日志,对于 unix OS,它通常位于 /usr/local/kong/logs/error.log。
【讨论】:
如果您启用了日志记录插件,请确保您签入该位置。
在启用syslog 的情况下,我查看了/var/log/syslog 并发现:
Apr 30 12:49:34 db kong[7467]: {"latencies":{"request":3100,"kong":1148,"proxy":1952},
"service": ...
它存储了大量关于请求和响应的信息,但没有正文信息。
【讨论】:
对于那些正在寻找 Kubernetes 入口解决方案的人。
我启用了这个file plugin 并将输出重定向到/dev/stdout 而不是文件。它盯着在kong日志中显示标题信息。
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:
.
.
当然,在这之后生活又变得美好了。
【讨论】: