Datart使用说明

Datart使用说明

Datart安装记录

Refer

  • 最近在学习和使用Davinci的时候正好赶上了跑象团队新发布的开源平台,赶紧fork安装一下瞅一瞅,感谢开源,比心!下边是一些参考文档
  • 官方微信文章:奔跑不止,万象更新|datart 蛰伏十月,浴火重生
  • 官方git地址:https://github.com/running-elephant/datart/
  • 官方文档地址:https://running-elephant.github.io/datart-docs/(官方输出哦)

安装问题

  • 官方文档中提供了基本安装文档(https://github.com/running-elephant/datart/blob/master/README.md),针对源码与打包后都是适用的,在其中有几个点需要注意。此外我这里是在Windows中配置的,下边的问题基本上是按顺序遇到的,多少会有一些出入,不过大致可以全部参考后再进行项目的启动哈。

前端源码编译

  • 针对源码我们需要进行前端代码的编译步骤,若不编译理论上会打不开对应的页面(相对路径:.datart-master rontend,package.json的话就install一下,然后就可以build了,大致如此,就不详细叙述了)
  • 注意: 在Davinci源码安装打包步骤中,需要将前端项目的node_modules剔除,猜测Datart在源码打包阶段也需要该步骤,mark一下。

java: 程序包datart.data.provider.calcite.parser.impl不存在

  • 在常规Maven操作后启动项目阶段会报错如下图错误示例所示,从示例可以看到在该项目路径下缺少一个SqlParserImpl的实现类,并且可以看到在codegen文件夹下存在一个Parser.jj的可用于编译的文件。这里我们就需要用到JavaCC
    错误示例
  1. 在Idea中安装JavaCC的步骤可以参考(File—>Settings—>Plugins—>JavaCC)进行插件的安装
  2. 在Terminal中进入Parse.jj对应文件目录,使用 javacc Parse.jj 命令(目标目录可以在codegen文件夹上copy path哈),届时会生成以下java文件
    在这里插入图片描述
    在这里插入图片描述

启动基础步骤

  • 前端启动:在前端项目目录,/datart-master/frontend/目录下执行start命令

    npm start

在这里插入图片描述

  • 后端启动:在idea中执行src/main/java/datart/DatartServerApplication.java即可

  • 注意:在后端工程配置中需注意datart的application-config.yml中的server部分,是前后端交互的server服务端,参数变更需要注意前端项目相关服务端数据变更,否则会报错(括号内为示例部分)

    [HPM] Error occurred while trying to proxy request (/api/v1/users/register) from localhost:3000 to http://localhost:8080/ (ECONNREFUSED) (https://nodejs.org/api/errors.html#errors_common_system_errors)

### Datart 截图功能配置方法 在Datart中实现截图功能主要依赖于浏览器自动化工具,如Selenium WebDriver配合ChromeDriver来完成页面渲染后的截图操作。对于希望集成此功能的用户来说,需先确保环境已正确设置好相应的WebDriver版本,并将其路径加入到系统的PATH环境中[^2]。 为了具体实施这一过程,在服务器端编写脚本调用无头模式下的Chrome实例访问目标DashBoard URL地址之后执行截图指令是一个常见做法。下面是一段Python代码示例用于说明如何利用Selenium库来进行网页抓取并保存图像文件: ```python from selenium import webdriver from selenium.webdriver.chrome.options import Options chrome_options = Options() chrome_options.add_argument('--headless') # 设置为无界面模式 chrome_options.add_argument('--disable-gpu') driver_path = '/path/to/chromedriver' # ChromeDriver所在目录,请替换为你自己的路径 url = 'http://your.datart.url/dashboard/id' # 替换成实际要截屏的数据面板URL with webdriver.Chrome(executable_path=driver_path, options=chrome_options) as driver: driver.get(url) screenshot = driver.save_screenshot('screenshot.png') ``` 此外,如果考虑将此类功能封装成API接口供其他应用调用,则可以基于Flask或其他Web框架构建RESTful服务,接收请求参数(比如Dashboard ID),动态生成对应的URL链接,进而触发上述逻辑获取最新视图快照返回给客户端。 值得注意的是,当涉及到容器化部署方案时,例如通过Docker运行Datart实例的情况下,除了按照常规步骤准备必要的依赖项外,还需要特别注意宿主机与容器内部之间关于共享存储卷以及网络通信方面的配置细节,以确保存储位置映射准确无误且能够正常加载所需的外部资源文件[^3]。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值