如何查询Azure App Service的AppServiceHTTPLogs获取源IP、目标IP、URL及计算请求耗时?
Azure Monitor Kusto 查询示例
1. 检索源IP、目标IP和URL名称
直接从AppServiceHTTPLogs表提取所需字段,可按需添加时间范围过滤:
AppServiceHTTPLogs // 可选:过滤时间范围,例如下方为最近24小时 | where Timestamp > ago(24h) // 选择核心字段:源IP、目标IP、请求URL | project ClientIP, HostIp, Uri // 可选:去重避免重复记录 | distinct ClientIP, HostIp, Uri
字段说明:
ClientIP:发起请求的源IP地址HostIp:App Service实例的目标IP地址Uri:请求的完整URL路径
2. 统计指定时间段内特定源到目标的API请求总耗时
过滤指定源IP、目标IP和时间范围后,汇总计算总耗时:
AppServiceHTTPLogs // 指定时间范围,可替换为具体起止时间或相对时间 | where Timestamp between (datetime(2024-05-01 00:00:00) .. datetime(2024-05-07 23:59:59)) // 替换为实际的源IP(A)和目标IP(B) | where ClientIP == "192.168.1.100" and HostIp == "20.190.150.20" // 计算总耗时(毫秒转秒提升可读性) | summarize TotalDurationSeconds = sum(DurationMs) / 1000
说明:
DurationMs是日志中记录的单请求耗时(单位:毫秒),除以1000转换为秒- 若无需转换单位,直接使用
sum(DurationMs)即可得到总毫秒数 - 相对时间写法示例:
where Timestamp > ago(7d)表示最近7天
内容的提问来源于stack exchange,提问作者lpdevlop
相关产品推荐
相关产品推荐

