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

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

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

Amazon Q Developer 会生成详细日志,帮助您诊断和解决问题。本指南向您展示如何访问不同 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 扩展日志时,请查找:

  • 错误消息-包含 “错误” 或 “致命” 的行表示存在严重问题

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

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

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

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 开发工具包调用(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分析-应用程序级问题包括:
  • 错误 chat_cli:: cli:: chat-聊天处理和状态管理错误

  • 错误 chat_cli:: cli:: agent-迁移和代理相关问题

  • 错误 chat_cli:: telemetry-遥测验证和传输失败

chat.log分析-运行时操作细节包括:
  • 调试 q_cli:: cli- Amazon Q CLI 命令的执行和初始化

  • 调试 aws_sdk_*-AWS 开发工具包操作和服务调用

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

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

  • 错误 fig_telemetry-系统遥测和套接字连接问题

一般分析技巧:

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

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

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

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

提示

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

常见日志模式和解决方案

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

MCP 服务器连接错误

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

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

聊天处理中断

日志模式(在 qchat.log 中):“处理当前状态时出错 err=Intructed {tool_uses: None}”

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

遥测验证错误

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

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

迁移警告

日志模式(在 qchat.log 中):“未进行迁移的原因如下:迁移中止”

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

身份验证失败次数

日志模式(在 chat.log 中):AWS 开发工具包操作中存在与身份验证相关的错误

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

网络连接问题

日志模式(在 chat.log 中):“连接超时”、“网络无法访问” 或 HTTP 连接失败

解决方案:检查您的互联网连接和防火墙设置

AWS 开发工具包操作失败

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

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

获取日志分析方面的帮助

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

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

  • 提供有关问题何时发生以及重现问题的步骤的背景信息