代理 365 CLI logs 命令参考

管理CLI诊断日志。 logs 命令导出经过涂黑的 CLI 日志文件副本,这些文件安全可与Microsoft支持共享。 使用 logs export 该子命令来遮蔽和复制 CLI 日志文件。 导出的文件可以安全地附加到支持工单中,不会泄露邮件、GUID或令牌。

最低要求角色:无。 该命令仅读取和重写本地日志文件。

Syntax

a365 logs [command] [options]

logs export

导出一份经过涂黑的CLI诊断日志文件副本,安全地与Microsoft支持共享。 对JWT令牌、电子邮件地址、GUID和操作系统路径用户名进行涂改,并用一致的别名替换相同值,以保持日志关联性。

a365 logs export [<command>] [options]

CLI会为每个顶级命令写入诊断日志文件到本地日志目录(例如,%LOCALAPPDATA%\Microsoft.Agents.A365.DevTools.Cli\logs\ on Windows)。 logs export 读取其中一个或全部文件,删除敏感内容,并将被删减的副本写入你选择的输出目录。

哪些内容被涂黑

Pattern Replacement
JWT 承载令牌(header.payload.signature) <JWT-TOKEN>
Email addresses <email-1><email-2>, ...(每封邮件中的别名保持一致)
GUIDs(8-4-4-4-12)——参见例外保留内容 <id-1><id-2>, ...(根据 GUID 保持一致的别名)
OS-路径用户名 (C:\Users\<name>/Users/<name>/home/<name> <username-1><username-2>,...

相同的数值在文件中保持相同的别名,因此日志中的交叉引用仍有助于诊断问题。 被编辑的文件包含一个头部,记录源路径(同样的涂黑)以及每个被替换模式的计数。

What's preserved

编辑器有意逐字地保持0 的上下文,以确保被删减的日志仍可用于调试和Microsoft支持升级:

Preserved 为什么它是安全的
时间戳、日志级别、作用域名称、错误代码、文件路径(用户名替换)、HTTP 状态码、JSON 形状 这些都无法识别租户或用户。
TraceId: <guid> 以及 CorrelationId: <guid> 价值观 由CLI生成的会话本地随机标识符。 它们不敏感,是将日志与服务器端跟踪匹配的关键。
request-idclient-request-id 在Microsoft Graph误差体内的值 服务器每次通话生成。 Microsoft 支持会用这些数据在升级服务日志中查找具体请求。
公开且知名的 Microsoft 和 Agent 365 资源应用 ID:
• Microsoft Graph (00000003-0000-0000-c000-000000000000
• Agent 365 消息机器人 API
• Agent 365 可观测性 API
• Power Platform API(连接性)
• Agent 365 Tools(MCP受众,制作)
这些都是公开记录的常态——它们并不能透露租户的任何信息。 保持这些行意味着像这样的行 Validated permission AgentIdentityBlueprint.ReadWrite.All against 00000003-0000-0000-c000-000000000000 保持可读,而不是变成 ... against <id-4>

租户特定的服务主体对象ID以及任何与上述模式不符的其他GUID仍通过一致性别名机制 被涂黑

Important

遮蔽模式旨在去除最常见的敏感内容。 如果你的日志包含自定义秘密(例如,代码在该CLI外记录的秘密,或粘贴到栈轨迹中的值),格式为该编辑者不识别,请在分享前手动删除。

分享前如何核实

用文本编辑器打开已编辑的文件,扫描任何看起来是租户特定内容的:

# Spot-check what was preserved vs aliased
Select-String -Path .\a365.setup.redacted.log -Pattern "CorrelationId|TraceId|request-id" | Select-Object -First 10
Select-String -Path .\a365.setup.redacted.log -Pattern "<id-|<email-|<JWT-TOKEN>|<username-" | Measure-Object

导出文件的头部行总结了计数。 如果你看到的别名数量比预期多 <id-N> ,说明别名映射正在发挥作用——每个租户特定的GUID恰好得到一个别名。

export 选项

Option Description
<command> 你想导出日志的命令名称(比如 setupcleanup)。 省略这个参数,一次性导出所有可用的日志文件。
-o--output <output> 用于写入已编辑日志文件或文件的目录。 默认使用当前目录。
-?-h--help 显示帮助和使用情况信息。

Examples

将日志导出 setup 到当前目录:

a365 logs export setup

将所有可用日志导出到特定文件夹:

a365 logs export --output ./support-bundle

将日志导出 cleanup 到特定文件夹:

a365 logs export cleanup --output ./support-bundle

输出文件命名

导出的文件写为 a365.<command>.redacted.log。 当你省略 <command>时,CLI会将每个可用日志导出到其单独的涂黑文件中,且命名模式相同。

Important

在分享之前,请先查看已涂黑的文件。 遮蔽模式涵盖了JWT令牌、电子邮件、GUID和操作系统路径用户名,但它们并未涵盖所有可能的秘密。 如果你的日志包含自定义秘密或其他格式的敏感标识符,分享前请手动删除。

Note

logs export 不会删除或修改原始日志文件。 原始日志会保留在你的本地日志目录中。 该命令只写入经过涂黑的副本到输出目录。