我在Azure Function Cloud App中部署了Azure Function App,并创建了诊断设置以将所有日志发送到Log Analytics工作区。
我可以使用下面的查询获得结果:
FunctionAppLogs
| where FunctionName contains "Function2"
字符串
结果会生成很多列,如TimeGenerated
[UTC]、ServiceName
、Category
、Location
、Message
、HostVersion
、FunctionInvocatoinId
、FunctionName
、HostInstanceId
、Level
、AppName
、RoleInstance
等。
这里消息列的值将采用以下格式:user-service URL is healthy. Status code: [{"message":"Success","status":200}
,audit-service URL is healthy. Status code: [{"message":"Success","status":200}
个
因此,我想拆分消息,并使用上面的KQL查询将拆分值提供给结果中的外部(自定义)列。我尝试了下面的查询,但没有得到如何分割它。
FunctionAppLogs
| where FunctionName contains "Function2"
| extend ServiceName = split(Message, "%-service", 20)
型
因此,新的自定义列ServiceName应该具有来自Message列的字符串值,例如:
user-service
audit-service
型
谁能帮我用KQL查询拆分列值并分配给新列?
1条答案
按热度按时间t30tvxxf1#
我已经在我的环境中复制了,并得到了预期的结果如下:
下面是对我有用的KQL查询:
字符串
一月一日
的数据
Fiddle.
您还可以获得如下所示的其他列:
的
这里Message是列名。