$(function () { // request_time 为浮点秒(decimal(13,3)),渲染为日期时间 var formatRequestTime = function (d) { var t = parseFloat(d.request_time); if (!t || isNaN(t)) { return '-'; } var dt = new Date(t * 1000); var p = function (n) { return n < 10 ? '0' + n : '' + n; }; return dt.getFullYear() + '-' + p(dt.getMonth() + 1) + '-' + p(dt.getDate()) + ' ' + p(dt.getHours()) + ':' + p(dt.getMinutes()) + ':' + p(dt.getSeconds()); }; ua.table.render({ init: init, toolbar: [], cols: [[ {field: 'request_time', title: '请求时间', width: 170, sort: true, search: 'range', templet: formatRequestTime}, { field: 'method', title: '方法', width: 90, search: 'select', selectList: { GET: 'GET', POST: 'POST', PUT: 'PUT', DELETE: 'DELETE', HEAD: 'HEAD', OPTIONS: 'OPTIONS', PATCH: 'PATCH' }, templet: function (d) { var cls = { GET: 'layui-bg-blue', POST: 'layui-bg-green', PUT: 'layui-bg-orange', DELETE: 'layui-bg-red', HEAD: 'layui-bg-gray', OPTIONS: 'layui-bg-gray', PATCH: 'layui-bg-cyan' }[d.method]; if (d.method && cls) { return '' + d.method + ''; } return d.method || '-'; } }, { field: 'url', title: 'URL', minWidth: 220, searchOp: '%*%', templet: function (d) { var u = String(d.url || ''); var esc = u.replace(/&/g, '&').replace(//g, '>').replace(/"/g, '"'); var short = u.length > 50 ? u.substring(0, 50) + '…' : u; short = short.replace(/&/g, '&').replace(//g, '>').replace(/"/g, '"'); return '' + (short === '' ? '/' : short) + ''; } }, {field: 'node_id', title: '节点', width: 160, search: 'select', searchOp: '=', selectList: ua.getDataBrage('select_list_node_id') || {}}, { field: 'wall_time', title: '总耗时', width: 110, sort: true, searchOp: 'min', searchTip: '总耗时下限(ms)', templet: function (d) { var ms = parseInt(d.wall_time, 10) / 1000; var txt = ms.toFixed(1) + 'ms'; if (ms > 1000) { return '' + txt + ''; } return txt; } }, { field: 'cpu_time', title: 'CPU耗时', width: 110, search: false, templet: function (d) { var ms = parseInt(d.cpu_time, 10) / 1000; var txt = ms.toFixed(1) + 'ms'; if (ms > 1000) { return '' + txt + ''; } return txt; } }, { field: 'memory_peak', title: '内存峰值', width: 110, sort: true, search: false, templet: function (d) { return (parseInt(d.memory_peak, 10) / 1048576).toFixed(2) + 'MB'; } }, { width: 100, title: '操作', fixed: 'right', templet: ua.table.tool, operat: [ [{ class: 'layui-btn layui-btn-primary layui-btn-xs', method: 'open', field: 'id', text: '详情', title: '采样详情(函数级分析)', auth: 'detail', url: init.detailUrl, extend: 'data-full="true"' }] ] } ]] }); ua.listen(); });