来自 Azure Workbooks (Application Insights) 中同一数据源的多个同时可视化
Multiple simultaneous visualizations from same data source in Azure Workbooks (Application Insights)
我在使用 Azure 工作簿(用于 Application Insights)时遇到问题,试图让相同的数据同时显示在不同的可视化效果中 。
我可能有一个简单的查询:
requests
| where timestamp > ago(24h)
| summarize count() by client_CountryOrRegion
| top 10 by count_
| render piechart
但现在我还想渲染与 table
相同的数据,而没有 copy/pasting 和 'algorithm'(这在现实中显然比这个示例更复杂)。所以我想有效地做到这一点:
let data = requests
| where timestamp > ago(24h)
| summarize count() by client_CountryOrRegion
| top 10 by count_ ;
data | render table;
data | render piechart;
但这只是呈现第一个可视化效果。
我已经尝试了所有我能想到的:
只是把第二个可视化放在一个新的步骤中,但是我找不到引用这个data
参数的方法。
创建一个从查询中获取的多值参数,然后尝试在后续步骤中使用它。那没有用。
{数据} |渲染饼图
创建一个全局参数并尝试从一步设置它。似乎不是一种从查询步骤显式设置参数值的方法。
试图在高级选项卡下命名该步骤,但尽管有这条消息,但我找不到任何有关如何在以后的步骤中引用该步骤的示例。
一定有办法不必维护查询的两个副本,但我找不到任何东西。
工作簿步骤不理解 fork
运算符之类的东西,它可以 return 许多 table 数据,它只知道如何可视化第一个 table .
获得所需内容的最简单方法是使用 [merge
数据源] 复制查询结果 (https://github.com/microsoft/Application-Insights-Workbooks/blob/master/Documentation/DataSources/DataSources.md#merge-data-from-different-sources)
创建您的查询,return输入您想要的所有列,以您想要的方式可视化。
给它一个有用的名字,就像你在屏幕截图中显示的那样。
添加另一个查询步骤,这次在数据源下拉列表中,选择merge
在合并步骤的设置中,使用“添加合并”选项,并在出现的弹出窗口中选择合并类型“复制 Table”,然后选择在中命名的步骤步骤 1
合并步骤还允许您添加计算列,如果您需要对其他 2 列进行数学运算,例如计算 percentages/rates 等,请使用“添加新项”合并步骤工具栏中的项目。您还可以重命名、重新排序、删除数据列
然后 运行 合并步骤并选择另一个可视化
合并步骤还可以在不同的源之间执行其他类型的 merges/unions/joins。因此您可以将来自 Azure Resource Graph 的数据(如 properties/tags)与来自指标的数据以及来自日志的数据合并到一个网格中。并且合并步骤可以在一个合并步骤中完成所有这些工作,您不需要添加多个合并步骤(x = a union b,然后是 y = x union c 的另一步骤,您可以将其作为多个 joins/unions 在一个合并步骤中。),
如果您使用这种方式合并到 join/union 个数据源,您可以隐藏原始来源,并且合并仍然有效。然而,合并还不能依赖于隐藏的 merges,因此我建议人们使用 one 合并步骤来执行多个连接,而不是多个合并步骤,每个合并步骤做一个。
我在使用 Azure 工作簿(用于 Application Insights)时遇到问题,试图让相同的数据同时显示在不同的可视化效果中 。
我可能有一个简单的查询:
requests
| where timestamp > ago(24h)
| summarize count() by client_CountryOrRegion
| top 10 by count_
| render piechart
但现在我还想渲染与 table
相同的数据,而没有 copy/pasting 和 'algorithm'(这在现实中显然比这个示例更复杂)。所以我想有效地做到这一点:
let data = requests
| where timestamp > ago(24h)
| summarize count() by client_CountryOrRegion
| top 10 by count_ ;
data | render table;
data | render piechart;
但这只是呈现第一个可视化效果。
我已经尝试了所有我能想到的:
只是把第二个可视化放在一个新的步骤中,但是我找不到引用这个
data
参数的方法。创建一个从查询中获取的多值参数,然后尝试在后续步骤中使用它。那没有用。
{数据} |渲染饼图
创建一个全局参数并尝试从一步设置它。似乎不是一种从查询步骤显式设置参数值的方法。
试图在高级选项卡下命名该步骤,但尽管有这条消息,但我找不到任何有关如何在以后的步骤中引用该步骤的示例。
一定有办法不必维护查询的两个副本,但我找不到任何东西。
工作簿步骤不理解 fork
运算符之类的东西,它可以 return 许多 table 数据,它只知道如何可视化第一个 table .
获得所需内容的最简单方法是使用 [merge
数据源] 复制查询结果 (https://github.com/microsoft/Application-Insights-Workbooks/blob/master/Documentation/DataSources/DataSources.md#merge-data-from-different-sources)
创建您的查询,return输入您想要的所有列,以您想要的方式可视化。 给它一个有用的名字,就像你在屏幕截图中显示的那样。
添加另一个查询步骤,这次在数据源下拉列表中,选择
merge
在合并步骤的设置中,使用“添加合并”选项,并在出现的弹出窗口中选择合并类型“复制 Table”,然后选择在中命名的步骤步骤 1
合并步骤还允许您添加计算列,如果您需要对其他 2 列进行数学运算,例如计算 percentages/rates 等,请使用“添加新项”合并步骤工具栏中的项目。您还可以重命名、重新排序、删除数据列
然后 运行 合并步骤并选择另一个可视化
合并步骤还可以在不同的源之间执行其他类型的 merges/unions/joins。因此您可以将来自 Azure Resource Graph 的数据(如 properties/tags)与来自指标的数据以及来自日志的数据合并到一个网格中。并且合并步骤可以在一个合并步骤中完成所有这些工作,您不需要添加多个合并步骤(x = a union b,然后是 y = x union c 的另一步骤,您可以将其作为多个 joins/unions 在一个合并步骤中。),
如果您使用这种方式合并到 join/union 个数据源,您可以隐藏原始来源,并且合并仍然有效。然而,合并还不能依赖于隐藏的 merges,因此我建议人们使用 one 合并步骤来执行多个连接,而不是多个合并步骤,每个合并步骤做一个。