관리자 유입 통계 추가 v1.5.35
This commit is contained in:
@@ -5,6 +5,10 @@ import {
|
||||
normalizePageSlugForAnalytics,
|
||||
normalizePostSlugForAnalytics
|
||||
} from '../../lib/analytics.js'
|
||||
import {
|
||||
classifyAnalyticsDevice,
|
||||
classifyAnalyticsTrafficSource
|
||||
} from '../../lib/analytics-traffic.js'
|
||||
import { getPageBySlug, getPostBySlug } from '../repositories/content-repository.js'
|
||||
import {
|
||||
createVisitorHashFromEvent,
|
||||
@@ -15,6 +19,8 @@ const pageviewInputSchema = z.object({
|
||||
path: z.string().trim().min(1).max(500),
|
||||
postSlug: z.string().trim().max(200).optional().default(''),
|
||||
pageSlug: z.string().trim().max(200).optional().default(''),
|
||||
referrer: z.string().trim().max(1000).optional().default(''),
|
||||
currentUrl: z.string().trim().max(1000).optional().default(''),
|
||||
read: z.boolean().optional().default(false)
|
||||
})
|
||||
|
||||
@@ -67,11 +73,19 @@ export const handleAnalyticsPageview = async (event) => {
|
||||
|
||||
const visitorHash = createVisitorHashFromEvent(event)
|
||||
const isReadEvent = Boolean(body.read)
|
||||
const traffic = {
|
||||
...classifyAnalyticsTrafficSource({
|
||||
referrer: body.referrer,
|
||||
currentUrl: body.currentUrl
|
||||
}),
|
||||
...classifyAnalyticsDevice(userAgent)
|
||||
}
|
||||
|
||||
await recordAnalyticsPageview({
|
||||
visitorHash,
|
||||
postId,
|
||||
pageId,
|
||||
traffic,
|
||||
recordSite: !isReadEvent,
|
||||
recordView: (Boolean(postId) || Boolean(pageId)) && !isReadEvent,
|
||||
recordRead: Boolean(postId) && isReadEvent
|
||||
|
||||
Reference in New Issue
Block a user