ANALYTICS_DB
第一方访问统计数据库的全部数据表和字段。
ANALYTICS_DB 是默认模板的访问统计数据库,初始表结构由 schema/analytics-init.sql 定义。这里按表介绍访问会话、统计事件和自定义属性,包括字段类型、能否为空、默认值和数据库约束。
时间和布尔值
时间字段使用 Unix 毫秒;布尔状态使用 SQLite INTEGER 保存,通常以 1 表示是、0 表示否。
analytics_session
保存一次访问会话的访客标识、设备信息、首次活动时间和服务端首次收到数据的时间。
| 字段 | 类型 | 可空 | 默认值 | 键 | 含义 |
|---|---|---|---|---|---|
site_id | TEXT | 否 | — | PK(组合) | 站点 ID,对应 config/deploy.ts 中的 analytics.site.id。 |
session_id | TEXT | 否 | — | PK(组合) | 访问会话 ID。 |
distinct_id | TEXT | 是 | — | — | 业务代码提供的访客标识。 |
browser | TEXT | 是 | — | — | 浏览器名称。 |
os | TEXT | 是 | — | — | 操作系统名称。 |
device | TEXT | 是 | — | — | 设备类型。 |
screen | TEXT | 是 | — | — | 屏幕尺寸。 |
language | TEXT | 是 | — | — | 浏览器语言。 |
country | TEXT | 是 | — | — | 国家或地区代码。 |
region | TEXT | 是 | — | — | 地区。 |
city | TEXT | 是 | — | — | 城市。 |
first_seen_at | INTEGER | 否 | — | — | 第一次活动时间,Unix 毫秒。 |
first_received_at | INTEGER | 否 | — | — | 服务端第一次收到该会话数据的时间,Unix 毫秒。 |
analytics_event
保存页面浏览和自定义事件,以及来源、设备、地理位置和性能指标。
| 字段 | 类型 | 可空 | 默认值 | 键 | 含义 |
|---|---|---|---|---|---|
event_id | TEXT | 否 | — | PK | 统计事件 ID。 |
site_id | TEXT | 否 | — | FK → analytics_session.(site_id, session_id)(组合外键) | 站点 ID,对应 config/deploy.ts 中的 analytics.site.id。 |
session_id | TEXT | 否 | — | FK → analytics_session.(site_id, session_id)(组合外键) | 访问会话 ID。 |
visit_id | TEXT | 否 | — | — | 本次访问 ID。 |
event_type | INTEGER | 否 | — | — | 统计事件类型:1 为页面浏览,2 为自定义事件,5 为性能数据。 |
event_name | TEXT | 是 | — | — | 事件名称。 |
url_path | TEXT | 否 | '' | — | 页面 URL 路径。 |
url_query | TEXT | 是 | — | — | 页面 URL 查询字符串。 |
page_title | TEXT | 是 | — | — | 页面标题。 |
hostname | TEXT | 否 | — | — | 页面主机名。 |
referrer_path | TEXT | 是 | — | — | 来源页面的路径。 |
referrer_query | TEXT | 是 | — | — | 来源页面的查询字符串。 |
referrer_domain | TEXT | 是 | — | — | 来源页面的域名。 |
utm_source | TEXT | 是 | — | — | UTM 来源。 |
utm_medium | TEXT | 是 | — | — | UTM 媒介。 |
utm_campaign | TEXT | 是 | — | — | UTM 活动名称。 |
utm_content | TEXT | 是 | — | — | UTM 内容标识。 |
utm_term | TEXT | 是 | — | — | UTM 关键词。 |
gclid | TEXT | 是 | — | — | Google Ads 点击标识。 |
fbclid | TEXT | 是 | — | — | Facebook 点击标识。 |
msclkid | TEXT | 是 | — | — | Microsoft Ads 点击标识。 |
ttclid | TEXT | 是 | — | — | TikTok 点击标识。 |
li_fat_id | TEXT | 是 | — | — | LinkedIn Ads 点击标识。 |
twclid | TEXT | 是 | — | — | X Ads 点击标识。 |
browser | TEXT | 是 | — | — | 浏览器名称。 |
os | TEXT | 是 | — | — | 操作系统名称。 |
device | TEXT | 是 | — | — | 设备类型。 |
screen | TEXT | 是 | — | — | 屏幕尺寸。 |
language | TEXT | 是 | — | — | 浏览器语言。 |
country | TEXT | 是 | — | — | 国家或地区代码。 |
region | TEXT | 是 | — | — | 地区。 |
city | TEXT | 是 | — | — | 城市。 |
distinct_id | TEXT | 是 | — | — | 业务代码提供的访客标识。 |
tag | TEXT | 是 | — | — | 事件标签。 |
lcp | REAL | 是 | — | — | Largest Contentful Paint,单位为毫秒。 |
inp | REAL | 是 | — | — | Interaction to Next Paint,单位为毫秒。 |
cls | REAL | 是 | — | — | Cumulative Layout Shift。 |
fcp | REAL | 是 | — | — | First Contentful Paint,单位为毫秒。 |
ttfb | REAL | 是 | — | — | Time to First Byte,单位为毫秒。 |
duration | REAL | 是 | — | — | 事件或页面停留时长,单位由采集端约定。 |
created_at | INTEGER | 否 | — | — | 创建时间,Unix 毫秒。 |
received_at | INTEGER | 否 | — | — | 收到数据的时间,Unix 毫秒。 |
analytics_event_property
按 Key 保存事件的自定义属性。
| 字段 | 类型 | 可空 | 默认值 | 键 | 含义 |
|---|---|---|---|---|---|
event_id | TEXT | 否 | — | PK(组合) FK → analytics_event.event_id(级联删除) | 统计事件 ID。 |
data_key | TEXT | 否 | — | PK(组合) | 自定义属性或特征的 Key。 |
site_id | TEXT | 否 | — | — | 站点 ID,对应 config/deploy.ts 中的 analytics.site.id。 |
data_type | INTEGER | 否 | — | — | 属性值类型:1 字符串、2 数值、3 布尔值、4 日期、5 字符串数组。 |
string_value | TEXT | 是 | — | — | 字符串值。 |
number_value | REAL | 是 | — | — | 数值。 |
date_value | INTEGER | 是 | — | — | 日期值,Unix 毫秒。 |
created_at | INTEGER | 否 | — | — | 创建时间,Unix 毫秒。 |
analytics_session_trait
按 Key 保存会话级自定义特征。
| 字段 | 类型 | 可空 | 默认值 | 键 | 含义 |
|---|---|---|---|---|---|
site_id | TEXT | 否 | — | PK(组合) FK → analytics_session.(site_id, session_id)(级联删除) | 站点 ID,对应 config/deploy.ts 中的 analytics.site.id。 |
session_id | TEXT | 否 | — | PK(组合) FK → analytics_session.(site_id, session_id)(级联删除) | 访问会话 ID。 |
data_key | TEXT | 否 | — | PK(组合) | 自定义属性或特征的 Key。 |
data_type | INTEGER | 否 | — | — | 特征值类型:1 字符串、2 数值、3 布尔值、4 日期、5 字符串数组。 |
string_value | TEXT | 是 | — | — | 字符串值。 |
number_value | REAL | 是 | — | — | 数值。 |
date_value | INTEGER | 是 | — | — | 日期值,Unix 毫秒。 |
distinct_id | TEXT | 是 | — | — | 业务代码提供的访客标识。 |
updated_at | INTEGER | 否 | — | — | 最后更新时间,Unix 毫秒。 |