调试 TypeScript AWS CDK 应用程序
Debugging TypeScript AWS CDK application
是否可以调试 AWS CDK TypeScript 应用程序?如果需要例如检查哪些值是特定变量?
比如在Java就是一个断点。
但是,如果我有以下情况,我如何检查流程是否按预期方式进行:
if (someVariable) {...}
在 TypeScript 代码中?我如何检查条件是否为真?
DevopsStart 的人创造了您正在寻找的东西。
请注意,在调试您的代码时,CDK tokens
仍将表示为 "tokens" 而不是实际值。
来自文档:
Tokens represent values that can only be resolved at a later time in
the lifecycle of an app. For example, the name of
an Amazon S3 bucket that you define in your AWS CDK app is only
allocated by AWS CloudFormation when you deploy your app. If you print
the bucket.bucketName attribute, which is a string, you see it
contains something like the following :
${TOKEN[Bucket.Name.1234]}
您可以简单地 运行 以其编写的语言调试 AWS CDK 应用程序。这在 Jetbrains IDE 或 VSCode 中都很容易实现。只需在调试模式下执行 index.ts
或 app.py
。
唯一的问题是 AWS CDK 中的上下文变量不可用。我在调试时手动取消注释这些。
对于打字稿,您执行 Javascript 文件,它应该可以帮助您调试以在打字稿中进行更改
来自项目顶级文件夹:
$ mkdir .vscode/
$ touch .vscode/launch.json
然后修改launch.json为:
{
"version": "0.2.0",
"configurations": [
{
"type": "pwa-node",
"request": "launch",
"name": "Launch Program",
"skipFiles": [
"<node_internals>/**"
],
"runtimeArgs": [
"-r", "./node_modules/ts-node/register/transpile-only"
],
"args": [
"${workspaceFolder}/bin/cdk.ts"
]
}
]
}
备注:
- 确保 ${workspaceFolder}/bin/cdk.ts 与您的应用程序在 bin 文件夹中的入口点匹配。
- 以前的版本使用“类型”:“节点”。就我而言,我发现它只适用于“pwa-node”。
- 设置断点并照常调试。
是否可以调试 AWS CDK TypeScript 应用程序?如果需要例如检查哪些值是特定变量?
比如在Java就是一个断点。
但是,如果我有以下情况,我如何检查流程是否按预期方式进行:
if (someVariable) {...}
在 TypeScript 代码中?我如何检查条件是否为真?
DevopsStart 的人创造了您正在寻找的东西。
请注意,在调试您的代码时,CDK tokens
仍将表示为 "tokens" 而不是实际值。
来自文档:
Tokens represent values that can only be resolved at a later time in the lifecycle of an app. For example, the name of an Amazon S3 bucket that you define in your AWS CDK app is only allocated by AWS CloudFormation when you deploy your app. If you print the bucket.bucketName attribute, which is a string, you see it contains something like the following :
${TOKEN[Bucket.Name.1234]}
您可以简单地 运行 以其编写的语言调试 AWS CDK 应用程序。这在 Jetbrains IDE 或 VSCode 中都很容易实现。只需在调试模式下执行 index.ts
或 app.py
。
唯一的问题是 AWS CDK 中的上下文变量不可用。我在调试时手动取消注释这些。
对于打字稿,您执行 Javascript 文件,它应该可以帮助您调试以在打字稿中进行更改
来自项目顶级文件夹:
$ mkdir .vscode/
$ touch .vscode/launch.json
然后修改launch.json为:
{
"version": "0.2.0",
"configurations": [
{
"type": "pwa-node",
"request": "launch",
"name": "Launch Program",
"skipFiles": [
"<node_internals>/**"
],
"runtimeArgs": [
"-r", "./node_modules/ts-node/register/transpile-only"
],
"args": [
"${workspaceFolder}/bin/cdk.ts"
]
}
]
}
备注:
- 确保 ${workspaceFolder}/bin/cdk.ts 与您的应用程序在 bin 文件夹中的入口点匹配。
- 以前的版本使用“类型”:“节点”。就我而言,我发现它只适用于“pwa-node”。
- 设置断点并照常调试。