3 回答
TA贡献1811条经验 获得超5个赞
我的 Go 编程需要这个答案。答案与 Tobias 提供的答案略有不同(也许我有一个更新版本的调试器)。
以下是如何更改在调试器中可以看到的字符串长度:
设置你的 go 程序进行调试(为 vs 代码安装 go 扩展)
在您的工作区中,将有一个 .vscode 目录。其中有一个名为launch.json 的文件。如果一个不存在,那么当您即将启动调试器时,您可以创建一个。
编辑 launch.json 文件。它将有一个简单的 JSON conf。扩展该 JSON,使其看起来像这样(我将最大长度扩展到 400):
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Launch Package",
"type": "go",
"request": "launch",
"mode": "debug",
"program": "${workspaceFolder}",
"apiVersion": 2,
"dlvLoadConfig": {
"followPointers": true,
"maxVariableRecurse": 1,
"maxStringLen": 400,
"maxArrayValues": 64,
"maxStructFields": -1
}
}
]
}
TA贡献1772条经验 获得超6个赞
你可以在 vscode settings.json 中配置 delve。
有一个名为“maxStringLen”的参数,您可以将其设置为更高的值。我不建议将值设置为高。如果将 maxStringLen、maxArrayValues 等设置为高,调试器会变得非常慢。因此,如果您使用这些 delve 设置进行操作并且您的调试器变慢,最好再次选择较低的值。
这是一个显示 maxStringLen 和其他一些可能值的示例:
"go.delveConfig": {
"useApiV1": false,
"dlvLoadConfig": {
"followPointers": true,
"maxVariableRecurse": 3,
"maxStringLen": 400,
"maxArrayValues": 400,
"maxStructFields": -1
}
}
TA贡献1828条经验 获得超3个赞
我能够使用我的应用程序的本机记录器将长变量结果转储到终端。
此示例适用于python应用程序,但我确信其他语言也有不同的风格。
我的记录器已经在应用程序中设置好了,所以这很简单。在调试控制台中,我输入:
logging.warning(f"{my_very_long_var}")
...我得到了整个结果作为终端选项卡中的日志条目,没有任何毫无价值的...我进入调试控制台。
注意:我的记录器没有立即转储它......我必须在看到输出之前从断点恢复。这可能是典型的日志记录。
- 3 回答
- 0 关注
- 539 浏览
添加回答
举报