Umami v2 引入了重新设计的架构和一些重大更改。
script.js
,之前为 umami.js
。/api/send
,之前为 /api/collect
。umami
JavaScript 对象的方法已更改。现在有一个单一的 .track()
方法和一种新的发送事件数据的方法。有关更多信息,请参见 跟踪器函数。TRACKER_SCRIPT_NAME
环境变量不再在脚本名称后附加 .js
扩展名。有关更多信息,请参见 环境变量。由于架构更改,v1 数据库中的数据需要转换为 v2。
为了帮助迁移,我们创建了一个脚本 @umami/migrate-v1-v2
,它将为您迁移所有数据。
event_data
表中有数据,将重命名为 v1_event_data
,但不删除。DATABASE_URL
是 localhost,而迁移无法连接到数据库,请尝试更改为 IP 地址,例如:127.0.0.1
。有两种方法可以运行迁移脚本。
如果您可以访问应用程序文件夹的终端,请使用此方法。
确保您的应用程序已构建。如果没有,请先运行 yarn build
。
cd umami
npx @umami/migrate-v1-v2@latest
如果您无法访问应用程序文件夹,例如在 Vercel 或 Netlify 上部署时,请使用此方法。
安装
git clone https://github.com/umami-software/migrate-v1-v2.git
cd migrate-v1-v2
yarn install
yarn build
配置
创建一个 .env
文件,并定义以下变量:
DATABASE_URL={连接 URL}
运行
yarn start
进入正在运行的 Docker 容器。您可以通过 docker ps
的输出找到名称。
docker exec -ti -u 0 <应用容器名称> sh
运行迁移脚本。
npx @umami/migrate-v1-v2@latest
当迁移成功运行时,它应如下所示: