访问和使用 Amazon Q 开发者版日志 - Amazon Q 开发者版

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

访问和使用 Amazon Q 开发者版日志

Amazon Q 开发者版会生成详细的日志,有助于您诊断和解决问题。本指南向您展示如何访问不同 Amazon Q 接口的日志,以及如何配置日志记录级别以获取进行故障排除所需的信息。

快速导航:

日志访问概述

访问 Amazon Q 开发者版日志的主要方式有两种,具体取决于您使用服务的方式:

  • IDE 扩展程序-VS Code 并 JetBrains IDEs 有一个 “显示日志” 按钮用于访问 Amazon Q 的特定日志

  • 命令行界面(Amazon Q CLI):日志本地存储在临时目录中,详细级别可配置

重要

日志文件可能包含您与 Amazon Q 的对话和互动中的敏感信息,包括文件路径、代码片段、命令输出 IDs、账户和资源名称。与他人共享日志文件时,请务必小心。

IDE 扩展日志

通过 IDE 接口访问日志

  1. 在你的 IDE 中打开 Amazon Q 聊天面板(VS Code 或 JetBrains)

  2. 点击聊天面板右上角的显示日志按钮

  3. 确认出现的敏感性警告

  4. 日志文件位置将在系统的文件管理器中打开以供查看

分析 IDE 扩展日志

查看 IDE 扩展日志时,请查找:

  • 错误消息:包含“ERROR”或“FATAL”的行表示存在严重问题

  • 身份验证问题:查找与身份验证或凭证相关的错误

  • 网络连接:连接超时或与网络相关的错误

  • 功能特定的错误:与代码建议、聊天或其它特定功能相关的问题

Amazon Q CLI 日志

无论详细程度设置如何,Amazon Q CLI 都会自动为所有操作生成全面的日志。日志始终写入文件,而详细程度标志仅控制出现在终端输出中的内容。

Amazon Q CLI 日志位置和文件

Amazon Q CLI 日志自动存储在以下位置:

操作系统 日志位置
macOS $TMPDIR/qlog/(通常为 /var/folders/.../qlog/
Linux/WSL $XDG_RUNTIME_DIR/qlog/$TMPDIR/qlog//tmp/qlog/
Windows %TEMP%\qlog\

Amazon Q CLI 会自动创建多个专门的日志文件:

chat.log主要 Amazon Q CLI 包装器日志,包括:
  • Amazon Q CLI 初始化和启动操作

  • AWS SDK 调用(Cognito 身份、身份验证流程)

  • 网络操作(HTTP/TLS 连接、证书处理)

  • 低级系统操作(遥测、套接字连接)

  • AWS 服务端点解析和连接池

  • 基础设施组件的详细调试信息

qchat.log聊天应用程序特定的日志,包括:
  • 聊天应用程序错误和状态处理问题

  • MCP(模型上下文协议)服务器管理和连接错误

  • 应用程序级迁移问题

  • 用户互动中断和聊天处理失败

  • 较高级别的应用程序逻辑错误

mcp.log:模型上下文协议服务器日志(使用 MCP 服务器时填充)
translate.log:自然语言到 Shell 的翻译日志(使用翻译功能时填充)

日志文件之间的主要差异

范围和细节差异:

  • chat.log:涵盖整个 Q CLI 基础设施的全面系统级日志记录

  • qchat.log:专门针对聊天功能的应用程序级日志记录

内容焦点差异:

  • chat.log:AWS SDK 内部结构、网络协议、身份验证流程、系统操作

  • qchat.log:聊天逻辑、MCP 服务器生命周期、用户体验问题、应用程序错误

注意

日志文件仅存储在您的本地计算机上,不会发送到 AWS。所有日志文件均会在您首次使用 CLI 时自动创建,即使没有详细标志也是如此。

Amazon Q CLI 故障排除工作流程

按照此方法从日志中收集诊断信息。

  1. 确定系统的日志目录:

    在 Linux/WSL 上:

    echo $XDG_RUNTIME_DIR/qlog/

    在 macOS 上:

    echo $TMPDIR/qlog/

    在 Windows 上:

    echo %TEMP%\qlog\
  2. 以最大详细程度运行 Amazon Q CLI 命令以查看终端中的详细输出:

    q -vvv chat
  3. 重现您遇到的问题

  4. 退出 Amazon Q CLI 并检查相关的日志文件。对于大多数问题,请检查两个主日志文件:

    在 macOS/Linux 上:

    less -r $XDG_RUNTIME_DIR/qlog/qchat.log less -r $XDG_RUNTIME_DIR/qlog/chat.log

    macOS 上的替代日志文件:

    less -r $TMPDIR/qlog/qchat.log less -r $TMPDIR/qlog/chat.log

    在 Windows 上:

    type %TEMP%\qlog\qchat.log type %TEMP%\qlog\chat.log
  5. 要在故障排除期间进行实时日志监控,请使用:

    同时监控所有日志文件:

    tail -f $XDG_RUNTIME_DIR/qlog/*.log

    监控特定文件:

    tail -f $XDG_RUNTIME_DIR/qlog/qchat.log
    tail -f $XDG_RUNTIME_DIR/qlog/chat.log

分析 Amazon Q CLI 日志

Amazon Q CLI 日志使用标准日志记录级别按重要性对信息进行分类:

ERROR

妨碍正常操作的关键问题:故障排除时从这里开始

警告

不会停止功能但应引起注意的潜在问题

INFO

有关应用程序正在执行的操作的一般操作消息

调试

有助于进行更深入调查的详细的技术信息

检查 Amazon Q CLI 日志时,请重点关注不同日志文件中的以下关键区域:

qchat.log 分析:应用程序级问题,包括:
  • ERROR chat_cli::cli::chat:聊天处理和状态管理错误

  • ERROR chat_cli::cli::agent:迁移和代理相关问题

  • ERROR chat_cli::telemetry:遥测验证和传输失败

chat.log 分析:运行时操作详细信息,包括:
  • DEBUG q_cli::cli:Amazon Q CLI 命令执行和初始化

  • DEBUG aws_sdk_*:AWS SDK 操作和服务调用

  • DEBUG rustls:: *- TLS/SSL 连接建立和证书处理

  • DEBUG hyper_*:HTTP 连接管理和网络操作

  • ERROR fig_telemetry:系统遥测和套接字连接问题

一般分析提示:

  • 时间戳:将日志条目与问题发生的时间相关联

  • 错误模式:查找重复的错误或错误级联

  • 请求 IDs-跟踪特定的 API 调用及其结果

  • 连接状态:监控网络连接和身份验证状态

提示

使用诸如 grepawk 或具有搜索功能的文本编辑器之类的工具来筛选日志,以查找特定的错误消息或模式。例如:grep -i error $XDG_RUNTIME_DIR/qlog/*.log

常见日志模式和解决方案

以下是在日志中可能会发现的一些常见问题及其典型解决方案:

MCP 服务器连接错误

日志模式(在 qchat.log 中):“客户端 [服务器名] 的后台监听线程: RecvError(已关闭)” 或 “传输层的所有发件人都已删除”

解决方案:MCP 服务器进程已停止运行。这通常是退出 Amazon Q CLI 或服务器正常关闭时的预期行为。

聊天处理中断

日志模式(在 qchat.log 中):“An error occurred processing the current state err=Interrupted { tool_uses: None }”

解决方案:当用户取消聊天操作(例如,Ctrl+C)就会发生这种情况,是预期行为。

遥测验证错误

日志模式(在 qchat.log 中):“无法发送 cw 遥测事件 err= ValidationError [ValidationException]:请求格式不正确”

解决方案:这些通常是非关键的遥测传输问题,不影响核心功能。

迁移警告

日志模式(在 qchat.log 中):“Migration did not happen for the following reason: Aborting migration”

解决方案:这通常是与配置迁移相关的非关键警告,通常可以忽略。

身份验证失败次数

日志模式(在 chat.log 中):AWS SDK 操作中与身份验证相关的错误

解决方案:运行 q login 以重新进行身份验证或检查您的 AWS 凭证

网络连接问题

日志模式(在 chat.log 中):“Connection timeout”、“Network unreachable”或 HTTP 连接失败

解决方案:请检查您的网络连接和防火墙设置。

AWS SDK 操作失败

日志模式(在 chat.log 中):Cognito 身份操作失败或凭证检索错误

解决方案:检查您的 AWS 凭证和网络连接。可能需要重新进行身份验证

获得有关日志分析的帮助

如果您在分析日志或解决问题时需要协助:

  • 联系支持人员时,请附上相关的日志摘录(移除敏感信息)

  • 提供有关问题何时发生以及重现问题的步骤的上下文