【发布时间】:2020-12-19 14:25:36
【问题描述】:
要创建自定义错误处理,我想在 MongoDbException 的 errorcode 属性上进行切换。
有没有官方的错误码列表?
我知道112 是WriteConflict,16608 表示除以0,16610 是除以零。
error_codes.yml 不完整,缺少 16608 和 16610。
【问题讨论】:
标签: mongodb
要创建自定义错误处理,我想在 MongoDbException 的 errorcode 属性上进行切换。
有没有官方的错误码列表?
我知道112 是WriteConflict,16608 表示除以0,16610 是除以零。
error_codes.yml 不完整,缺少 16608 和 16610。
【问题讨论】:
标签: mongodb
我在这里找到了一个列表(和你的一样)link。 就我而言,我们启动了很多测试场景,然后我在日志中搜索了所有可能的代码。我找到的是:
如果我们没有更好的解决方案。我们所能做的就是处理最多余的案例。其他情况作为 500 服务器错误处理。
【讨论】:
MongoDB 服务器源代码是公开可用的,如果您想获取有关特定错误的信息,或获取所有错误的列表,那么通过源代码将是您的最佳选择。
根据 Daemon Painter 的评论,有一个 open docs ticket 提供错误代码列表。
这样一个列表的一个挑战是服务器不保证什么时候它会产生一个特定的错误代码。因此,一个完整的错误代码列表要么不是很有用(如果它只告诉你存在哪些错误代码,而不是你何时会得到它们),要么维护起来很费力。
驱动程序通常仅在某些情况下查找某些错误代码(例如,参见here)。他们没有完整的错误代码列表。
【讨论】: