Log Analytics - 如何在搜索查询中使用 "inverted commas"
Log Analtyics - How to use "inverted commas" within search query
我正在尝试为 Public IP 分配给 NIC 时创建一个搜索查询,然后创建一个警报。我可以找到标识作业的部分,但我需要在搜索中使用 "inverted commas",但我不能...
我的查询:
AzureActivity
| where OperationName == "Microsoft.Network/networkInterfaces/write" and ActivityStatus == "Started"
| where Properties contains "<>"
在那个 "contains" 中,我需要使用从属性 JSON 中提取的以下 JSON(我发现它在没有 Properties Contains 的情况下进行搜索):
\"provisioningState\":\"Succeeded"\
但是,我知道我不能在已经倒置的逗号区域内使用 "inverted commas"。有没有办法让我把它放在里面,也许用某种取消或包围?
您可以使用 @ 进行转义 - 参见此处:
https://docs.loganalytics.io/docs/Language-Reference/Data-types/string
或者,可能更好,您可以使用 extractjson(或 parsejson)函数
https://docs.loganalytics.io/docs/Language-Reference/Scalar-functions/extractjson()
感谢@Oleg Ananiev 提交的链接,我找到了解决方案。
AzureActivity
| sort by TimeGenerated desc nulls last
| where OperationName == "Microsoft.Network/networkInterfaces/write" and ActivityStatus == "Started"
| where Properties contains '\"provisioningState\":\"Succeeded\"'
使用 parse_json 以 JSON 格式读取嵌套 属性 的更好方法。例如,如果您想读取 provisioningState 属性 的值,只需执行以下查询
| where parse_json(Properties).provisioningState == 'Succeeded'
如果有帮助请告诉我!
我正在尝试为 Public IP 分配给 NIC 时创建一个搜索查询,然后创建一个警报。我可以找到标识作业的部分,但我需要在搜索中使用 "inverted commas",但我不能...
我的查询:
AzureActivity
| where OperationName == "Microsoft.Network/networkInterfaces/write" and ActivityStatus == "Started"
| where Properties contains "<>"
在那个 "contains" 中,我需要使用从属性 JSON 中提取的以下 JSON(我发现它在没有 Properties Contains 的情况下进行搜索):
\"provisioningState\":\"Succeeded"\
但是,我知道我不能在已经倒置的逗号区域内使用 "inverted commas"。有没有办法让我把它放在里面,也许用某种取消或包围?
您可以使用 @ 进行转义 - 参见此处: https://docs.loganalytics.io/docs/Language-Reference/Data-types/string
或者,可能更好,您可以使用 extractjson(或 parsejson)函数 https://docs.loganalytics.io/docs/Language-Reference/Scalar-functions/extractjson()
感谢@Oleg Ananiev 提交的链接,我找到了解决方案。
AzureActivity
| sort by TimeGenerated desc nulls last
| where OperationName == "Microsoft.Network/networkInterfaces/write" and ActivityStatus == "Started"
| where Properties contains '\"provisioningState\":\"Succeeded\"'
使用 parse_json 以 JSON 格式读取嵌套 属性 的更好方法。例如,如果您想读取 provisioningState 属性 的值,只需执行以下查询
| where parse_json(Properties).provisioningState == 'Succeeded'
如果有帮助请告诉我!