在消息模板中搜索 {time},而不让工作簿将其解析为参数

Searching for {time} in a message template, without having the workbook parse it as a parameter

我想创建一个允许我搜索特定消息模板的 azure 监视器工作簿。通常,这些消息模板包含占位符。例如:

logger.LogInformation("Finished executing, took {time}ms", time);

但问题是,如果我在工作簿的查询字符串中包含占位符,它将失败,因为它将占位符视为工作簿的参数。下面可以看到一个非常小的例子。

AppTraces 
| where Properties.MessageTemplate == 'Finished executing, took {time}ms'

这会给我以下错误信息:

This query could not run because some parameters are not set.
Please set: time

我似乎无法弄清楚如何转义这些字符,因为这实际上与 kusto 语言无关,更多的是工作簿的问题。有人可以请教吗?

遗憾的是,我们(还)没有工作簿中参数的转义序列。

作为解决方法,您可以将其拆分,这样工作簿就不会 检测 它作为参数,例如 strcat('Finished executing, took {', 'time}ms'