iCMS:debug 调试标签

iCMS 调试标签技术文档

调试标签 (debug)

调试标签用于在模板中进行调试操作,帮助开发者查看SQL查询、调试数据等信息。

iCMS:debug 标签

支持参数

参数名 类型 默认值 说明
sql 布尔值/字符串 - 为true时清空SQL日志,为其他值时显示SQL日志
flag 整数 - 设置数据库调试标志
querylog 布尔值/整数 - 显示数据库查询日志
trace 布尔值/字符串 - 显示数据库查询跟踪信息
data 布尔值 - 显示所有调试数据

使用示例

<!-- 清空SQL日志 -->
<!--{iCMS:debug sql="true"}-->

<!-- 设置数据库调试标志 -->
<!--{iCMS:debug flag="1"}-->

<!-- 显示数据库查询日志 -->
<!--{iCMS:debug querylog="true"}-->

<!-- 显示数据库查询跟踪信息 -->
<!--{iCMS:debug trace="true"}-->

<!-- 显示所有调试数据 -->
<!--{iCMS:debug data="true"}-->

<!-- 显示SQL日志 -->
<!--{iCMS:debug sql="show"}-->

常见应用场景

1. 开发环境调试

<!--{if $DEBUG}-->
  <div class="debug-panel">
    <h3>调试信息</h3>
    <div class="debug-content">
      <h4>SQL查询</h4>
      <!--{iCMS:debug sql="show"}-->

      <h4>所有调试数据</h4>
      <!--{iCMS:debug data="true"}-->
    </div>
  </div>
<!--{/if}-->

2. 性能分析

<!--{iCMS:debug querylog="true"}-->
<div class="performance-analysis">
  <h3>查询性能分析</h3>
  <p>以上是所有数据库查询的详细信息,包括执行时间和查询语句。</p>
</div>

3. 跟踪特定查询

<!--{iCMS:article id="1"}-->
<!--{iCMS:debug trace="article"}-->
<div class="query-trace">
  <h3>文章查询跟踪</h3>
  <p>以上是获取文章数据时的查询跟踪信息。</p>
</div>

注意事项

  1. 调试标签主要用于开发环境,生产环境应当禁用或限制使用
  2. 调试信息可能包含敏感数据,注意信息安全
  3. 大量调试输出可能影响页面性能和显示效果
  4. 建议结合条件判断使用,只在特定条件下显示调试信息

高级用法

条件调试

<!--{if $GET.debug=="1" && $user.role=="admin"}-->
  <!--{iCMS:debug data="true"}-->
<!--{/if}-->

组合调试

<div class="debug-panel">
  <!-- 先清空SQL日志 -->
  <!--{iCMS:debug sql="true"}-->

  <!-- 执行一些操作 -->
  <!--{iCMS:article row="5"}-->

  <!-- 显示这些操作产生的SQL查询 -->
  <!--{iCMS:debug sql="show"}-->
</div>

开发者工具集成

<!--{if $user.role=="developer"}-->
  <div class="dev-tools">
    <ul class="nav nav-tabs">
      <li class="active"><a href="#sql-tab" data-toggle="tab">SQL查询</a></li>
      <li><a href="#trace-tab" data-toggle="tab">查询跟踪</a></li>
      <li><a href="#data-tab" data-toggle="tab">调试数据</a></li>
    </ul>
    <div class="tab-content">
      <div id="sql-tab" class="tab-pane active">
        <!--{iCMS:debug sql="show"}-->
      </div>
      <div id="trace-tab" class="tab-pane">
        <!--{iCMS:debug trace="true"}-->
      </div>
      <div id="data-tab" class="tab-pane">
        <!--{iCMS:debug data="true"}-->
      </div>
    </div>
  </div>
<!--{/if}-->

调试技巧

  1. 分步调试:在关键代码前后添加调试标签,观察数据变化
  2. 性能分析:使用querylog参数查看SQL查询性能
  3. 安全使用:结合用户权限检查,只向管理员显示调试信息
  4. 临时调试:使用URL参数控制调试信息的显示