gpt4 book ai didi

c# - 从堆栈跟踪创建错误号

转载 作者:行者123 更新时间:2023-12-01 15:17:39 24 4
gpt4 key购买 nike

我在 Android 平台上使用 Java 进行编码,但这并不是特定编程语言的问题。

所以...如果我的程序中发生错误,我会在 try-catch 语句中捕获它,并且我想创建一个错误号,将其显示给用户,让他有机会向我发送此错误错误号。

问题是我想以这样的方式对错误进行编码,以便我得到一个小数字(假设最多 5 位数字),稍后我可以解码该数字并可以准确地找出哪个类,哪个类方法以及发生错误的行号。

我猜这更多是一个密码学问题,所以有人对我应该如何做这件事有任何想法吗?

编辑

我正在考虑为每个文件、每种方法提供一个数字,并以某种方式使用这些值来创建错误号,但我不确定如何计算实际的错误号,以便它能以相反的方式工作(正确解码)。

最佳答案

我会说,这是一种可怕的调试问题的方法。您想要做的是设置一个枚举来指示错误代码+描述。这类似于 Microsoft does it 的方式

ERROR_SUCCESS

0 (0x0)

The operation completed successfully

诸如此类。这样您就可以将这些内容发布给您的用户,从而减少收到的电子邮件/投诉的数量(在某种程度上)。混淆堆栈跟踪对您来说将是一场噩梦,因为您似乎将自己锁定在一个难以管理的报告系统中。随着代码库的增长和/或添加更多自定义异常,您将很快破坏您的设计。此外,这是通过隐匿性实现安全的一个强有力的案例,其中有人可能会对您的流程进行逆向工程并开始编写针对您的恶意代码。

更好的方法:

获取 JIRA 帐户,技术更精通的用户可以在其中发布错误和说明。我相信 FogBugz 也具有此功能,您可以上传这些类型的内容,并且它允许用户裁剪图像以专注于您专门寻找的内容。

关于c# - 从堆栈跟踪创建错误号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11411758/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com