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

[Discussion] Adding more cases (error codes) in error code based troubleshooting. #10510

Open
win120a opened this issue Aug 26, 2022 · 4 comments
Labels
type/discussion Everything related with code discussion or question

Comments

@win120a
Copy link
Contributor

win120a commented Aug 26, 2022

Introduction of feature / 功能介绍

Related issues / 相关问题:#10154#10223
Related introductions / 相关介绍:https://dubbo.apache.org/zh/docs3-v2/java-sdk/faq/intro/

Dubbo 内部依赖的 Logger 抽象层提供了日志输出能力,但是大部分的异常日志都没有附带排查说明,导致用户看到异常后无法进行处理。

为了解决这个问题,自 Dubbo 3.1 版本开始,引入了错误码机制。其将官方文档中的错误码 FAQ 与日志框架连接起来。在日志抽象输出异常的同时附带输出对应的官网文档链接,引导用户进行自主排查。

下面是目前在 Dubbo 中所涉及到的错误码。如果你找到了更多的错误码的话,欢迎各位在下面补充。

The logging abstraction layer of Dubbo provides the ability of log output. Due to the absence of troubleshooting instructions, users can't handle the error.

In order to solve the problem above, the error code mechanism is introduced since Dubbo 3.1. It acts as the bridge between the Error Code FAQ in official document to the logger framework. When error occurs, user can help themselves by reading instructions in the document.

Below is the error codes that Dubbo using, if you find more, you may comment to add it.

Error codes currently using / 迄今为止使用的错误码:

0 - Common 层

0-1: Thread pool is EXHAUSTED! - 线程池资源耗尽。
0-2 - Property type mismatch. - 属性类型不匹配

1 - 注册中心层 - Registry

1-1: Address invalid. - 地址非法(服务版本或分组不匹配)
1-2 - (空缺)[Absence]
1-3: URL evicting failed. - URL 销毁失败
1-4 Empty address. - 空地址
1-5 Received URL without any parameters. - 接收到没有任何参数的 URL
1-6 Error when clearing cached URLs. - 清空缓存 URL 出错
1-7: Failed to notify registry event. - 通知注册中心事件失败
1-8: Failed to unregister / unsubscribe url on destroy. - 销毁时注销(取消订阅)地址失败
1-9: failed to read / save registry cache file. - 读写注册关系缓存文件失败
1-10 Failed to delete lock file. - 删除锁文件失败。
1-11 Failed to obtain or create registry (service) object. - 注册服务实例创建失败
1-12 Failed to fetch (server) instance since the registry instances have been destroyed. - 由于 “注册服务” 的实例均已销毁,因此没法获取服务提供(或订阅)方的服务器地址。
1-13 - reach the most times of retry. 达到最多的重试次数。
1-14 - Failed to parse raw dynamic config. - 动态配置识别失败
1-15 - Failed to destroy service. - 销毁服务失败
1-16 - Unsupported category in NotifyListener - 存有不支持的类别(在 NotifyListener 中)
1-17 - Address refresh failed. - 地址刷新失败

2 - 路由层 - Cluster

2-1 - Failed to execute routing. - 路由选址执行失败。
2-2 - No provider available - 没有可用的提供端。

3 - 动态代理层 - Proxy

3-1 - Failed to convert the URL address into Invokers. - 服务地址到 Invoker 对象的转换失败。

4 - 协议层 - Protocol

4-1 - Unsupported protocol - 不支持的协议。
4-2 - Can't find an instance URL using the default preferredProtocol. - 用指定的协议为条件找不到服务实例。

5 - 配置(中心)层 - Config

5-1 Failed to connect to configuration center. - 连接到注册中心失败。

6 - 网络传输层 - Transport

6-1 - Failed to connect to provider server by other reason. - 因其它原因连接不上 Provider。
6-2 - Client-side timeout. - 客户端超时

@win120a win120a added the type/discussion Everything related with code discussion or question label Aug 26, 2022
@win120a
Copy link
Contributor Author

win120a commented Sep 7, 2022

0-3 - File cache path inaccessible. - 无法访问缓存路径
0-4 - File cache entry count exceeded. - 缓存条目超限

@win120a
Copy link
Contributor Author

win120a commented Sep 7, 2022

0-3 - File cache path inaccessible. - 无法访问缓存路径 0-4 - File cache entry count exceeded. - 缓存条目超限

Added in #10538 #10568

@win120a
Copy link
Contributor Author

win120a commented Sep 9, 2022

Added in #10598
0-5 - Cache file size exceeded - 缓存文件大小超限

@win120a
Copy link
Contributor Author

win120a commented Sep 9, 2022

Related issues about error codes classified by modules (按模块划分的错误码 Issue):
#10562 (Common Module - 0)

#10590 (Registry Module - 1)

#10560 (Cluster Module - 2)

#10584 (Config Module - 5)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type/discussion Everything related with code discussion or question
Projects
Status: No status
Development

No branches or pull requests

1 participant