Umami 是一个简单易用、自托管的开源网站访问流量统计分析工具。Umami 不使用 Cookie,不跟踪用户,且所有收集的数据都会匿名化处理,符合 GDPR 政策,资源占用很低,虽然功能简单,但分析的数据内容很丰富,基本的来源国家,来源域名,使用的浏览器、系统、设备,访问的网页这些都有。还支持多国语言,完全可以用来替代 Google Analytics、Cloudflare Web Analytics、CNZZ、51LA 等统计工具,而且自己搭建也可以避免被 block 掉从而使统计数据更精确(后来发现也会被部分去广告插件拦截…)。
同类型产品有Google Analytics 和 Cloudflare Web Analytics,虽然功能强大,但国内加载还是有点慢,很影响访客的体验。
安装环境
环境要求
Node.js 12 或更高版本
数据库 (MySQL 或者 Postgresql)
(MySQL需要8.0版本及以上)
安装node.js及fnm
curl -o- https://fnm.vercel.app/install | bash
fnm install 22
查看node版本
node -v
解决 node 和 nodejs 命令的区别
sudo ln -s $(which node) /usr/bin/nodejs
安装mysql(debian系统)
wget https://dev.mysql.com/get/mysql-apt-config_0.8.20-1_all.deb
apt install ./mysql-apt-config_0.8.20-1_all.deb
apt update
apt install mysql-server
安装 MySQL8.0 之后的版本,会在安装时提示你输入 root 用户密码,做好保存即可。
安装Umami
git clone https://github.com/mikecao/umami.git
cd umami
npm install
根目录下创建一个 .env 文件,并添加下面的内容:
DATABASE_URL=mysql://username:password@localhost:3306/database
HASH_SALT=[任意随机字符串]
例如:
DATABASE_URL=mysql://root:123456789@localhost:3306/umami
HASH_SALT=your-long-radom-string
创建一个数据库供Umami使用
mysql -uroot -p
enter password:
最后构建并启动程序:
npm run build
npm start
ps:默认umami会监听在localhost:3000端口
pm2程序守护
我们需要 PM2 工具来守护进程,PM2 能守护的东西很多,例如:Node.js、Python、PHP、Ruby、perl,还有消息队列程序、Shell脚本等等。
安装 PM2:
npm install pm2 -g
在 Umami 目录下运行:
pm2 start npm --name umami -- start
设置重启服务器后自启动:
pm2 startup
pm2 save
补充一些 PM2 的常用命令:
pm2 list # 查看所有运行中的应用
pm2 stop 0 # 停止 id 为 0 的应用
pm2 restart # 重启
pm2 delete 0 # 删除 id 为 0 的应用
pm2 monit # 显示每个应用程序的CPU和内存占用情况
pm2 show [name] # 显示应用程序的所有信息
pm2 save # 保存当前应用列表
pm2 startup # 创建开机自启动命令
默认会运行在 http://localhost:3000 可以通过 IP 直接访问,这里补充一下使用 Nginx 反代:
server {
server_name umami.yourdomain.com;
location / {
proxy_pass http://localhost:3000;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
Umami启动关闭
更新 Umami
首先停止运行:
pm2 stop umami
拉取最新文件:
git pull
重新安装并构建:
npm install
npm run build
重新启动:
pm2 restart umami
简单使用
Umami 安装好后,默认用户名为 admin,默认密码为 umami
插入网站
找到Get tracking code 按钮,会弹出一段代码,复制到你网站中的
标签里就行了。
123
hihihi
hihihi
wqdqwdqwdqw
1213664
回复测速
中午好(。・∀・)ノ゙嗨
晚上好