使用umami自建博客流量统计分析平台

Asia/Shanghai | 1 comment
使用umami自建博客流量统计分析平台
使用umami自建博客流量统计分析平台

博客一直使用谷歌分析(Google Analytics)作为流量统计分析平台,随着大家对隐私的重视,尤其是欧洲通用数据保护条例(GDPR)的颁布,谷歌分析的使用就有必要征求用户的同意,本博客自改版之后在隐私条款处已经说明使用了谷歌分析,并且在Cookie设置处也将允许谷歌分析的权限交给用户,经过一年多的运行发现存在相应的问题,最主要的是如果本博客访问的用户不设置Cookie,这也是大多数情况,一般博客右下角的Cookie提醒是可以忽略的,那么统计必然不准确,那么谷歌分析就失去了参考价值,好在由于全站套用了Cloudflare CDN,其中Cloudflare基础版(Free Plan)提供了一个简单的流量分析模块,让自己也大概能够窥探自己博客的流量情况。

为了能够更好的得到博客热门文章、访问者设备类型、设备分辨率这些信息以供以后改进博客内容和用户体验,同时兼顾用户隐私,决定尝试使用umami自建博客流量统计分析平台。

1 umami介绍

打开umami的官方网站,可以看到其声称“Umami is an open source, privacy-focused alternative to Google Analytics”,提取出三个特点:一是开源,开源表明其代码透明,未有第三方接入,可以本地部署,数据不对外分享;二是注重隐私,其未使用Cookie技术,也不跨站跟踪用户,和GDPR保持兼容;三是可部分替代谷歌分析,谷歌分析的强大基于其大数据平台和用户跟踪,其实大部分功能对于我的博客来说也纯属浪费,所以对于我来说umami可以替代谷歌分析,可能对于商业公司来说还需要斟酌。

2 umami安装

要安装umami首先要选取一个域名,比如本站使用了analytics.wangye.org作为管理和数据采集的域名,这样做的好处是避免广告拦截插件误伤主域名,当然也不是很建议使用analytics打头的域名,部分广告拦截插件已经使用通配符analytics.* 拦截了所有以analytics打头的域名,可以使用比较小众的二级域名。

2.1 使用Docker部署

由于本站建立在容器化基础上,所以对于umami也优先考虑这种部署方式,对于其他部署安装方式请参考其官方文档。下面以PostgreSQL数据库为例,首先创建名称为mydb的数据库,并赋予username全部权限,接着使用部署的docker-compose.yaml如下:

version: '3'
services:
  umami:
    image: ghcr.io/umami-software/umami:postgresql-latest
    network_mode: "host"
    environment:
      DATABASE_URL: postgresql://username:mypassword@localhost:5432/mydb
      DATABASE_TYPE: postgresql
      HASH_SALT: replace-me-with-a-random-string
    restart: always
    container_name: umami

如果使用mysql数据库请自行修改imageghcr.io/umami-software/umami:mysql-latestenvironmentDATABASE_URL改为mysql://username:mypassword@localhost:3306/mydbDATABASE_TYPE改为mysql

上述配置的HASH_SALTreplace-me-with-a-random-string请自行替换为随机字符串以确保安全。

配置完成后使用下面的命令拉取并启动umami程序:

docker compose pull
docker compose up -d

umami 默认运行在端口3000 上,默认账号:admin,默认密码:umami,登录系统后建议修改密码。

2.2 创建网站并获得跟踪代码(Tacking Code)

通过横向导航菜单点击“设置”,通过纵向菜单点击“网站”,点击“+添加网站”,填写网站名称和域名,点击“编辑”,切换到“跟踪代码”,复制文本框的跟踪代码并嵌入到你所要统计的网站HTML页面里。

3 总结

umami的统计功能虽然不如Google Analytics那么强大,但是对于个人用户来说已经绰绰有余,而且相比较Google Analytics必须使用Cookie技术跟踪用户而且被大多数广告拦截插件所拦截,umami的整体优势还是相当大的,对于个人站用户可以考虑采用。

4 参考资料

Comments

  1. 什么时候帮我也装一个...
    算了,还是不装了,百度统计用着就行了。

    Author Replied:

    随时可以安装,使用docker部署还是比较简单的。