使用 umami 统计
最近从这篇文章中了解到 umami 这个开源的可自托管的网站统计工具,试用了一段时间,觉得确实简单易用,值得关注。
umami 是什么
umami 是一个轻量级的网站访问统计工具,开源免费,可自托管,用途类似 Google Analytics。当然,umami 的功能远没有 Google Analytics 那么丰富,不过如果你的需求不多,只想了解网站的访问量(PV、UV)、流量来源等基本信息,以及记录一些简单的自定义事件,那么 umami 会是一个不错的选择。
关于 umami 的具体功能,可以前往 umami 的官网,体验一下官方提供的 Live Demo。
umami 目前没有官方托管服务,使用时基本上需要自托管,这虽然会有一些麻烦,但也意味着你的访问数据保存在你自己的服务器(数据库)上,因此不用担心数据泄露的问题。
通过 Railway 部署
umami 官方文档中介绍了多种部署方法,包括部署到 Vercel、Railway 等方法。我一开始是使用 docker 部署在自己的服务器上,但后来发现使用 Railway 托管似乎更简单,且它的免费额度应该足够支持我的用量了,于是便又迁移到了 Railway。
Railway 是一个服务托管平台,和 Vercel 等类似,不同的是它除了支持 Next.js 等程序外,还提供 PostgreSQL 等数据库存储服务,因此完全可以在上面托管一个动态网站服务。
无需添加支付方式,Railway 就为每个用户提供每月 5 美元的免费额度,足够大部分小应用(比如流量较小的 umami 应用)运行,添加信用卡后,这个额度会变成每月 10 美元。
Railway 中有创建 umami 项目的模板,可以直接从模板创建,也可以手动操作,从空白项目开始自行创建并连接各个服务。具体的安装步骤可以参考官方文档或者这篇文章,我的安装过程很顺利,没有遇到什么意外,因此这儿就不再赘述了。
使用
在 Railway 上部署好并配置好域名之后,就可以访问你的 umami 服务了,接下来就是在 umami 后台添加上对应的站点,获取统计脚本并添加到你的网站中,然后就可以看到网站的访问统计了。
值得一提的是,umami 管理后台对移动端的支持也很好,在 iPhone 上用 Safari 访问后台,并将它添加到主屏幕后,就可以像使用 App 一样访问这个管理后台。
优点与不足
经过一段时间的使用,个人觉得 umami 是一个优点与不足并存的产品。
优点
- 免费、开源,可自托管
- 注重数据安全及隐私
- 轻量级,对服务端要求低,网络流量占用也很少
- 部署、使用简单
- 提供了各种常用自定义项,比如可更改统计 js 文件的名字,防止被广告插件拦截等
- 支持手动提交访问数据到 API,这意味着一些非 Web 应用甚至非 JS 应用(比如桌面 App)也可以使用 umami 进行统计
不足
umami 的不足主要集中在功能上,如果你用不到这些功能,那么可以无视这些不足。
- 访客来源只能精确到国家或地区,不能精确到城市(关于这一点,开发者有提到是出于保护用户隐私的考虑故意这么设计的,我看了下,数据库中甚至没有记下访客的 IP,因此这是 feature 不是 bug。可以理解,不过如果你的用户大部分来自同一个国家,那么这个访客来源就有点太笼统了)
- 缺少留存率统计
- 自定义事件较为简单,只支持一个参数,没有二级参数或子参数
小结
总体来说,umami 是一个用心的作品,如果你不需要统计太多复杂的数据,并且正在寻找一个 Google Analytics 的替代品,那么不妨试一试 umami。
umami 是开源的,看作者在 GitHub 上的提交记录,这个应用正在活跃的开发中,相信接下来会越来越完善。
就我个人来说,umami 虽然功能上还有一些欠缺,但已经基本满足我的需求了,预计接下来比较长的一段时间里,我会继续使用 umami。
评论:
头一次听到 Railway,学习了,感觉现在免费平台好多,我前一阵刚从腾讯云折腾到 fly.io……
是啊,现在想实验一些小的想法,成本真的很低。:-)
刚用railway部署完,发现免费只有500小时,一个月不太够用,还是要搭在服务器上🥲
收费策略好像改了,之前没有 500 小时这个限制。😂
不错不错