本文介绍如何创建新工作簿以及如何将元素添加到 Azure 工作簿。
此视频演示如何创建工作簿。
新建 Azure 工作簿
新建 Azure 工作簿:
注意
若要向工作簿添加新元素,请确保处于 “编辑 ”模式,方法是在工具栏中选择 “编辑 ”。
添加文本
工作簿允许作者在其工作簿中包含文本块。 文本可以是数据的人工分析结果、帮助用户解释数据的信息、节标题等等。
文本是通过 markdown 控件添加的,作者可以向其中添加内容。 作者可以使用 markdown 的完整格式设置功能。 这些功能包括不同的标题和字体样式、超链接、表格等。Markdown 允许作者创建丰富的 Word 或门户式报表或分析叙述。 文本可以包含 Markdown 文本中的参数值,并且这些参数引用会随着参数的变化而更新。
向 Azure 工作簿添加文本:
通过执行以下步骤之一添加文本步骤:
- 选择“添加”,然后在现有元素下方或工作簿底部选择“添加文本”。
- 选择工作簿中某个元素旁边的“编辑”按钮右侧的省略号 (...),然后依次选择“添加”和“添加文本”。
在编辑器字段中输入 Markdown 文本。
使用“文本样式”选项可在纯 markdown 与使用 Azure 门户的标准 info/warning/success/error 样式包装的 markdown 之间切换。
提示
使用此 Markdown 速查表查看不同的格式设置选项。
使用“预览”选项卡可查看内容的外观。 预览将在可滚动区域内显示内容以限制其大小,但在运行时展示时,Markdown 内容将会自动扩展以适应所需的空间,并且不会出现滚动条。
选择“完成编辑”。
文本样式
有以下文本样式可用:
样式 | 说明 |
---|---|
平原 | 未应用任何格式 |
info | 门户的“信息”样式,具有 ℹ 或类似图标以及蓝色背景 |
错误 | 门户的“error”样式,具有 ❌ 或类似图标,红色背景 |
success | 门户的“success”样式,具有 ✔ 或类似图标,绿色背景 |
upsell | 门户的“upsell”样式,具有 🚀 或类似图标,紫色背景 |
警告 | 门户的“警告”样式,带有⚠ 或类似图标,并有蓝色背景 |
还可选择文本参数作为样式源。 参数值必须是上述文本值之一。 缺少值或任何无法识别的值被视为 plain
样式。
文本样式示例
添加查询
Azure 工作簿支持查询任何支持的工作簿数据源。
例如,可以查询 Azure 资源运行状况,以帮助查看影响资源的任何服务问题。 还可以查询 Azure Monitor 指标,这些指标是定期收集的数字数据。 Azure Monitor 指标提供特定时间系统某个方面的相关信息。
向 Azure 工作簿添加查询:
通过执行以下任一步骤添加查询:
- 在现有元素下方或工作簿底部选择“添加”,然后选择“添加查询”。
- 选择工作簿中某个元素旁边的“编辑”按钮右侧的省略号 (...),然后依次选择“添加”和“添加查询”。
选择用于查询的数据源。 其他字段是根据所选源确定的。
根据所选的数据源选择所需的任何其他值。
注意
选择 资源类型时,请考虑用户权限。 例如,如果对资源具有 读取 权限,但对 Log Analytics 工作区没有读取权限,则资源要向其发送遥测数据,则必须选择 资源类型的 资源才能查看数据。
在查询部分输入查询,或通过选择“示例”从示例查询列表中选择,然后根据喜好编辑查询。
选择“运行查询”。
确定在工作簿中有所需查询时,选择“完成编辑”。
查询日志的最佳做法
用于聚合要可视化的数据的预定义摘要规则。 与其对大型数据集或较长时间范围执行查询,不如在数据到达您的 Log Analytics 工作区时,通过创建摘要规则,聚合来自一个或多个表所需的数据。 直接从汇总数据的自定义表中可视化聚合数据,而不是从一个或多个表查询原始数据,从而提高查询性能并减少查询错误和超时。
使用尽可能小的时间范围。 时间范围越长,查询越慢,返回的数据越多。 对于较长的时间范围,查询可能必须转到较慢的“冷”存储,这使得查询速度变得更慢。 默认采用最短的有效时间范围,但用户可以选择更长的时间范围(速度可能较慢)。
在下拉列表中使用“全部”这个特殊值。 可以在下拉参数设置中添加一个名为“All”的特殊项。 可以使用特殊值。 正确使用“All”特殊项可以极大地简化查询。
防止缺失列。 如果使用的是自定义表或自定义列,请设计模板,以便可以在工作区中缺少该列时起作用。 请参阅 column_ifexists 函数。
防止缺失表。 如果模板是作为解决方案的一部分安装的,或者保证存在表,则不需要检查缺少的列。 如果您要创建可在任何资源或工作区上可见的泛型模板,最好针对不存在的表进行保护。
Log Analytics 查询语言没有 table_ifexists 函数,例如用于测试列的函数。 但是,可通过一些方法来检查表是否存在。 例如,可以使用模糊联合。 执行联合时,可以使用 isfuzzy=true 设置让联合继续工作(如果某些表不存在)。 可以在工作簿中添加一个参数查询,用于检查表是否存在,如果不存在,则隐藏某些内容。 不可见的项不会运行,因此可以设计模板,以便工作簿中的其他查询在不存在表的情况下失败,直到测试验证表存在后才运行。
例如:
let MissingTable = view () { print isMissing=1 }; union isfuzzy=true MissingTable, (AzureDiagnostics | getschema | summarize c=count() | project isMissing=iff(c > 0, 0, 1)) | top 1 by isMissing asc
如果工作区中不存在 AzureDiagnostics 表,此查询将返回 1。 如果实际表不存在,则返回 MissingTable 的假行。 如果 AzureDiagnostics 表的架构中存在任何列,则返回值为 0。 可以将此参数用作参数值,并有条件地隐藏查询步骤,除非参数值为 0。 还可使用条件可见性显示文本来指出当前工作区没有缺失的表,并将用户转到介绍如何载入的文档。
你可能只是希望结果没有行,而不是隐藏步骤。 可以将 MissingTable 更改为有适当匹配架构的空数据表:
let MissingTable = datatable(ResourceId: string) []; union isfuzzy=true MissingTable, (AzureDiagnostics | extend ResourceId = column_ifexists('ResourceId', '')
在这种情况下,如果 AzureDiagnostics 表缺失,或者表中缺少 ResourceId 列,查询将不返回任何行。
教程 - 工作簿中以资源为中心的日志查询
此视频演示如何在 Azure 工作簿中使用资源级日志查询。 它还提供有关如何启用高级方案并提高性能的提示和技巧。
动态资源类型参数
使用动态范围进行更高效的查询。 下面的代码片段使用这种启发式方法:
- 单个资源:如果所选资源的计数小于或等于 5
- 资源组:如果资源数超过 5 但资源所属的资源组数小于或等于 3
- 订阅:除上述以外的情况
Resources
| take 1
| project x = dynamic(["microsoft.compute/virtualmachines", "microsoft.compute/virtualmachinescalesets", "microsoft.resources/resourcegroups", "microsoft.resources/subscriptions"])
| mvexpand x to typeof(string)
| extend jkey = 1
| join kind = inner (Resources
| where id in~ ({VirtualMachines})
| summarize Subs = dcount(subscriptionId), resourceGroups = dcount(resourceGroup), resourceCount = count()
| extend jkey = 1) on jkey
| project x, label = 'x',
selected = case(
x in ('microsoft.compute/virtualmachinescalesets', 'microsoft.compute/virtualmachines') and resourceCount <= 5, true,
x == 'microsoft.resources/resourcegroups' and resourceGroups <= 3 and resourceCount > 5, true,
x == 'microsoft.resources/subscriptions' and resourceGroups > 3 and resourceCount > 5, true,
false)
用于查询多个资源类型的静态资源范围
[
{ "value":"microsoft.compute/virtualmachines", "label":"Virtual machine", "selected":true },
{ "value":"microsoft.compute/virtualmachinescaleset", "label":"Virtual machine scale set", "selected":true }
]
按资源类型分组的资源参数
Resources
| where type =~ 'microsoft.compute/virtualmachines' or type =~ 'microsoft.compute/virtualmachinescalesets'
| where resourceGroup in~({ResourceGroups})
| project value = id, label = id, selected = false,
group = iff(type =~ 'microsoft.compute/virtualmachines', 'Virtual machines', 'Virtual machine scale sets')
添加参数
可以使用参数收集用户输入,并在工作簿的其他部分引用这些输入。 使用参数限定结果集范围或设置正确的可视化。 参数可帮助生成交互式报表和体验。 有关如何使用参数的详细信息,请参阅工作簿参数。
使用工作簿可以控制如何向使用者呈现参数控件 - 文本框与下拉列表、单选与多选、文本中的值、JSON、KQL 或 Azure Resource Graph 等。
观看此视频,了解如何在 Azure 工作簿中使用参数和日志数据。
将参数添加到 Azure 工作簿:
通过执行以下任一步骤添加参数:
- 在现有元素下方或工作簿底部选择“添加”,然后选择“添加参数”。
- 选择工作簿中某个元素旁边的“编辑”按钮右侧的省略号 (...),然后依次选择“添加”和“添加参数”。
在弹出的“新建参数”窗格中,输入以下字段的值:
- 参数名称:参数名称不能包含空格或特殊字符
- 显示名称:显示名称可以包括空格、特殊字符、表情符号等
- 参数类型:
- 必需:
选择“完成编辑”。
添加指标图表
大多数 Azure 资源会发出有关状态和运行状况的指标数据,例如 CPU 利用率、存储可用性、数据库事务计数、失败的应用请求等。使用工作簿,可以将指标数据可视化为时序图表。
以下示例显示了过去一小时内存储帐户中的交易次数。 这使存储所有者可以查看事务趋势并查找行为中的异常。
向 Azure 工作簿添加指标图表:
通过执行以下步骤之一来添加指标图表:
- 选择添加,然后在现有元素下方或工作簿底部选择添加指标。
- 选择工作簿中某个元素旁边的“编辑”按钮右侧的省略号 (...),然后依次选择“添加”和“添加指标”。
选择资源类型、目标资源、指标命名空间和名称,以及要使用的聚合。
根据需要设置其他参数,例如时间范围、拆分依据、可视化效果、大小和调色板。
选择“完成编辑”。
这是编辑模式下的指标图表:
指标图表参数
参数 | 说明 | 示例 |
---|---|---|
资源类型 | 目标资源类型 | “存储”或“虚拟机”。 |
资源 | 用于获取指标值的一组资源 | MyStorage1 |
命名空间 | 包含该指标的命名空间 | 存储 > Blob |
指标 | 要可视化的指标 | 存储 > Blob > 事务 |
聚合 | 要应用到指标的聚合函数 | 求和、计数、平均值等 |
时间范围 | 用于查看指标的时间范围 | 过去 1 小时、过去 24 小时,等等 |
可视化 | 要使用的可视化效果 | 面积图、条形图、折线图、散点图、网格 |
拆分依据 | (可选)按维度拆分指标 | 按地理类型列出事务 |
大小 | 控件的纵向尺寸 | 小、中或大 |
调色板 | 要在图表中使用的调色板。 使用 Split by 参数时将被忽略 |
蓝色、绿色、红色,等等 |
指标图表示例
添加链接
可以使用链接创建指向其他视图、工作簿、工作簿中的其他项的链接,或者在工作簿中创建选项卡视图。 链接样式可以为超链接、按钮和选项卡。
观看此视频,了解如何在 Azure 工作簿中使用选项卡、组和上下文链接:
链接样式
可以将样式应用于链接元素本身,也可以应用于单个链接。
链接元素样式
样式 | 示例 | 说明 |
---|---|---|
项目符号列表 | ![]() |
默认情况下,链接以项目符号列表的形式显示,每行一个。 “链接前的文本”和“链接后的文本”字段可用于在链接项之前或之后添加更多文本。 |
列表 | ![]() |
链接以列表形式显示,无项目符号。 |
段落 | ![]() |
链接显示为一个段落的形式,像文本段落一样排列。 |
导航 | ![]() |
链接显示为链接,每个链接之间都有垂直分隔线或管道(|)。 |
选项卡 | ![]() |
链接显示为选项卡。 每个链接都显示为选项卡,没有适用于单个链接的链接样式选项。 有关如何配置选项卡,请参阅下面的选项卡部分。 |
工具栏 | ![]() |
链接将显示带有图标和文本的 Azure 门户样式的工具栏。 每个链接都显示为工具栏按钮。 有关如何配置工具栏,请参阅下面的工具栏部分。 |
链接样式
样式 | 说明 |
---|---|
链接 | 默认情况下,链接显示为超链接。 URL 链接只能是链接样式。 |
按钮(主) | 该链接在门户中显示为“主要”按钮,通常是蓝色 |
按钮(辅助) | 该链接在门户中显示为“次要”按钮,通常是“透明”颜色、浅色主题中的白色按钮和深色主题中的深灰色按钮。 |
使用按钮时,如果在“按钮文本”、“工具提示文本”或“值”字段中使用了所需参数,但所需参数未设置,则会禁用该按钮。 例如,当在另一个参数或控件中未选择任何值时,可以使用此功能禁用按钮。
链接操作
链接可以使用链接操作中所有可用的链接操作,并且还有两个可用操作:
行动 | 说明 |
---|---|
设置参数值 | 当工作簿用户选择链接、按钮或选项卡时,可以将参数设置为值。选项卡通常配置为将参数设置为值,该值根据该值隐藏和显示工作簿的其他部分。 |
滚动到某个步骤 | 当工作簿用户选择链接时,工作簿将移动焦点并滚动以使另一个步骤可见。 此操作可用于创建“目录”或“返回顶部”样式体验。 |
选项卡
大多数情况下,选项卡链接与“设置参数值”操作结合使用。
创建选项卡
若要向 Azure 工作簿添加选项卡,请执行以下作:
选择“ 添加>链接/选项卡”。
将 样式 设置为 选项卡。
为每个 选项卡输入一个选项卡名称 。
在动作列中,为每个选项卡选择设置参数值。
在 “值 ”列中,为每个选项卡 设置相同的参数名称 (例如
selectedTab
)。在 “设置” 列中, 为每个选项卡输入不同的值 。
以下示例配置为创建两个选项卡,其中选择任一选项卡会将 selectedTab 参数设置为其他值。
注意
该示例仅显示正在编辑的第三个选项卡,以显示参数名称和参数值占位符。
附带链接的示例 Azure 工作簿中提供了附带上述选项卡的示例工作簿。
向选项卡添加内容
编辑 要添加到特定选项卡的工作簿内容。
在 “高级设置”下,选择“ 使此项有条件地可见”。
选择“添加条件”,输入参数名称(例如,
selectedTab
),将“比较”设置为等于,并将“参数”值设置为分配给选项卡的值(例如)。1
默认选择第一个选项卡,最初将 selectedTab 设置为
1
,并使该步骤可见。 选择第二个选项卡会将参数的值更改为2
,并显示不同的内容。
标签页限制
- 选项卡中不支持 URL 链接。 选项卡中的 URL 链接显示为禁用的选项卡。
- 制表符中不支持项目样式。 项显示为选项卡,并且仅显示选项卡名称(链接文本)字段。 在编辑模式下,将隐藏选项卡样式中未使用的字段。
- 默认选择第一个选项卡,这将调用该选项卡指定的任何操作。 如果第一个选项卡的操作会打开另一个视图,则一旦创建选项卡,就会显示一个视图。
- 可使用选项卡打开其他视图,但应谨慎使用此功能,因为大多数用户不希望通过选择选项卡来进行导航。如果其他选项卡将参数设置为特定值,则打开视图的选项卡不会更改该值,因此工作簿内容的其余部分将继续显示上一选项卡的视图或数据。
工具栏
使用工具栏样式使链接显示为工具栏样式。 在工具栏样式中,作者必须填写以下内容:
- 按钮文本,即显示在工具栏上的文本。 可以在此字段中使用参数。
- 图标,即显示在工具栏中的图标。
- 工具提示文本,即显示在工具栏按钮的工具提示文本中的文本。 可以在此字段中使用参数。
如果在按钮文本、工具提示文本或值字段中使用任何必需参数,并且未设置所需的参数,则禁用工具栏按钮。 例如,当在另一个参数/控件中未选择任何值时,这可以用来禁用工具栏按钮。
附带链接的示例 Azure 工作簿中提供了含工具栏、全局参数和 ARM 操作的示例工作簿。
添加组
使用工作簿中的组项,可对工作簿中的一组步骤进行逻辑分组。
工作簿中的组能够在多个方面起作用:
- 布局:如果你想要对项进行纵向组织,可为全部堆积在一起的项创建一个组,并将该组的样式设置为百分比宽度,而不是设置各个项的百分比宽度。
- 可见性:如果你想要将多个项一起隐藏或显示,可以设置整个项组的可见性,而不是设置每个项的可见性设置。 这对于使用选项卡的模板非常有用,因为可以使用组作为选项卡的内容,并可以根据所选选项卡设置的参数来隐藏/显示整个组。
- 性能:如果你有一个很大的模板,其中包含许多部分或选项卡,则可以将每个部分转换为其自身的子模板,并使用组来加载顶级模板中的所有子模板。 在用户将这些组设为可见之前,子模板的内容不会加载或运行。 详细了解如何将一个大模板拆分为许多模板。
若要将组添加到工作簿,请执行以下操作:
通过执行以下任一步骤添加参数:
- 在现有元素下方或工作簿底部选择“添加”,然后选择“添加组”。
- 选择工作簿中某个元素旁边的“编辑”按钮右侧的省略号 (...),然后依次选择“添加”和“添加组”。
请为您的组选择项目。
选择“完成编辑”。
下面是处于读取模式的组,其中包含两个项:文本项和查询项。
在编辑模式下,可以看到这两个项实际上位于组项中。 在下面的屏幕截图中,该组处于编辑状态。 该组在虚线区域内包含两项。 每个项都可以处于编辑或读取模式且彼此独立。 例如,查询步骤处于读取模式,而文本步骤处于编辑模式。
确定组的范围
组被视为工作簿中的新范围。 在组中创建的所有参数仅在该组中可见。 这同样适用于合并操作,你只能查看组内或父级的数据。
组类型
可以指定要添加到工作簿的组的类型。 有两种类型的组:
- 可编辑:工作簿中的组允许添加、删除或编辑该组中的项内容。 此类型通常用于布局和可见性目的。
- 从模板:工作簿中的组按工作簿 ID 加载另一工作簿的内容。 在运行时,将会加载该工作簿的内容并将其合并到工作簿中。 在编辑模式下,无法修改组的任何内容,因为在下一次加载项时,这些内容就会从模板中再次加载。 从模板加载组时,请使用现有工作簿的完整 Azure 资源 ID。
加载类型
可以指定加载组内容的方式和时间。
延迟加载
默认设置为延迟加载。 在延迟加载中,仅当项可见时才会加载该组。 这样,组就可由选项卡项使用了。 如果从未选择该选项卡,则组永远不可见,因此也不会加载内容。
对于从模板创建的组,在组变为可见之前,不会检索该模板的内容,且不会创建组中的项。 检索内容时,用户将看到整个组的进度旋转图标。
显式加载
在此模式下,会显示一个按钮来指示组的位置,并且在用户显式选择此按钮加载内容之前,不会检索或创建任何内容。 在内容的计算非常耗费资源或者内容极少被使用的情况下,此类型很有用。 作者可以指定要在按钮上显示的文本。
此屏幕截图显示了带有已配置的“加载更多”按钮的显式加载设置。
“始终”模式
在“始终”模式下,加载工作簿后,始终会立即加载并创建组的内容。 当组仅用于布局目的(其中的内容始终可见)时,往往会使用此类型。
在组中使用模板
当某个组配置为从模板加载时,默认会在延迟模式下加载该内容,并且仅当该组可见时才加载。
将某个模板加载到组中时,工作簿会尝试将模板中声明的所有参数与组中的现有参数合并。 工作簿中存在的所有同名参数将从所要加载的模板中合并出去。 如果参数步骤中的所有参数均已合并出去,则整个参数步骤会消失。
示例 1:所有参数具有相同的名称
假设模板顶部有两个参数,一个时间范围参数和一个名为“Filter”的文本参数:
然后,组项加载具有其自己的两个参数和一个文本步骤的第二个模板,其中参数的名称相同:
将第二个模板加载到组中时,重复的参数将合并出去。由于所有参数都已合并出去,因此内部参数步骤也会合并出去,导致组仅包含文本步骤。
示例 2:一个参数具有相同的名称
假设你有一个模板,顶部有两个参数,一个 时间范围 参数和一个名为“FilterB”的文本参数():
加载组项的模板时,会将 TimeRange 参数从该组中合并出去。 工作簿包含带有 TimeRange 和 Filter 的初始参数步骤,组的参数仅包括 FilterB。
如果加载的模板包含TimeRange和Filter(而不是FilterB),那么生成的工作簿将会有一个参数步骤,以及一个起初包含多个文本步骤但最后只剩下一个文本步骤的组。
将一个大模板拆分为许多模板
若要提高性能,可以将一个大模板分解为多个较小的模板,这些较小的模板能够以延迟模式或者按照用户的要求加载某些内容。 由于顶级模板可以更小,这使得初始加载速度更快。
将某个模板拆分为多个部分时,基本上需要将该模板拆分为多个全部都单独工作的模板(子模板)。 如果顶级模板包含其他项使用的 TimeRange 参数,则子模板还需要包含一个参数项,以用于定义一个具有相同确切名称的参数。 子模板将独立工作,并且可以按组加载到较大的模板内。
若要将一个较大的模板转换为多个子模板:
在工作簿顶部附近的共享参数后面创建一个新的空组。 此新组最终将成为子模板。
创建共享参数步骤的副本,然后使用“移入组中”功能将副本移入到步骤 1 中创建的组。 此参数允许子模板独立于外部模板工作,在加载到外部模板内时会合并出去。
注意
从技术上来讲,如果你永远不打算单独显示子模板,则子模板就不需要将这些参数合并出去。 但是,如果子模板没有参数,则如果稍后需要编辑或调试,则很难编辑或调试这些参数。
将工作簿中你希望放入子模板的每个项移到步骤 1 创建的组中。
如果在步骤 3 中移动的单个步骤具有条件可见性,则这会成为外部组(例如选项卡中使用的组)的可见性。 将这些可见性设置从组内的项中删除,并将其添加到组本身。 在此处请保存,以免丢失所做的更改,并且/或者导出并保存 JSON 内容的副本。
如果你希望从模板加载该组,可以使用该组中的“编辑”工具栏按钮。 这只会在新窗口中将该组的内容作为工作簿打开。 然后,可以保存此内容(如果适用)并关闭此工作簿视图(不要关闭浏览器,只是关闭该视图以返回到前面正在编辑的工作簿)。
然后,可将组步骤更改为从模板加载,并将模板 ID 字段设置为在步骤 5 中创建的工作簿/模板。 若要使用工作簿 ID,源必须是共享工作簿的完整 Azure 资源 ID。 按“加载”,随即会从该子模板加载此组的内容,而不是加载这个外部工作簿中保存的内容。
添加图像
工作簿允许作者在其内容中包含图像。 使用图像元素提供视觉帮助,例如图表、屏幕截图和其他视觉信息。
若要在工作簿中添加图像,请执行以下作:
通过执行以下步骤之一来添加映像:
- 选择 “添加”,然后在现有元素下方或工作簿底部 添加图像 。
- 选择工作簿中某个元素旁边的 “编辑” 按钮右侧的省略号(...),然后选择“ 添加 ”,然后 添加图像。
在提供的字段中输入图像 URL。
提供其他设置,如图像标题、大小和可选文本。 将图像大小设置为完整大小会将图像设置为其原始大小。
添加视频
工作簿允许作者在工作簿中嵌入视频内容。
若要在工作簿中添加视频,请执行以下作:
通过执行以下步骤之一添加视频:
- 选择 “添加”,然后在现有元素下方或工作簿底部 添加视频 。
- 选择工作簿中某个元素旁边的 “编辑” 按钮右侧的省略号(...),然后选择“ 添加 ”,然后 添加视频。
在提供的字段中输入视频 URL。
提供其他设置,如视频标题、大小和可选文本。