第 5 章 下载报告


运行扫描后,您可以下载该扫描的报告,以查看该扫描期间收集和处理的数据。

了解更多

要了解有关下载报告的更多信息,请参阅以下信息:

5.1. 下载报告

运行扫描后,您可以下载该扫描的报告,以查看该扫描期间收集和处理的数据。

扫描的报告有两种格式,即以逗号分隔的变量(CSV)格式和 JavaScript Object Notation (JSON)格式。它们也可以在两种内容类型中提供,扫描中的原始输出作为详细信息报告,并作为部署报告处理内容。

注意

提供了第三类报告,即 insights 报告,但只能通过 Discovery 命令行界面生成此报告。下载 insights 报告提供了一个 .tar.gz 文件,您可以传输到 cloud.redhat.com 上的混合云控制台。传输此文件允许在 Red Hat Insights 清单服务和订阅服务中使用报告数据。

了解更多

要了解更多有关合并和下载报告的信息,请参阅以下信息:

要了解有关如何创建报告的更多信息,请参阅以下信息。此信息包括报告生成进程的时序。这些进程将详细信息报告的原始事实更改为指纹数据,然后将指纹数据更改为部署报告的去除重复数据并合并的数据。此信息还包括一个部分指纹示例,用于显示用于创建发现报告的数据类型。

5.1.1. 下载报告

在 Scans 视图中,您可以选择一个或多个报告,并下载它们来查看报告数据。

先决条件

如果要下载扫描的报告,该扫描的最新扫描作业必须成功完成。

流程

  1. 在 Scans 视图中,导航到您要下载报告的扫描行。
  2. Download for that scan。

验证步骤

下载的报告作为 .tar.gz 文件保存到浏览器的下载位置,例如 report_id_224_20190702_173309.tar.gz。文件名格式为 report_id_ID_DATE_TIME.tar.gz,其中 ID 是服务器分配的唯一报告 ID,DATEyyyymmdd 格式的日期,TIMEhhmmss 格式的时间,基于 24 小时系统。日期和时间数据由运行客户端与服务器 API 的浏览器的交互来确定。

要查看报告,请将 .tar.gz 文件解压缩到 report_id_ID 目录中。未压缩的报告捆绑包包含四个报告文件:两个 CSV 和 JSON 格式的详细信息报告,以及 CSV 和 JSON 格式的两个部署报告。

注意

虽然您可以为您自己的内部进程查看和使用这些报告的输出,但 Discovery 文档不提供任何信息以帮助您解释报告结果。另外,虽然红帽支持可以提供一些与安装和使用 Discovery 相关的基本帮助,但支持团队不提供任何帮助以帮助您了解报告。报告及其格式旨在供红帽订阅教育和认知计划(SEAP)团队在客户互动期间使用,并为其他红帽内部流程提供数据,如向各种混合云控制台服务提供数据。

5.1.2. 如何创建报告

扫描过程用于发现您的 IT 基础架构中的系统,检查和收集这些系统的性质和内容的信息,并从每个系统检查期间收集的信息创建报告。

系统是 任何可通过 SSH 连接、vCenter Server 数据、Satellite Server API 或 Red Hat OpenShift 集群 API 进行干预的实体。因此,系统可以是物理或虚拟机,也可以是不同类型的实体,如容器或集群。

5.1.2.1. 事实和指纹

在扫描过程中,会为每个源中包含的每个系统收集一组事实。事实是 有关系统的单一数据,如操作系统版本、CPU 内核数或红帽产品使用的权利。

处理事实的目的是为每个系统创建一组汇总的数据,称为指纹。指纹 是标识唯一系统及其特征的一组事实,包括架构、操作系统、安装在该系统及其版本的不同产品、在该系统上使用的权利等。

运行扫描作业时生成指纹数据,但数据仅用于创建一种报告类型。当您请求详情报告时,您会收到该扫描的原始事实,而无需任何指纹。当您请求部署报告时,您会收到包括去除重复数据、合并和后处理过程的结果的指纹数据。这些进程包括识别从原始事实识别已安装的产品和版本,查找已使用的权利、从不同源查找和合并重复产品实例,以及查找在非默认位置安装的产品以及其他步骤。

5.1.2.2. 系统去除重复数据和系统合并

在扫描期间,可在多个源中找到单个系统。例如,vCenter 服务器上的虚拟机也可以运行由 Satellite 管理的 Red Hat Enterprise Linux 操作系统安装。如果您构造了一个包含每种源、vcenter、satellite 和 network 的扫描,则单个系统会在扫描期间由所有三个源报告。

注意

目前,您无法将 OpenShift 或 Ansible 源与扫描中的任何其他源组合,因此重复数据删除和合并过程不适用于 OpenShift 或 Ansible 扫描。

要解决这个问题并构建准确的指纹,Discovery 会将未处理的系统事实从扫描发送到指纹引擎。指纹引擎通过使用重复数据删除和合并过程,为在多个源中找到的系统匹配和合并数据。

系统去除重复数据进程使用有关系统的特定事实来识别重复系统。这个过程分为几个阶段,使用这些事实在连续更广泛的数据中合并重复的系统:

  • 来自网络源的所有系统都合并到一个网络系统中。如果系统对于 subscription_manager_idbios_uuid 事实的值相同,则系统被视为重复。
  • vcenter 源中的所有系统组合为一个 vcenter 系统集。如果系统对 vm_uuid 事实的值具有相同的值,则系统被视为重复。
  • satellite 源中的所有系统合并到一个 satellite 系统集合中。如果系统对于 subscription_manager_id 事实的值相同,则系统被视为重复。
  • 网络系统设置与 satellite 系统集合并,以组成单个网络 Satellite 系统集。如果系统对于 subscription_manager 事实的值或者 mac_addresses 事实中的 MAC 地址值相同,则系统被视为重复。
  • network-satellite 系统集与 vcenter 系统集合并,以形成完整的系统集。如果系统在 mac_addresses 事实中有匹配的 MAC 地址值,或者 vm_uuid 事实的 vcenter 值与 bios_uuid 事实的网络值匹配,则系统被视为重复。
5.1.2.2.1. 系统合并

在去除重复数据过程后,下一步是执行这两个系统的合并。合并的系统来自每个源的系统事实合并。当两个系统中出现的事实合并时,合并过程使用以下优先级来合并事实(从最高到最低):

  1. 网络源事实
  2. Satellite 源事实
  3. vCenter 源事实

系统指纹包含一个 元数据 字典,用于捕获该系统的每个事实的原始源。

5.1.2.3. 系统后处理

完成去除重复数据和合并后,有一个创建派生系统事实的后处理阶段。派生的系统事实 是从对多个系统事实的评估生成的。大多数派生的系统事实都与产品标识数据相关,如存在特定产品及其版本。

以下示例演示了如何创建派生的系统事实 system_creation_date

system_creation_date 事实是一个派生的系统事实,包含真实系统创建时间。此事实的值由以下事实评估确定:每个事实的值都会按照以下优先级顺序进行检查,其优先级顺序由与真实系统创建时间匹配的准确性决定。最高非空值用于决定 system_creation_date 事实的值。

  1. date_machine_id
  2. registration_time
  3. date_anaconda_log
  4. date_filesystem_create
  5. date_yum_history

5.1.2.4. 报告创建

在处理报告数据后,报告创建过程会使用两种不同的格式构建两个报告,即 JavaScript Object Notation (JSON)和以逗号分隔的变量(CSV)。每个格式 的详情 报告包含没有处理的原始事实,并且每个格式的 部署 报告包含原始事实通过指纹、重复数据删除、合并和后处理过程后的输出。

报告格式旨在供红帽订阅教育和认知计划(SEAP)团队在客户互动和其他红帽内部过程中使用。

注意

虽然您可以为您自己的内部进程查看和使用这些报告的输出,但 Discovery 文档不提供任何信息以帮助您解释报告结果。另外,虽然红帽支持可以提供一些与安装和使用 Discovery 相关的基本帮助,但支持团队不提供任何帮助以帮助您了解报告。报告及其格式旨在供红帽订阅教育和认知计划(SEAP)团队在客户互动期间使用,并为其他红帽内部流程提供数据,如向各种混合云控制台服务提供数据。

5.1.2.5. 指纹示例

指纹由一组有关单一系统的事实组成,除了有关该系统上产品、授权、源和元数据的事实。以下示例显示了指纹数据。单一系统的指纹(即使其中安装很少的红帽产品)可以是很多行。因此,本例中只使用一个部分指纹。

Example

{
    "os_release": "Red Hat Enterprise Linux Atomic Host 7.4",
    "cpu_count": 4,
    "products": [
        {
            "name": "JBoss EAP",
            "version": null,
            "presence": "absent",
            "metadata": {
                "source_id": 5,
                "source_name": "S62Source",
                "source_type": "satellite",
                "raw_fact_key": null
            }
        }
    ],
    "entitlements": [
        {
            "name": "Satellite Tools 6.3",
            "entitlement_id": 54,
            "metadata": {
                "source_id": 5,
                "source_name": "S62Source",
                "source_type": "satellite",
                "raw_fact_key": "entitlements"
            }
        }
    ],
    "metadata": {
        "os_release": {
            "source_id": 5,
            "source_name": "S62Source",
            "source_type": "satellite",
            "raw_fact_key": "os_release"
        },
        "cpu_count": {
            "source_id": 4,
            "source_name": "NetworkSource",
            "source_type": "network",
            "raw_fact_key": "os_release"
        }
    },
    "sources": [
        {
            "id": 4,
            "source_type": "network",
            "name": "NetworkSource"
        },
        {
            "id": 5,
            "source_type": "satellite",
            "name": "S62Source"
        }
    ]
}

指纹的前几行显示系统的事实,包括有关操作系统和 CPU 的事实。在本例中,os_release 事实描述了已安装的操作系统和发行版本,作为 Red Hat Enterprise Linux Atomic Host 7.4

接下来,指纹会在 products 部分中列出安装的产品。产品具有名称、版本、存在和元数据字段。在 JBoss EAP 部分中,presence 字段显示 absent 作为值,因此本例中的系统没有安装 Red Hat JBoss Enterprise Application Platform。

指纹还列出该系统在 entitlements 部分中消耗的权利。列表中的每个权利都有一个名称、ID 和元数据,用于描述该事实的原始源。在示例指纹中,系统有 Satellite Tools 6.3 权利。

除了 productsentitlements 部分中的元数据字段外,指纹还包含用于系统事实 元数据 的元数据部分。对于每个系统事实,指纹的 metadata 部分中有一个对应的条目,用于标识该系统事实的原始源。在示例中,在扫描 satellite 源的过程中,在 Satellite 服务器中找到 os_release 事实。

最后,指纹会在 sources 部分中列出包含此系统的 。系统可以包含在多个源中。例如,对于包含网络源和 satellite 源的扫描,可在扫描的两个部分中找到单一系统。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.