过滤应用性能监控耗时日志

栏目:云星空知识作者:金蝶来源:金蝶云社区发布:2024-09-16浏览:1

过滤应用性能监控耗时日志

**耗时排查步骤** 1. 步骤一:使用APM实时性能监控抓取日志 2. 步骤二:导出日志,发送html文件给研发排查 3. 步骤三:可以通过过滤详细日志的执行时长,排查耗时的SQL ![image.webp](/download/010029ebd37cae59402bb73aebc8b1a05898.webp) 存在问题:因为详细的日志只显示sql的耗时,当日志非常多的时候 如下例描述 1. sql详细日志有8000+ 2. 总耗时是第一行有400+秒(耗时太长,需要优化) 日志说明:当前只能过滤耗时的SQL。没有包含非SQL的日志。 耗时可能性分析: 1. 存在高耗时的SQL :可通过以上方式过滤耗时SQL并进行优化。 2. 其他代码逻辑耗时 3. 循环次数过多 当优化高耗时的SQL,总耗时还是那么长怎么办?到底是SQL耗时太长,还是SQL执行数量太多导致总耗时太长呢? 进一步排查:汇总所有SQL的总耗时 **操作步骤:** 1. 用记事本打开编辑日志的HTML文档,插入脚本。 2. 插入位置 ![image.webp](/download/01002beb52cce10b49fc935f3addf85f54db.webp) 3. 插入脚本,保存 ```language <script> function ShowMsg (id,millisecond){ var parentRow = document.getElementById(id); var table = parentRow.parentNode.parentNode; var rowCount = 0; var sum = 0; var validRowCount =0; var firstParentId = id.substring(3, id.length); var parentRowParentId = parentRow.getAttribute("parentids"); if(!(!parentRowParentId || parentRowParentId .length === 0)) { firstParentId = parentRowParentId +","+firstParentId ; } for (var i=table.rows.length-1; i>0; i--){ var row = table.rows[i]; var cell = row.cells[1].innerHTML; var time = parseFloat(cell); var parentId = row.getAttribute("parentids"); var rowId = row.getAttribute("id"); if(firstParentId ==parentId ) { if(time>=millisecond) { table.rows[i].className = 'red2class'; validRowCount++; sum +=time; row.style.display = "table-row" }else { row.style.display = "none" //table.deleteRow(row.rowIndex); } rowCount++; }else if(rowId ==id) { row.style.display = "table-row" }else { row.style.display = "none" //table.deleteRow(row.rowIndex); } } console.log("行数:"+rowCount ); console.log("超过"+(millisecond/1000)+"秒行数:"+validRowCount); console.log("超过"+(millisecond/1000)+"秒的汇总:"+sum ); } </script> ``` 4. 刷新页面,打开控制台统计(这个脚本是统计父级节点下的子节点的总耗时,也可以修改id统计下层节点的耗时) ```language ShowMsg ("log9cba28c4-a0ee-4368-a9da-fa89d3b3872d",1) ``` ![image.webp](/download/0100446b081992a04039bc6ecbe81c4766f5.webp) ![image.webp](/download/0100075c2cf7b9c446fa93bb5648484b650e.webp) ## 我们可以看到总的SQL的耗时远远达不到总耗时。 那么可能是其他的可能性,可能需要调试或者输出日志再具体排查。

过滤应用性能监控耗时日志

**耗时排查步骤**1. 步骤一:使用APM实时性能监控抓取日志2. 步骤二:导出日志,发送html文件给研发排查3. 步骤三:可以通过过滤详细日...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息