跳到主要内容
版本:2.14.0

设定周期性报表

在创建仪表板之后,可以给仪表板设置周期性执行计划,每当到达计划的时间点,会提交仪表板中的所有查询到查询引擎,当所有查询完成之后,会将仪表板的内容通过邮件发送给收件人。

信息

使用邮件前,先要由系统管理员完成相关的配置,如SMTP服务器连接、通知邮件发送者等,具体参考这里

步骤

  1. 点击左侧导航栏的“仪表板”,进入仪表板管理页面。

    scheduled_report

  2. 点击要设定定时报表计划的仪表板,点击“操作”栏的设定计划按钮(灰色代表此仪表板还未创建过报表,橙色代表已创建过报表)。打开定时报表设置界面。

    scheduled_report2

  3. 在定时报表计划设置模态框中,设置执行计划、邮件的收件人、标题、模版以及邮件内容等。

    • PDF附件、CSV附件

      勾选“PDF附件”时,仪表板的可视化内容会被转存为PDF文件,作为邮件附件一同发送。

      选择“CSV附件”时,可以将仪表板中选定的图表的原始数据作为邮件附件(CSV格式)一同发送。

    • 邮件模版

      选择“默认模版”时,输入的邮件内容会被嵌入炎凰数据平台的默认邮件模版。

      选择“不使用默认模版”时,邮件内容则完全使用输入的内容。

    • 正文模式

      选择“纯文本”时,邮件内容将以纯文本形式发送,内部所有HTML特殊字符将被转义。

      选择“HTML”时,邮件内容将以HTML的形式发送,保留所有HTML特殊字符。

    scheduled_report_setting

  4. 点击“发送邮件”按钮可以即刻将当前邮件标题和内容发送给指定邮件接收人,您会立即收到邮件以查看当前邮件的内容与格式,从而进行必要的修改和调整。

  5. 点击“确定”按钮,保存配置,仪表板内容将会按照设定的执行计划被发送给收件人。

备注

报表“执行计划”部分的配置同告警的“执行计划”配置类似,具体参考这里"

生成动态邮件标题、正文

用户在设置邮件标题或正文时,可以使用Jinja2模版语言,结合周期性报表中提供的多种Token,生成动态内容。

  • Token格式
Token格式说明使用示例
{{token名}}两层花括号 + token名 + 两层反花括号在邮件标题中使用仪表板标题:
{{report.result.title}}日报

可用Token请参考 Token清单
  • Jinjia2模版示例 - 通过表格展示仪表板中所有图表的数据
{%- for widget in report.result.widgets %}
<table>
<caption>
{{widget.title}}
</caption>
<thead>
<tr>
{%- for field in widget.fields %}
<th>
{{field}}
</th>
{%- endfor %}
</tr>
</thead>
<tbody>
{%- for row in widget.rows %}
<tr>
{%- for field in widget.fields %}
<td>{{row[field]}}</td>
{%- endfor %}
</tr>
{%- endfor %}
</tbody>
</table>
<br/>
{%- endfor %}

Token清单

仪表板相关Token

名称说明
report.result.title本仪表板的标题
report.result.description本仪表板的描述
report.result.widgets结构为数组,数组的每个元素为本仪表板中的一个图表,元素所包含Token可参照下节内容

定时报表相关Token

名称说明
execution.callbackBaseUrlhttps://www.example.com.cn
execution.callbackUrlhttps://www.example.com.cn/zh-CN/app/main/dashboards/fdfd0420-20d2-4d09-b9d4-77abbccd95d7

图表相关Token

以仪表板中的第一个图表(数组的索引值为0)为例:

名称说明
report.result.widgets[0].id图表在本仪表板中的UUID
report.result.widgets[0].title图表的标题
report.result.widgets[0].description图表的描述
report.result.widgets[0].fields结构为数组,为图表数据的所有字段名
report.result.widgets[0].rows结构为数组,为图表数据的所有行,每行内容为字段名+字段值组成的多个键值对
report.result.widgets[0].status图表的加载状态,可能是成功或者失败
report.result.widgets[0].earliestEpoch图表所对应的查询时间范围的最早时间点,单位为微秒
report.result.widgets[0].latestEpoch图表所对应的查询时间范围的最晚时间点,单位为微秒
report.result.widgets[0].totalResults图表所对应的查询结果的总行数
report.result.widgets[0].truncatedResults图表所对应的查询结果的总行数超过最大限制时,实际返回的行数