

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 疑难解答 AWS Toolkit for Visual Studio Code
<a name="general-troubleshoot"></a>

以下各节包含有关 AWS Toolkit for Visual Studio Code 和使用该工具包中的 AWS 服务的一般疑难解答信息。有关与解决 AWS Toolkit 中的 SAM 问题具体相关的问题，请参阅本用户指南中的[无服务器应用程序故障排除](https://docs.aws.amazon.com/toolkit-for-vscode/latest/userguide/serverless-apps-troubleshooting.html)主题。

**Topics**
+ [问题排查最佳实践](#general-troubleshoot-best-practice)
+ [配置文件 ... 在配置文件中找不到](#general-troubleshoot-profile-not-found)
+ [SAM json 架构：无法更改 template.yaml 文件中的架构](#general-troubleshoot-sam-json-template-yaml)

## 问题排查最佳实践
<a name="general-troubleshoot-best-practice"></a>

以下是解决 AWS Toolkit for Visual Studio Code 问题时推荐的最佳做法。有关如何为做出贡献的详细信息 AWS Toolkit for Visual Studio Code，请参阅 AWS Toolkit for Visual Studio Code GitHub 存储库中的[参与 AWS Toolkit for Visual Studio Code](https://github.com/aws/aws-toolkit-vscode/blob/master/CONTRIBUTING.md)主题。
+ 在发送报告之前，尝试重现问题或错误。
+ 详细记录重现过程中的每个步骤、设置和错误消息。
+ 收集您的 AWS 工具包调试日志。有关如何查找 AWS Toolkit 调试日志的详细说明，请参阅本用户指南主题中的 “*如何找到您的 AWS 日志*” 过程。
+ 查看未解决的请求、已知的解决方案，或者在 AWS Toolkit for Visual Studio Code GitHub 存储库的 “[AWS Toolkit for Visual Studio Code 问题](https://github.com/aws/aws-toolkit-vscode/issues)” 部分报告未解决的问题。

**注意**  
以下过程介绍如何查看 AWS Toolkit 调试日志。与查看 Amazon Q 调试日志的过程完全相同，唯一的不同是您从 VS Code 命令面板中选择 **Amazon Q：查看日志**。

**如何找到你的 AWS Toolkit for Visual Studio Code 调试日志**

1. 在 VS Code 中，按 **Cmd \+ Shift \+ P** 或 **Ctrl \+ Shift \+ P**（Windows）打开命令面板，然后在搜索字段中输入 **AWS View Logs**。

1. 选择 “**AWS 查看日志**”，在 **VS Code 终端输出**窗口中打开您的 AWS Toolkit 日志。

1. 在 **VS Code 终端输出**窗口中，展开**齿轮**图标菜单并选择**调试**。

1. 再次展开**齿轮**图标菜单，然后选择**设为默认**。

1. 按 **Cmd \+ Shift \+ P** 或 **Ctrl \+ Shift \+ P**（Windows）重新打开命令面板，然后搜索 **Reload Window**，接下来选择**开发人员：重新加载窗口**。

1. VS Code 会重新加载，**VS Code 终端输出**窗口会显示您更新的 AWS Toolkit 调试日志。

## 配置文件 ... 在配置文件中找不到
<a name="general-troubleshoot-profile-not-found"></a>

**问题**

**注意**  
此问题仅适用于 `~/.aws/config` 文件而不适用于 `~/.aws/credentials` 文件。有关 AWS 配置和 AWS 凭据文件的详细信息，请参阅 *AWS SDK 和工具参考指南中的共享配置和*[凭据文件](https://docs.aws.amazon.com/sdkref/latest/guide/file-format.html)主题。

选择凭据时， AWS Toolkit 日志会显示一条具有以下结构的消息：`Profile name could not be found in shared credentials file`。

以下是该错误在 AWS Toolkit 日志中的示例：

```
         2023-08-08 18:20:45 [ERROR]: _aws.auth.reauthenticate: Error: Unable to authenticate connection
         -> CredentialsProviderError: Profile vscode-prod-readonly could not be found in shared credentials file.
```

**解决方案**

如果您的配置文件已存在于 `~/.aws/config` 中，请检查其开头是否为 `[profile `。以下是结构**正确的**用户配置文件示例：

```
         [profile example]
         region=us-west-2
         credential_process=...
```

以下是结构**不正确的**用户配置文件示例：

```
         [example]
         region=us-west-2
         credential_process=...
```

## SAM json 架构：无法更改 template.yaml 文件中的架构
<a name="general-troubleshoot-sam-json-template-yaml"></a>

**问题**

您无法在 SAM template.yaml 中手动选择不同的 json 架构

**解决方案**

更新至 vscode-yaml 版本 1.11\+ 后，您可以在 YAML 文件的顶部添加一个 **yaml-language-server** 模式行来强制通过 URI 使用架构。有关在 *Redh* at [开发者存储库的 *yaml 语言服务器*主题中使用内联架构](https://github.com/redhat-developer/yaml-language-server#using-inlined-schema)部分的更多信息。 GitHub 以下是 **yaml-language-server** 模式行的示例。

```
         # yaml-language-server: $schema=https://raw.githubusercontent.com/aws/serverless-application-model/main/samtranslator/schema/schema.json
```