iquery

iquery - Fuchsia Inspect API 查询工具包

剧情简介

iquery [--format <format>] <command> [<args>]

说明

iquery 是一个实用程序,用于检查通过 Inspect API 公开的组件节点。它接受一组选项以及一个命令及其各自的选项。

为防止在选择器中出现难以调试的问题(其中 shell 会转义某些字符或其他字符),建议始终将选择器封装在单引号或双引号中,以便 shell 将它们作为原始字符串传递给 iquery。

选项

--format

输出的显示格式。

可接受的格式:

  • text:默认,适合人类阅读
  • json:适合机器读取

--help

输出使用情况信息。

命令

list

列出公开检查的所有组件(相对于归档器接收事件的范围)。

对于 v1:这是领域路径加上领域名称。

对于 v2:这是不含实例 ID 的名字。

用法示例:

$ iquery list
bootstrap/device_manager
core/archivist
...

--component

模糊搜索查询,可包含网址片段和名字片段。随附的位置参数选择器应省略组件选择器,因为组件选择器将根据搜索结果生成。

--with-url

输出用于启动组件的名称和网址。

--help

输出 list 的使用情况信息。

list-files [<monikers...>]

列出指定 paths 下包含检查数据的所有文件。

此命令查找的文件包括:

  • fuchsia.inspect.Tree:服务文件。标准方式是检查库,导出检查数据。
  • *.inspect:包含检查数据的 VMO 文件。Dart 检查库导出检查数据的标准方式。

用法示例:

$ iquery list-files bootstrap/archivist bootstrap/driver_manager
bootstrap/archivist
  fuchsia.inspect.Tree
bootstrap/driver_manager
  class/display-coordinator/000.inspect
  class/input-report/000.inspect
  class/input-report/001.inspect
  class/misc/000.inspect
  class/pci-root/000.inspect
  class/pci/000.inspect
  class/sysmem/481.inspect
  driver_manager/driver_host/10171/root.inspect
  ...

--help

输出 list-files 的使用情况信息。

selectors [<selectors...>]

列出所有可用的完整选择器(组件选择器 + 树选择器)。

如果提供了组件选择器,则只会输出该组件的选择器。

如果提供了完整选择器(组件 + 树),则会列出给定节点下的所有选择器。

用法示例:

$ iquery selectors 'core/archivist:root/fuchsia.inspect.Health' 'core/timekeeper'
core/archivist:root/fuchsia.inspect.Health:start_timestamp_nanos
core/archivist:root/fuchsia.inspect.Health:status
core/timekeeper:root/current:system_uptime_monotonic_nanos
core/timekeeper:root/current:utc_nanos
core/timekeeper:root:start_time_monotonic_nanos

--data

一个可重复的实参,用于指定树选择器。此标志应与单个位置参数一起使用。位置参数必须是模糊搜索查询,该查询将转换为名字,并拼接到树选择器上,以形成完整的诊断选择器。

如果指定此参数,则输出仅包含网址中包含指定名称的组件的别名。

--help

输出 selectors 的使用情况信息

show [<selectors...>]

输出与给定选择器匹配的检查层次结构。

用法示例:

$ iquery show 'archivist.cm:root/fuchsia.inspect.Health' 'core/timekeeper'
core/archivist:
  root:
    fuchsia.inspect.Health:
      start_timestamp_nanos = 30305104656
      status = OK
core/timekeeper:
  root:
    start_time_monotonic_nanos = 30347000053
    current:
      system_uptime_monotonic_nanos = 61617527688648
      utc_nanos = 1591119246552989779

--data

一个可重复的实参,用于指定树选择器。此标志应与单个位置参数搭配使用。位置参数必须是模糊搜索查询,该查询将转换为 moniker,并拼接到树选择器上,以形成完整的诊断选择器。

--file

我们感兴趣的文件名。如果提供了此参数,则输出将仅包含在 out/diagnostics 目录下给定文件下公开 Inspect 的组件中的数据。

--help

输出 show 的使用情况信息。