Superset的图表是非常炫酷的,但是原来的版本只能在web端查看,而最新的0.37版本,可以将图表截图直接发送成邮件,非常的方便。

本文将详细介绍Superset 0.37 定时邮件功能。安装过程遇到的任何问题请关注 “实时流式计算” 随时与我联系。所有的离线安装包已经整理好,请后台回复 “superset0928” 下载。

开启邮件功能

superset 0.37的电子邮件功能 默认是关闭的

电子邮件功能允许用户对以下两种电子邮件进行报告:

  • 图表和仪表板(附件或嵌在邮件之中)

  • 图表数据(CSV附件)

vi config.py

开启邮件功能

ENABLE_SCHEDULED_EMAIL_REPORTS = True

要发送电子邮件 还需要配置一下SMTP

EMAIL_NOTIFICATIONS = True

SMTP_HOST = "email-smtp.eu-west-1.amazonaws.com"
SMTP_STARTTLS = True
SMTP_SSL = False
SMTP_USER = "smtp_username"
SMTP_PORT = 25
SMTP_PASSWORD = os.environ.get("SMTP_PASSWORD")
SMTP_MAIL_FROM = "insights@komoot.com"

启动前记得执行 superset init 否则可能看不到菜单

这时候再登录superset,我们可以看到在Manage下有两个新的菜单了

Dashboard Emails 和 Chart Email Schedules

配置Celery

邮件功能需要使用Celery进行定时调度,为了开启Celery,需要在config.py中进行配置。

class CeleryConfig(object):
BROKER_URL = 'redis://localhost:6379/0'
CELERY_IMPORTS = (
'superset.sql_lab',
'superset.tasks',
)
CELERY_RESULT_BACKEND = 'redis://localhost:6379/0'
CELERYD_LOG_LEVEL = 'DEBUG'
CELERYD_PREFETCH_MULTIPLIER = 10
CELERY_ACKS_LATE = True
CELERY_ANNOTATIONS = {
'sql_lab.get_sql_results': {
'rate_limit': '100/s',
},
'email_reports.send': {
'rate_limit': '1/s',
'time_limit': 120,
'soft_time_limit': 150,
'ignore_result': True,
},
}
CELERYBEAT_SCHEDULE = {
'email_reports.schedule_hourly': {
'task': 'email_reports.schedule_hourly',
'schedule': crontab(minute=1, hour='*'),
},
} CELERY_CONFIG = CeleryConfig

随后启动celery worker和celery beat

celery worker --app=superset.tasks.celery_app:app --pool=prefork -O fair -c 4
celery beat --app=superset.tasks.celery_app:app

为了更好地监控Celery,建议大家安装flower,这是一个celery的监控,可以清楚的看到celery任务的执行情况。

pip install flower
celery flower --app=superset.tasks.celery_app:app

flower页面:

安装浏览器驱动

为了可以渲染看板,需要在superset所在环境下本地安装浏览器驱动。

驱动的类型在config.py中配置

EMAIL_REPORT_WEBDRIVER = "chrome"

这里安装chrome

从google官方网站下载google chrome安装包

http://www.google.cn/chrome/browser/desktop/index.html

选择linux系统,并下载google-chrome-stable_current_x86_64.rpm

安装:rpm -ivh google-chrome-stable_current_x86_64.rpm

再安装chromedriver

http://chromedriver.chromium.org/

unzip chromedriver_linux64.zip

mv chromedriver /usr/bin/

清注意两者版本一定要保证一致

安装成功输入 chrome 和 chromedriver验证一下

发送邮件

准备工作做好以后,就可以新建一个邮件发送任务了。

发送看板:

可以选择发送的看板,crontab表达式,邮箱,是否发送测试邮件,内联还是附件。。

也可以选择发送图表:

可以选择发送原始数据。

最后,在邮件中接收到看板和图表了~

邮件看板:

邮件图表:

原始数据:

常见错误

接收不到邮件,也没有看到错误提示

请仔细查看celery worker的log日志,如果发送失败会有错误提示。

可能是SMTP或者其他的配置问题。

如果log正常,请注意设置 SCHEDULED_EMAIL_DEBUG_MODE 是不是设置成了True,如果是True将进行调试模式不会真正的发送邮件,要改成False。

Error: Failed dependencies:

Error: Failed dependencies:
libappindicator3.so.1()(64bit) is needed by google-chrome-stable-85.0.4183.121-1.x86_64
liberation-fonts is needed by google-chrome-stable-85.0.4183.121-1.x86_64
libvulkan.so.1()(64bit) is needed by google-chrome-stable-85.0.4183.121-1.x86_64

安装chrome依赖失败,有网的情况下 yum install libappindicator3 等等 依次安装,没网的话只能自行下载

IndexError: pop from empty list

redis.exceptions.AuthenticationError: Authentication required.

redis认证失败,redis设置了密码,但是访问的URL没有设置密码,设置好密码: “redis://xxx:xxx@localhost:6379/0”

想去掉邮件中的Explore in Superset

需要修改源码,位于

anaconda3/lib/python3.7/site-packages/apache_superset-0.37.0-py3.7.egg/superset/tasks/schedules.py

里面有report charts的邮件模板,修改为自己想要的即可。

如何将炫酷的报表直接截图发送邮件——在Superset 0.37使用Schedule Email功能的更多相关文章

  1. Android开发之炫酷MD风格

    文章转自:一点点征服的 http://www.cnblogs.com/ldq2016/p/5217590.html 安卓开发中非常炫的效果集合 这几天开发的时候,想做一些好看而且酷炫的特效,于是又开始 ...

  2. web报表设计器在线制作炫酷图表

    相信很多人都看过这些大屏的图表,是不是感觉效果很酷炫,做起来会很复杂,按照传统的方式去做,使用数据分析工具结合ps美化可能耗时要数月才能做出来.但这个时候用Smartbi自助仪表盘功能,全方位的满足各 ...

  3. Android开发必知--WebView加载html5实现炫酷引导页面

    大多数人都知道,一个APP的引导页面还是挺重要的,不过要想通过原生的Android代码做出一个非常炫酷的引导页相对还是比较复杂的,正巧html5在制作炫酷动画网页方面比较给力,我们不妨先利用html5 ...

  4. Android绘图机制(四)——使用HelloCharts开源框架搭建一系列炫酷图表,柱形图,折线图,饼状图和动画特效,抽丝剥茧带你认识图表之美

    Android绘图机制(四)--使用HelloCharts开源框架搭建一系列炫酷图表,柱形图,折线图,饼状图和动画特效,抽丝剥茧带你认识图表之美 这里为什么不继续把自定义View写下去呢,因为最近项目 ...

  5. 推荐 2 款超牛逼、炫酷、实用的Docker管理工具!

    Docker技术的火热程度,想必每个互联网IT技术人员都能时时感受的到,的确,近些年,国内对于Docker容器技术的应用需求越来越强烈!! 人均年薪80万以上,docker到底是什么?为什么这么火? ...

  6. 炫酷的jQuery对话框插gDialog

    js有alert,prompt和confirm对话框,不过不是很美体验也不是很好,用jQuery也能实现, 体验效果:http://hovertree.com/texiao/jquery/34/ 代码 ...

  7. html5跟随鼠标炫酷网站引导页动画特效

    html5跟随鼠标炫酷网站引导页动画特效一款非常不错的引导页,文字效果渐变,鼠标跟随出绚丽的条纹.html5炫酷网站引导页,鼠标跟随出特效. 体验效果:http://hovertree.com/tex ...

  8. 简单CSS3实现炫酷读者墙

    如题,给大家介绍和讲解几个常用的CSS3属性,并用到实处. 先看demo(请使用Chrome或者Firefox浏览,IE的靠边): 点此查看实例 觉得爽的可以继续阅读下面的知识点,感觉不爽的可绕行. ...

  9. 【DevOps】DevOps成功的八大炫酷工具

    为自动化和分析所设计的软件及服务正加速devops改革的步伐,本文为你盘点了Devops成功的八大炫酷工具 Devops凭借其连接弥合开发与运营团队的能力正在各个行业呈现席卷之势.开发人员和运营人员历 ...

随机推荐

  1. 「从零单排canal 07」 parser模块源码解析

    基于1.1.5-alpha版本,具体源码笔记可以参考我的github:https://github.com/saigu/JavaKnowledgeGraph/tree/master/code_read ...

  2. Linux基本命令及编程环境实验

    目录 一.Linux基本命令详细汇总 1.目录及文件相关命令 2.系统信息查询 3.文件操作(统计.过滤.搜索.权限) 4.其他命令 二.Linux终端上vi命令编程 1.进入vi命令模式 2.vi编 ...

  3. 重拾Java Web应用的基础体系结构

    目录 一.背景 二.Web应用 2.1 HTML 2.2 HTTP 2.3 URL 2.4 Servlet 2.4.1 编写第一个Servlet程序 2.5 JSP 2.6 容器 2.7 URL映射到 ...

  4. [PyTorch 学习笔记] 3.2 卷积层

    本章代码:https://github.com/zhangxiann/PyTorch_Practice/blob/master/lesson3/nn_layers_convolution.py 这篇文 ...

  5. Oracle数据库的文件以及Oracle体系架构

    第一部分.Oracle数据库的文件 1.参数文件:控制实例的行为的参数的集合 参数文件的作用 设定数据库的限制 设置用户或者进程的限制 设定数据库资源的限制 调整系统的性能 主要的参数文件 SGA_T ...

  6. 合并模拟器和真机的静态库动态库aggregate

    创建Aggregate的target 在Build Phases 添加Run Script,内容为 scriptFile=${SRCROOT}/universalA.shsh ${scriptFile ...

  7. Stack (30)(模拟栈,输出中间数用set)

    Stack is one of the most fundamental data structures, which is based on the principle of Last In Fir ...

  8. Oracle 回滚段undo

    Undo的作用 数据的回滚 一致性读 表的闪回(事务,查询的闪回..) 失败会话的恢复 回滚rollback操作 SQL> archive log list; ORA-01031: 权限不足 S ...

  9. [bash]查找指定目录下符合格式的txt文件

    需求: 查找指定目录下符合yyyy-MM-dd(-b)NNN.txt格式的文件,如“2020-03-22-b888.txt” 目标目录内容: [root@localhost bashs]# ll /r ...

  10. 如何在本机启动两个tomcat

    Tomcat下载地址:http://ftp.kddilabs.jp/infosystems/apache/tomcat/tomcat-9/v9.0.30/bin/apache-tomcat-9.0.3 ...