--set controlPlane.ingress.path="/" \ What is the expected behavior? No response What do you see instead? Error: YAML parse error on apisix/templates/control-plane/ingress.yaml: error converting YAML to JSON: yaml: line 23: did not find expected key ...
key:是用来做请求计数的依据,当前接受的 key 有:"remote_addr"(客户端 IP 地址), "server_addr"(服务端 IP 地址), 请求头中的"X-Forwarded-For" 或 "X-Real-IP"。 上述截图配置含义:限制了每秒请求速率为10,大于 10 小于 20的会被加上延时,速率超过 30就会被拒绝。 快速访问返回包含 503 返回码的响...
"]: " .. (err or "unknown")) end self.etcd_cli = etcd_cli end -- 同步数据 local ok, err = sync_data(self) if err then if err ~= "timeout" and err ~= "Key not found" and self.last_err ~= err then log.error("failed to fetch data from etcd: ", err, ", ", ...
如果在开发过程中看到 Apache APISIX 端有refresh cache and try again的 warning 和 Runner 端有key not found的 warning,这是因为配置缓存不一致导致的。因为开发状态下,Runner 不是由 Apache APISIX 管理的,所以内部状态会有可能不一致。不用担心,Apache APISIX 会重试。
elseif err ~= "timeout" and err ~= "Key not found" and self.last_err ~= err then log.error("failed to fetch data from etcd: ", err, ", ", tostring(self)) end if err ~= self.last_err then self.last_err = err self.last_err_time = ngx_time() ...
Current Behavior 如果打开了prometheus插件,并且upstream使用了k8s服务发现或者upstream ip随着发布而改变的话,在apisix中就会产生过多的监控key,从而导致内存不断增长,如果不重启apisix最终OOM Expected Behavior 我期望在upstream ip改变的时候有一个自动检测机制,
local ok,err=sync_data(self)iferr theniferr~="timeout"and err~="Key not found"and self.last_err~=err then log.error("failed to fetch data from etcd: ",err,", ",tostring(self))endiferr~=self.last_err then self.last_err=err ...
kv path (<vault.prefix from conf.yaml>/consumer/jim/jwt-auth) forjimmentioned inside plugin vault configuration. If not found, authentication fails. 该插件在 Vault 键值对 路径(<vault.prefix from conf.yaml>/consumer/jim/jwt-auth)中为插件 Vault 配置中提到的用户jim查找public_key和private_key。
if info.vals.self.key:sub(-#filter_res) == filter_res and not info.vals.err then core.log.warn("etcd watch /routes response: ", core.json.encode(info.vals.dir_res, true)) return true end return false end) 这个断点处理函数的逻辑很好表达了过滤能力,如果 watch 的key是/routes,以及err为...
if info.vals.self.key:sub(-#filter_res) == filter_res and not info.vals.err then core.log.warn("etcd watch /routes response: ", core.json.encode(info.vals.dir_res, true)) return true end return false end) 这个断点处理函数的逻辑很好表达了过滤能力,如果 watch 的key是/routes,以及err为...