跳转到内容

CLI:logs

先读 CLI 总览:会话/目录、退出约定、角色边界、合成占位 ID 和执行授权规则在其中统一定义。本页逐叶补充例外;以下命令不是按顺序执行的脚本。

前提与权限。 平台登录、已选择项目,并且是该项目成员(包括 Operator)。 以下合成名称仅用于隔离演示项目;标识符请替换成该项目 list/create 返回的值。

Usage: viat logs query [OPTIONS]

命令别名: 无。

参数 ID / 完整拼写类型、消费值数量、action必填 / 默认允许值冲突、别名、解析与原始 Clap 帮助
before: --beforeString, 1, Set否;条件必填见行为; Clap 无显式默认—原始帮助:Pagination cursor from previous —json output
endpoint: --endpointString, 1, Set否;条件必填见行为; Clap 无显式默认—原始帮助:Filter to a single endpoint node id (UUID)
help: --help / -hString, 0, Help否;条件必填见行为; Clap 无显式默认—原始帮助:Print help
json: --jsonbool, 0, SetTrue否;条件必填见行为; false—原始帮助:Emit raw JSON response
limit: --limiti64, 1, Set否;条件必填见行为; Clap 无显式默认;运行时:服务端 50,限 1–200—原始帮助:Max rows to return (default 50)
path_eq: --path-eqString, 1, Set否;条件必填见行为; Clap 无显式默认—原始帮助:Exact-string filter on request path column
request: --requestString, 1, Set否;条件必填见行为; Clap 无显式默认—原始帮助:Filter to a single request_id (UUID)
since: --sinceString, 1, Set否;条件必填见行为; Clap 无显式默认—原始帮助:Lower-bound timestamp (RFC3339, inclusive)
status_max: --status-maxi16, 1, Set否;条件必填见行为; Clap 无显式默认—原始帮助:HTTP status <= this
status_min: --status-mini16, 1, Set否;条件必填见行为; Clap 无显式默认—原始帮助:HTTP status >= this (e.g. 400 for errors only)
until: --untilString, 1, Set否;条件必填见行为; Clap 无显式默认—原始帮助:Upper-bound timestamp (RFC3339, exclusive)

Clap 参数组(literal metadata):{"arguments":["before","endpoint","json","limit","path_eq","request","since","status_max","status_min","until"],"id":"QueryArgs","multiple":true,"required":false}

输入、行为与副作用。 查询所选项目执行元数据;可按端点 UUID/请求 UUID/状态范围/UTC RFC3339 时间/精确路径筛。—before 用返回游标。不查任意业务表。

实际输出与退出。 文本含时间/请求/状态/时长/路径及下一页提示;—json 分页响应。无匹配退出 0。 除本节例外外,正常完成为 0,参数/文件/HTTP/运行错误为非零(解析错误通常 2,运行错误通常 1)。

合成调用示例(只校验语法,不执行)。

终端窗口
viat logs query --limit 10 --json

失败处理、验证与清理。 UUID/时间/游标/范围无效失败。分页原样沿用游标和筛选。只读;保护输出中的身份/载荷相关元数据。

前提与权限。 平台登录、已选择项目,并且是该项目成员(包括 Operator)。 以下合成名称仅用于隔离演示项目;标识符请替换成该项目 list/create 返回的值。

Usage: viat logs search [OPTIONS] <QUERY>

命令别名: 无。

参数 ID / 完整拼写类型、消费值数量、action必填 / 默认允许值冲突、别名、解析与原始 Clap 帮助
before: --beforeString, 1, Set否;条件必填见行为; Clap 无显式默认—原始帮助:Pagination cursor from a previous run’s “next page” hint
help: --help / -hString, 0, Help否;条件必填见行为; Clap 无显式默认—原始帮助:Print help
json: --jsonbool, 0, SetTrue否;条件必填见行为; false—原始帮助:Emit raw JSON response
limit: --limiti64, 1, Set否;条件必填见行为; Clap 无显式默认;运行时:服务端 50,限 1–200—原始帮助:Max rows to return (default 50, max 200)
query: <QUERY> (#1)String, 1, Set是; Clap 无显式默认—原始帮助:Substring to search for in log line content (case-insensitive, min 3 chars)
since: --sinceString, 1, Set否;条件必填见行为; Clap 无显式默认—原始帮助:Lower-bound timestamp (RFC3339, inclusive)
stream: --streamString, 1, Set否;条件必填见行为; Clap 无显式默认—原始帮助:Restrict to a single stream: stdout | stderr | structured
until: --untilString, 1, Set否;条件必填见行为; Clap 无显式默认—原始帮助:Upper-bound timestamp (RFC3339, inclusive)

Clap 参数组(literal metadata):{"arguments":["before","json","limit","query","since","stream","until"],"id":"SearchArgs","multiple":true,"required":false}

输入、行为与副作用。 子串搜索日志内容(至少 3 字符);—stream 可选 stdout/stderr/structured。仅 PostgreSQL 日志后端可用,不是所有 sink。

实际输出与退出。 文本含匹配请求/时间/stream/content 及游标;—json 搜索页。无匹配 0。 除本节例外外,正常完成为 0,参数/文件/HTTP/运行错误为非零(解析错误通常 2,运行错误通常 1)。

合成调用示例(只校验语法,不执行)。

终端窗口
viat logs search demo --limit 10 --json

失败处理、验证与清理。 短查询/后端不支持/时间错失败。缩小时间并 —before 分页;工作流输出只有作为日志行才可搜。无变更/清理。

前提与权限。 平台登录、已选择项目,并且是该项目成员(包括 Operator)。 以下合成名称仅用于隔离演示项目;标识符请替换成该项目 list/create 返回的值。

Usage: viat logs show [OPTIONS] <REQUEST_ID>

命令别名: 无。

参数 ID / 完整拼写类型、消费值数量、action必填 / 默认允许值冲突、别名、解析与原始 Clap 帮助
help: --help / -hString, 0, Help否;条件必填见行为; Clap 无显式默认—原始帮助:Print help
json: --jsonbool, 0, SetTrue否;条件必填见行为; false——
request_id: <REQUEST_ID> (#1)String, 1, Set是; Clap 无显式默认——

Clap 参数组(literal metadata):{"arguments":["json","request_id"],"id":"Show","multiple":true,"required":false}

输入、行为与副作用。 按 request_id 获取单执行和日志行,不是内部 execution_log_id/端点 UUID。

实际输出与退出。 文本含请求/时间/方法/路径/状态/时长/错误及日志行;—json 完整详情。无日志行不证明没有执行。 除本节例外外,正常完成为 0,参数/文件/HTTP/运行错误为非零(解析错误通常 2,运行错误通常 1)。

合成调用示例(只校验语法,不执行)。

终端窗口
viat logs show 00000000-0000-4000-8000-000000000001 --json

失败处理、验证与清理。 404 时核对 query/run 的请求 ID、项目及保留期。日志可含敏感业务数据;只读,不执行/清理。

前提与权限。 平台登录、已选择项目,并且是该项目成员(包括 Operator)。 以下合成名称仅用于隔离演示项目;标识符请替换成该项目 list/create 返回的值。

Usage: viat logs tail [OPTIONS]

命令别名: 无。

参数 ID / 完整拼写类型、消费值数量、action必填 / 默认允许值冲突、别名、解析与原始 Clap 帮助
endpoint: --endpointString, 1, Set否;条件必填见行为; Clap 无显式默认—原始帮助:Filter to a single endpoint node id (UUID)
help: --help / -hString, 0, Help否;条件必填见行为; Clap 无显式默认—原始帮助:Print help
json: --jsonbool, 0, SetTrue否;条件必填见行为; false—原始帮助:Emit each event as one JSON line (newline-delimited)

Clap 参数组(literal metadata):{"arguments":["endpoint","json"],"id":"TailArgs","multiple":true,"required":false}

输入、行为与副作用。 SSE 流新项目执行/日志事件,无初始回填,排除测试执行。其他节点完成后约 2 秒 DB 轮询出现;跨节点日志行需 PostgreSQL 后端。

实际输出与退出。 文本格式化事件;—json 每行事件数据(不是一个 JSON 数组)。重连/错误写 stderr;连续五次失败后报错停止。否则持续到中断。 除本节例外外,正常完成为 0,参数/文件/HTTP/运行错误为非零(解析错误通常 2,运行错误通常 1)。

合成调用示例(只校验语法,不执行)。

终端窗口
viat logs tail --json

失败处理、验证与清理。 Ctrl-C 仅停本地读取(信号退出码不属 0/1 命令约定)。重连不重放,缺口用 query/show 查。不取消脚本,无远程清理。

语法来自固定 Clap 合同与 main.rs;行为/权限核对以下源文件,路径相对产品仓库根。

  • crates/viat-cli/src/commands/logs.rs
  • crates/viat-api/src/handlers/logs.rs
  • crates/viat-db/src/logs.rs