如何在Log Insights中统一日志耗时单位并生成分布图表?
日志耗时统一单位与Log Insights分布图表生成方案
一、统一耗时单位为秒(核心解决)
先通过convert将提取的字符串型耗时转为浮点数值,再用case语句根据单位做换算,完整查询片段如下:
filter @message like /Process finished after/ | parse @message " after * *" as t_elapsed, t_unit | convert t_elapsed to float -- 将字符串耗时转为可计算的数值 | t_elapsed_sec = case when t_unit = "ms" then t_elapsed / 1000 -- 毫秒转秒 when t_unit = "min" then t_elapsed * 60 -- 分钟转秒 else t_elapsed -- 秒单位保持不变 end | filter t_unit in ("ms", "s", "min") -- 过滤异常单位的脏数据(可选)
二、分布图表生成指导
根据不同分析需求,选择对应的查询语句和图表类型:
1. 基础耗时分布柱状图(适合看各时间段的处理次数)
用bin函数按固定时间间隔分组(比如5秒),避免因离散值过多导致图表混乱:
filter @message like /Process finished after/ | parse @message " after * *" as t_elapsed, t_unit | convert t_elapsed to float | t_elapsed_sec = case when t_unit = "ms" then t_elapsed / 1000 when t_unit = "min" then t_elapsed * 60 else t_elapsed end | stats count(*) as process_count by bin(t_elapsed_sec, 5) -- 按5秒间隔分组,可调整数值 | sort bin(t_elapsed_sec, 5) asc
图表选择:柱状图,X轴设为分组后的秒数区间,Y轴设为process_count。
2. 耗时占比饼图/堆叠柱状图(适合看各区间的占比)
通过窗口函数计算总数量,再得出各分组的占比:
filter @message like /Process finished after/ | parse @message " after * *" as t_elapsed, t_unit | convert t_elapsed to float | t_elapsed_sec = case when t_unit = "ms" then t_elapsed / 1000 when t_unit = "min" then t_elapsed * 60 else t_elapsed end | bin t_elapsed_sec as sec_bin by 10 -- 按10秒间隔分组,可调整 | stats count(*) as cnt by sec_bin | total_process = sum(cnt) over () | percentage = round((cnt / total_process) * 100, 2) -- 保留两位小数 | sort sec_bin asc
图表选择:饼图(看整体占比)或堆叠柱状图(对比各区间占比变化)。
3. 耗时分布箱线图(适合分析异常值、中位数)
用百分位统计函数直接计算关键指标:
filter @message like /Process finished after/ | parse @message " after * *" as t_elapsed, t_unit | convert t_elapsed to float | t_elapsed_sec = case when t_unit = "ms" then t_elapsed / 1000 when t_unit = "min" then t_elapsed * 60 else t_elapsed end | stats percentile(t_elapsed_sec, 25) as 下四分位, percentile(t_elapsed_sec, 50) as 中位数, percentile(t_elapsed_sec, 75) as 上四分位, min(t_elapsed_sec) as 最小耗时, max(t_elapsed_sec) as 最大耗时
图表选择:箱线图(直观展示数据分布的离散程度)或表格(查看具体数值)。
内容的提问来源于stack exchange,提问作者walen
相关产品推荐
相关产品推荐

