桌面流操作日志配置

此页面提供桌面流日志的配置指导,位于 Power Platform 管理中心的环境功能部分下。

重要提示

  • 此功能仅适用于从云端流启动的桌面流,尚不可用于从 Power Automate 桌面进行的本地有人参与运行。

运行操作日志的激活状态设置定义了何时捕获桌面流运行操作日志,甚至允许您将其完全关闭。

屏幕截图和环境级设置允许您配置何时捕获桌面流日志。

激活状态 详情
已启用(默认) 该选项是现有环境和新环境的默认选项,在新环境中,将照常捕获日志。
运行失败时 此选项仅在出现运行时错误时捕获桌面流操作日志。 这意味着日志不会在每次运行时都可用,只有在发生错误时才可用。 但是,如果发生错误,该特定运行的所有日志都将可用,包括成功和失败的操作。
Disabled 此选项有效地完全禁用桌面流运行操作日志。

注意

更改这些设置会对运行故障排除和审核等功能产生重大影响。 在继续之前,请考虑更改这些设置的影响。

先决条件

  • 配置日志设置的高级 Power Automate 许可证和管理权限
  • Power Automate URL 和 IP 地址配置

配置桌面流操作日志版本

操作日志版本允许您选择 V1、V2 或两者。

屏幕截图和环境级设置允许您配置桌面流日志 V2。

日志版本 解释
V1 - 已存储在 FlowSession 实体的 AdditionalContext 字段中 本选项为默认设置。 日志存储在流会话表的 AdditionalContext 字段中,该字段是以 blob 形式存储在 Microsoft Dataverse 中的文件属性。 日志 V1 占用了 Dataverse 文件容量
V2 - 已存储在 FlowLogs 实体中 此选项允许您将日志存储在流日志表中,该表存储在弹性表中。 日志 V2 占用了 Dataverse 数据库容量
两个 此设置允许日志存储在流会话表和流日志表的传统 AdditionalContext 字段中。 此功能会消耗 Dataverse 文件和数据库容量。 此设置是为了调试或测试目的,因为它会消耗 Dataverse 数据库和文件容量

FlowLogs 实体生存时间(分钟)值决定了操作日志应在流日志弹性表中保留多长时间。 Dataverse 自动删除早于指定时间范围的记录。 为了方便起见,这里有一些示例值。

天数 分钟
一天 1,440 分钟
三天 4,320 分钟
七天 10,080 分钟
14 天 20,160 分钟
28 天 40,320 分钟
60 天 86,400 分钟
90 天 129,600 分钟
180 天 259,200 分钟
365 天 525,600 分钟
永久 小于或等于 0(零)分钟

备注

在启用日志 V2 之前,请确保您有足够的 Dataverse 数据库容量来支持数据保留设置,并与您的容量规划、权限保持一致,并根据需要进行调整。 有关一些大小估算示例,请参阅下面的日志 V2 的 Dataverse 容量需求计算示例

桌面流日志 V1 和 V2 的主要区别

下表描述了桌面流日志 V1 和 V2 之间的差异:

特性 日志 V1 日志 V2 详情
自动数据保留 不可用 有空 V2 使用由 Azure Cosmos DB 支持的弹性表,并带有自动数据保留的内置生存时间功能。
支持大日志大小 大约多达 50,000 至 80,000 个操作日志(最多) 大约是 V1 操作日志数量的两倍(最初) 理论上讲,V2 未来每次运行可以扩展到千兆字节的操作日志,而 V1 只能扩展到下表中指定的容量。
支持高级报告和治理 不可用 有空 在 V1 中,AdditionalContext 属性是一种文件类型,以 blob 形式存储在 Dataverse 中,因此很难解析报告和治理控制。 在 V2 中,日志更容易访问。
支持 Azure Synapse Link for Dataverse 集成 不可用 有空 在 V1 中,AdditionalContext 属性是一种文件类型,以 blob 形式存储在 Dataverse 中,不支持同步到 Azure Synapse。
支持 Dataverse 审核 不可用 有空 在 V1 中,AdditionalContext 属性是一种文件类型,以 blob 形式存储在 Dataverse 中,不支持 Dataverse 审核。
支持 Dataverse 长期保留 不可用 已计划 在 V1 中,AdditionalContext 属性是一种文件类型,以 blob 形式存储在 Dataverse 中,不支持 Dataverse 长期保留。
基于 Dataverse 基于角色的访问控制 (RBAC) 有空 有空 两个版本都使用 Dataverse RBAC,从其父流会话记录继承操作日志权限。

日志 V2 提供了前一版本 V1 的重大增强。 V2 使用弹性表功能,该功能非常适合处理大量数据,如操作日志场景,并且具有内置的数据保留 (TTL)。 非常适合需要访问大量数据以进行报告、治理和与自动数据保留控制集成的组织。

日志 V2 的 Dataverse 容量需求计算

下表显示了使用日志 V2 时每个桌面流运行的 Dataverse 数据库存储消耗估计示例。 它概述了不同数量的操作的大致存储需求,假设每个操作平均需要 3 KB 的存储空间。

操作次数 每个操作的存储需求 (KB) 总存储消耗 (MB)
1,000 3 2.93
10,000 3 29.3
30,000 3 87.9
60,000 3 175.8
100,000 3 293
160,000 3 480

重要提示

上表中显示的数字只是估计值,实际存储消耗可能会有很大差异。 确切的存储需求将取决于每个操作日志的具体细节和复杂性。 因此,这些数字应作为了解潜在存储需求和相应规划存储需求的粗略指南。

查询日志 V2 数据

访问桌面流操作日志数据可以通过对 Dataverse 后端进行 API 调用来实现,既可以使用传统的 API 调用语法,也可以使用新的 ExecuteCosmosSqlQuery 方法。 该方法允许您对 Dataverse 执行 SQL 查询,从而实现数据的检索和过滤。

日志 V2 的数据模型基于流会话和流日志表之间的父子关系。 每个记录都从其父流会话记录继承权限。 为了查询特定桌面流运行的操作日志,您可以使用以下查询语法。

传统的 Dataverse API 调用语法

以下 API 调用通过 ID (9d51aa1f-315e-43ab-894f-bc445dfb049b) 检索特定的流会话,然后使用 flowsession_flowlog_parentobjectid 关系访问相关联的操作日志。

[Organization URI]/api/data/v9.0/flowsessions(9d51aa1f-315e-43ab-894f-bc445dfb049b)/flowsession_flowlog_parentobjectid  

使用 FlowLogs 表的新 ExecuteCosmosSqlQuery API 调用语法

    [Organization URI]/api/data/v9.2/ExecuteCosmosSqlQuery(
    QueryText=@p1,EntityLogicalName=@p2,QueryParameters=@p3,PageSize=@p4)?
    @p1: 'SELECT c.props.flowlogid as flowlogid, c.props.createdon as createdon, c.props.data as data, c.props.level as level, c.props.type as type, c.ttl as ttlinseconds, c.props.cloudflowid as cloudflowid, c.props.cloudflowrunid as cloudflowrunid, c.props.desktopflowid as desktopflowid, c.props.flowmachineid as flowmachineid, c.props.flowmachinegroupid as flowmachinegroupid, c.props.flowsessionid as flowsessionid, c.props.workqueueid as workqueueid, c.props.workqueueitemid as workqueueitemid FROM c WHERE c.props.type IN (100000001) ORDER BY c.props.data.startTime DESC'
    @p2: 'flowlog'
    @p3: {"Keys":["@referencingParentId","@referencingParentLogicalName"],"Values":[{"Type":"System.Guid","Value":"40590757-a9c0-4f4c-abfc-e2f389049d90"},{"Type":"System.String","Value":"flowsession"}]}
    @p4: 50

了解有关查询弹性表中的 JSON 列的更多信息。

将调用分成几个部分

  • 基本URL (https://[my org].api.crm[my region].dynamics.com/api/data/v9.2/) 是 Dataverse Web API 的端点。
  • ExecuteCosmosSqlQuery 是正在调用的方法。 该方法允许对 Dataverse 执行 SQL 查询。
  • ExecuteCosmosSqlQuery 方法的参数在方法名称后面的括号中提供:
    • QueryText=@p1:要执行的 SQL 查询。 在这种情况下,查询从类型为 100000001(桌面流操作日志类型)的表中选择各种属性,并按 startTime 属性以降序对结果进行排序。
    • EntityLogicalName=@p2:此部分是存储操作日志的表 (flowlog) 的逻辑名称。
    • QueryParameters=@p3:此部分是一个为查询指定参数的 JSON 对象。 在前面的示例中,它指定了一个键-值对,其中键为 @referencingParentId@referencingParentLogicalName,值为 flowsessionid (GUID),表的类型为 flowsession
    • PageSize=p4:此部分为查询页面大小。

已知限制

  • 日志 V2 仅适用于通过桌面流连接器操作从云端流启动的桌面流运行。
  • 流日志表当前不支持批量删除作业。
  • 在 maker portal 网站 (make.powerapps.com) 的表格部分还无法查看流日志记录。
  • 更改操作日志版本不会将以前的桌面流操作日志迁移到新的日志存储类型。