如何使用参数在 Azure Monitor Notebook 中选择日志分析工作区?
Posted
技术标签:
【中文标题】如何使用参数在 Azure Monitor Notebook 中选择日志分析工作区?【英文标题】:How to select a log analytics workspace in azure monitor notebook using a parameter? 【发布时间】:2021-10-08 06:33:27 【问题描述】:我想让用户选择日志分析工作区作为 Azure Monitor 笔记本中的参数来执行查询,类似于 parameter documentation 中的说明。但是,我无法使用变量解析日志分析工作区。
我想做的是这样的:
let event_table = workspace(parameter).Event;
event_table
| take 5
以下使用字符串文字的查询在 azure monitor notebook 和日志查询中均成功:
let event_table = workspace("name_of_work_space").Event;
event_table
| take 5
以下操作在 azure 监视器笔记本和日志查询中均失败并出现错误 "Unknown function 'workspace'.
:
let logAnalyticsWorkspaceName = "name_of_work_space";
let event_table = workspace(logAnalyticsWorkspaceName).Event;
event_table
| take 5
似乎只允许字符串文字作为 workspace()
函数的参数。
此外,iff()
和 case()
函数仅返回标量,因此我不能使用 iff()
和 case()
根据 Azure Notebook 参数有条件地返回表或工作区。
如何向 Azure Monitor Notebook 提供参数以查询特定的日志分析工作区?
【问题讨论】:
你可以像你一样使用参数语法,你只需要引号workspace("parameter").Event
。但最好使用资源参数并将整个查询定位在工作区,而不是在查询文本中调整工作区,如果可以避免的话
【参考方案1】:
使用参数来动态设置工作区。为参数类型为资源选取器(来自 Azure Resource Graph)的工作区创建一个参数。然后,该参数将作为下游控件的 Log Analytics 下拉列表中的一个选项出现。 5:00 视频“How to build tabs and alerts in Azure workbooks | Azure Portal”中出现演示。
【讨论】:
以上是关于如何使用参数在 Azure Monitor Notebook 中选择日志分析工作区?的主要内容,如果未能解决你的问题,请参考以下文章
我们需要 Azure Monitor 中的 Prometheus Metrics 吗?