Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[SUGGESTION] upstream check meet 401 error in root paths #973

Open
mayipepsi opened this issue Jul 3, 2024 · 13 comments
Open

[SUGGESTION] upstream check meet 401 error in root paths #973

mayipepsi opened this issue Jul 3, 2024 · 13 comments
Labels
enhancement New feature or request released

Comments

@mayipepsi
Copy link

背景与遇到的问题

image image 会一直收到这检测请求,没办法给Path / 放权

建议的解决方案

提供一个可配置的path 检测

@mayipepsi
Copy link
Author

image

@Lorna0
Copy link
Collaborator

Lorna0 commented Jul 4, 2024

虽然 401 是一个错误状态码,但确实网络连接和服务器一般是正常的。下个版本我们会将 401 判断为状态正常。

@Lorna0 Lorna0 changed the title [建议] 检测地址可否,可配置 [建议] 上游检查根目录 401 告警问题 / upstream check meet 401 error in root paths Jul 4, 2024
@Lorna0 Lorna0 added enhancement New feature or request in progress labels Jul 4, 2024
@Lvshujun0918
Copy link
Contributor

虽然 401 是一个错误状态码,但确实网络连接和服务器一般是正常的。下个版本我们会将 401 判断为状态正常。

感觉这并没有解决实际的问题, 实际问题应该还是落在监测地址的配置或者开关上.

@mayipepsi
Copy link
Author

业务服务器当接收到 需要认证的接口并且请求头没有token 是会返回 http status 401,为了减少这个警告提示 目前最好的解决方案就是你们把这个检测整成可配置,让业务服务器对 根目录 / 放认证权限 不太现实 这样会导致所有的API都不需要认证

@Lorna0
Copy link
Collaborator

Lorna0 commented Jul 10, 2024

虽然 401 是一个错误状态码,但确实网络连接和服务器一般是正常的。下个版本我们会将 401 判断为状态正常。

感觉这并没有解决实际的问题, 实际问题应该还是落在监测地址的配置或者开关上.

上游检查目前只是在 web UI 上能看到,目的是让大家在配置站点的时候,能够快速确认配置结果是否正确。如果把这个检查功能配置做得太细致,我觉得有点本末倒置。

如果未来我们要增加 根据检查结果自动告警、根据检查结果动态调整负载配置,那做得比较细致才有意义。

@Lorna0
Copy link
Collaborator

Lorna0 commented Jul 10, 2024

业务服务器当接收到 需要认证的接口并且请求头没有token 是会返回 http status 401,为了减少这个警告提示 目前最好的解决方案就是你们把这个检测整成可配置,让业务服务器对 根目录 / 放认证权限 不太现实 这样会导致所有的API都不需要认证

新版本不会对 401 进行告警,不需要调整业务服务器的。以后我们做的细致了的话会考虑支持配置检查的路径。

@Lorna0
Copy link
Collaborator

Lorna0 commented Jul 10, 2024

目前上游检查主要还是排除一些最基础的配置错误,比如 地址写错了、协议写错了、网络不通、防火墙拒绝了 等等。如果要精确检查的话可能涉及 检测协议、请求方法、域名、路径、响应 code、超时时间、重试次数 之类,一下子全加有点复杂,我们未来会考虑做得更细致,也麻烦社区多反馈一下需求,非常感谢。

@Lvshujun0918
Copy link
Contributor

那我觉得目前先做一个开关来解决也未尝不可

@mayipepsi
Copy link
Author

那我觉得目前先做一个开关来解决也未尝不可

您的意思一个开关控制是否进行健康检查吗

@mayipepsi
Copy link
Author

业务服务器当接收到 需要认证的接口并且请求头没有token 是会返回 http status 401,为了减少这个警告提示 目前最好的解决方案就是你们把这个检测整成可配置,让业务服务器对 根目录 / 放认证权限 不太现实 这样会导致所有的API都不需要认证

新版本不会对 401 进行告警,不需要调整业务服务器的。以后我们做的细致了的话会考虑支持配置检查的路径。

可是,还是未解决 因检查路径是根路径导致认证失败,业务服务器一直会有错误日志

@mayipepsi
Copy link
Author

你们要不将默认检查路径调整为 /safe-line/health 这样我们就可以针对性的做一些放权

@Lvshujun0918
Copy link
Contributor

Lvshujun0918 commented Jul 13, 2024 via email

@safe1ine safe1ine changed the title [建议] 上游检查根目录 401 告警问题 / upstream check meet 401 error in root paths [SUGGESTION] upstream check meet 401 error in root paths Jul 15, 2024
@Lorna0
Copy link
Collaborator

Lorna0 commented Jul 15, 2024

业务服务器当接收到 需要认证的接口并且请求头没有token 是会返回 http status 401,为了减少这个警告提示 目前最好的解决方案就是你们把这个检测整成可配置,让业务服务器对 根目录 / 放认证权限 不太现实 这样会导致所有的API都不需要认证

新版本不会对 401 进行告警,不需要调整业务服务器的。以后我们做的细致了的话会考虑支持配置检查的路径。

可是,还是未解决 因检查路径是根路径导致认证失败,业务服务器一直会有错误日志

明白了,这个跟 #916 比较像,确实需要处理一下,可以跟进一下

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request released
Projects
None yet
Development

No branches or pull requests

3 participants