|
45 | 45 | <tbody> |
46 | 46 | {{= MiniProfiler.templates.timingTemplate({timing: it.root, page: it}) }} |
47 | 47 | </tbody> |
48 | | - <tfoot> |
49 | | - <tr> |
50 | | - <td colspan="3"> |
51 | | - {{? !it.client_timings}} |
52 | | - {{= MiniProfiler.templates.linksTemplate({timing: it.root, page: it}) }} |
53 | | - {{?}} |
54 | | - <a class="profiler-toggle-duration-with-children" title="toggles column with aggregate child durations">show time with children</a> |
55 | | - <a |
56 | | - class="profiler-snapshots-page-link" |
57 | | - title="Go to snapshots page" |
58 | | - href="{{= MiniProfiler.options.path }}snapshots">snapshots</a> |
59 | | - </td> |
60 | | - {{? it.has_sql_timings}} |
61 | | - <td colspan="2" class="profiler-number profiler-percent-in-sql" title="{{= MiniProfiler.getSqlTimingsCount(it.root) }} queries spent {{= MiniProfiler.formatDuration(it.duration_milliseconds_in_sql) }} ms of total request time"> |
62 | | - {{= MiniProfiler.formatDuration(it.duration_milliseconds_in_sql / it.duration_milliseconds * 100) }} |
63 | | - <span class="profiler-unit">% in sql</span> |
| 48 | + {{? it.has_sql_timings}} |
| 49 | + <tfoot> |
| 50 | + <tr> |
| 51 | + <td colspan="1"> |
| 52 | + SQL Summary: |
64 | 53 | </td> |
65 | | - {{?}} |
66 | | - {{~ it.custom_timing_names :value}} |
67 | | - <td colspan="2" class="profiler-number profiler-percentage-in-sql" title="{{= it.custom_timing_stats[value].count }} {{= value.toLowerCase() }} invocations spent {{= MiniProfiler.formatDuration(it.custom_timing_stats[value].duration) }} ms of total request time"> |
68 | | - {{= MiniProfiler.formatDuration(it.custom_timing_stats[value].duration / it.duration_milliseconds * 100) }} |
69 | | - <span class="profiler-unit">% in {{= value.toLowerCase() }}</span> |
| 54 | + <td colspan="5" title="percent of total request time spent in SQL"> |
| 55 | + {{=it.sql_count}} {{? it.cached_sql_count > 0 }} ({{=it.cached_sql_count}} cached) {{?}} |
| 56 | + <span class="profiler-unit" title="percent of total request time spent in SQL"> - |
| 57 | + {{= MiniProfiler.formatDuration(it.duration_milliseconds_in_sql / it.duration_milliseconds * 100) }}% in sql |
| 58 | + </span> |
70 | 59 | </td> |
71 | | - {{~}} |
72 | | - </tr> |
73 | | - </tfoot> |
| 60 | + </tr> |
| 61 | + </tfoot> |
| 62 | + {{?}} |
74 | 63 | </table> |
| 64 | + |
| 65 | + <div class="profiler-timings-summary"> |
| 66 | + <div> |
| 67 | + {{? !it.client_timings}} |
| 68 | + {{= MiniProfiler.templates.linksTemplate({timing: it.root, page: it}) }} |
| 69 | + {{?}} |
| 70 | + <a class="profiler-toggle-duration-with-children" title="toggles column with aggregate child durations">show time with children</a> |
| 71 | + <a |
| 72 | + class="profiler-snapshots-page-link" |
| 73 | + title="Go to snapshots page" |
| 74 | + href="{{= MiniProfiler.options.path }}snapshots">snapshots</a> |
| 75 | + </div> |
| 76 | + {{~ it.custom_timing_names :value}} |
| 77 | + <div class="profiler-number profiler-percentage-in-sql" title="{{= it.custom_timing_stats[value].count }} {{= value.toLowerCase() }} invocations spent {{= MiniProfiler.formatDuration(it.custom_timing_stats[value].duration) }} ms of total request time"> |
| 78 | + {{= MiniProfiler.formatDuration(it.custom_timing_stats[value].duration / it.duration_milliseconds * 100) }} |
| 79 | + <span class="profiler-unit">% in {{= value.toLowerCase() }}</span> |
| 80 | + </div> |
| 81 | + {{~}} |
| 82 | + </div> |
| 83 | + |
75 | 84 | {{? it.client_timings}} |
76 | 85 | <table class="profiler-timings profiler-client-timings"> |
77 | 86 | <thead> |
|
230 | 239 | <td> |
231 | 240 | <div class="query"> |
232 | 241 | <pre class="profiler-stack-trace">{{= it.s.stack_trace_snippet }}</pre> |
| 242 | + {{? it.s.cached }} |
| 243 | + <span class="cached"> [CACHE] </span> |
| 244 | + {{?}} |
233 | 245 | {{? it.s.formatted_command_string}} |
234 | 246 | <pre class="prettyprint lang-sql"><code>{{= it.s.formatted_command_string }}; {{= MiniProfiler.formatParameters(it.s.parameters) }}</code></pre> |
235 | 247 | {{??}} |
|
0 commit comments