PostHog өнім аналитикасы Cookie келісімін интеграциялау нұсқаулығы: 2026 жылға арналған өз серверіңізде және бұлттық орналастыру кітапшасы
PostHog — өнім аналитикасын, сессияны қайта ойнатуды, мүмкіндік жалаушаларын, эксперименттерді, сауалнамаларды және веб-аналитиканы бес жеткізушіні бірге байлаудың орнына бір стекте алғысы келетін инженерлік командалар таңдайтын өнім аналитикасы платформасы. Бұл байлам — оның маңызды ұсынысы. Сонымен қатар бұл әдепкі PostHog орналастыруының баспагер орнататын кез келген басқа құралдан гөрі шоғырланған келісім міндеттерін алып жүретін себебі. Өнім оқиғаларын түсіретін сол posthog.init() шақыруы сессияларды жазуды бастай алады, тұрақты идентификаторға қарсы мүмкіндік жалаушаларын бағалай алады және сауалнама жарнамаларын кезекке қоя алады — және бұл әрекеттердің әрқайсысы GDPR, ePrivacy және CCPA бойынша әртүрлі заңды негізді қозғайды. Жақсы жаңалық — PostHog аналитика экожүйесіндегі ең егжей-тегжейлі келісім API-лерінің бірімен бірге келеді; мәселе оны шынымен пайдалануда. Бұл нұсқаулық өз серверіңіздегі орнатулар мен PostHog Cloud үшін, АҚШ пен ЕО аймақтарында, аналитика, ойнату, жалауша және сауалналардың толық бетінде заңды позиция техникалық шындыққа сәйкес келетіндей PostHog-ты орналастыру жолын көрсетеді.
PostHog неліктен келісімді талап етеді — және неліктен жауап әрбір модуль үшін бірдей емес
PostHog веб SDK пассивті бет тегі емес. Әдепкі инициализация кезінде SDK бір немесе бірнеше бірінші тарап тұрақтылық жазбасын орнатады — әдепкі бойынша ph_{projectKey}_posthog астында кілтталған біріктірілген cookie плюс localStorage схемасы — тұрақты ерекше идентификатор жасайды, referrer, UTM параметрлері және нұқу идентификаторлары бар бастапқы бет қарауын түсіреді, конфигурацияланған қабылдау хостына ұзақ өмірлі оқиғалар арнасын ашады. Сессияны қайта ойнату жоба деңгейінде қосулы болса, SDK сонымен қатар визуализацияланған DOM, тышқан координаттары және енгізу оқиғаларының үздіксіз жазбасын ағынды жіберуді бастайды. Мүмкіндік жалаушалары конфигурацияланған болса, SDK оларды ерекше идентификаторға қарсы бағалайды, сессия үшін шешімдерді сақтайды және әрбір бағалау үшін $feature_flag_called оқиғасын шығарады.
Бұл әрекеттердің әрқайсысы әртүрлі келісім қақпасына сәйкес келеді. Ерекше идентификаторды сақтау — ePrivacy директивасының 5(3) бабы бойынша сақтау-және-қол жеткізу операциясы, ЕЭА, Ұлыбритания және сол стандартты қабылдаған кез келген юрисдикцияда алдын ала, еркін берілген, нақты, хабардар және бір мағыналы келісімді талап етеді. Мінез-құлық оқиғаларын түсіру GDPR бойынша жеке деректерді өңдеу болып табылады, өйткені идентификатор, IP мекенжайы және мінез-құлық ізінің комбинациясы жеке тұлғаны айқындауға жеткілікті. Сессияны қайта ойнату EDPB-ның сессияны қайта ойнату бойынша нұсқауындағы бөлек, қатаңырақ санатқа жатады — ойнату визуализацияланған DOM мен кез келген маскаланбаған енгізу өрісін түсіреді және жалпы аналитика келісімінен ерекше айқын, егжей-тегжейлі келісімді талап етеді. Мүмкіндік жалаушасын бағалау ең нәзік мәселе: логикалық мән қайтаратын жалауша тексеруінің өзі келісімді талап етпейді, бірақ пайдаланушының жалауша тапсырмасын сессиялар арасындағы тұрақты идентификаторда сақтау талап етеді, өйткені жалаушаға негізделген эксперименттеу қадағаланатын пайдаланушы деңгейіндегі деректерді осылай жасайды.
PostHog келісімге дейін не жазады — және не басылуы керек
Әдепкі PostHog Browser SDK инициализация кезінде келесіні жазады: ерекше идентификаторды, сессия идентификаторын және мүмкіндік жалаушасы шешімдерін қамтитын ph_{projectKey}_posthog астындағы бір біріктірілген cookie және localStorage жазбасын, сонымен қатар сессияны қайта ойнату қосулы болса, бірнеше секунд сайын қабылдау соңғы нүктесіне тазаланатын қосымша жадтағы жазу буферін. SDK сонымен қатар дереу $pageview оқиғасын жібереді және автокапча қосулы болса, беттегі кейінгі әрбір нұқу, пішін өзарасымы және ашулы нұқуды жібереді.
Ұсынылатын үлгі — PostHog-ты opt_out_capturing_by_default: true және disable_session_recording: true параметрлерімен инициализациялау, содан кейін келісім баннері оң сигнал қайтарған кезде екі жалаушаны да ауыстыру. Бұл PostHog құжаттамасы қазір ұсынатын интеграция позасы, және бұл реттеушінің тексерісінен аман шығатын поза, өйткені ол әдепкіні кері бұрады: келісім тіркелгенге дейін ештеңе түсірілмейді, және SDK күйлі ретрофиттің орнына таза ауысу қамтамасыз етеді.
PostHog сақтайтын cookie-лер, localStorage жазбалары және идентификаторлар
Browser SDK 1.x жоба басына бір тұрақтылық жазбасын жазады, ph_{projectKey}_posthog астында кілтталған, әдепкі бойынша 365 күндік мерзімі аяқталатын. persistence init опциясы негізгі механизмді басқарады: тек cookie, тек localStorage, localStorage+cookie (әдепкі), sessionStorage немесе memory. Келісімді алдыңғы орынға қоятын орналастыру үшін, келісім берілмеген кезде memory тұрақтылығы дұрыс әдепкі болып табылады — бұл бет сессиясынан тыс ешбір идентификатор тіршілік етпеуін қамтамасыз етеді — келісім ауысқаннан кейін localStorage+cookie-ге ауысу орын алады. SDK сонымен қатар кірулер арасында пайдаланушының таңдауын есте сақтайтын __ph_opt_in_out_{projectKey} астынан opt-in немесе opt-out маркерін жазады; бұл маркердің өзі келісім шешімін сақтайтындықтан қатаң қажетті cookie болып табылады.
PostHog модульдерін келісім жақтауларына картаға түсіру
PostHog IAB TCF немесе IAB Global Privacy Platform-ды туылмыс жолмен іске асырмайды және жарнама технологиясы жеткізушісі ретінде жасалмаған. Дегенмен ол баспагер жағындағы байланыс арқылы Google Consent Mode v2-мен интеграцияланады, туылмыс opt-in және opt-out API-ді ашады және respect_dnt init опциясы арқылы Do Not Track тақырыпшасын құрметтейді. Өндірісте жұмыс істейтін үлгі әрбір PostHog модулін нақты CMP сигналына байланысты бөлек қақпа ретінде қарастырады.
- Өнім аналитикасы оқиғалары аналитика мақсатына байланысты. TCF терминдерінде бұл жиі 8-мақсат (мазмұн нәтижесін өлшеу) және 1-мақсатпен (ақпаратты сақтау және/немесе оған қол жеткізу) біріктіріледі. Consent Mode үшін бұл analytics_storage-ге картаға түседі.
- Сессияны қайта ойнату қатаңырақ қақпаның артында. PostHog сессияны қайта ойнату визуализацияланған DOM мен кез келген маскаланбаған енгізу өрісін түсіреді, сондықтан EDPB нұсқауы бойынша аналитикадан ерекше мүмкіндіктер деңгейіндегі немесе зерттеу деңгейіндегі opt-in қорғалатын поза болып табылады.
- Мүмкіндік жалаушалары мен эксперименттер мақсат тек визуализацияланған бетті өзгерту болса, заңды мүдде негізінде өткінші жадтағы бағалаумен жұмыс жасай алады. Сессиялар арасындағы тұрақты идентификаторға байланысқан тұрақты жалауша тапсырмасы аналитика сияқты бірдей келісімді талап етеді, өйткені сол кезде жалауша қадағаланатын пайдаланушы деңгейіндегі деректер нүктесіне айналады.
- Сауалнамалар мен кері байланыс еркін мәтін енгізуін жинаған кезде сессияны қайта ойнатумен бірдей қақпаға, немесе тек рейтингтерді немесе бір таңдамалы жауаптарды жинаған кезде аналитика қақпасына байланысты.
Жұмыс жасайтын интеграция үлгісі
Сілтемелік орналастырудың төрт бөлігі бар: нақты уақыттағы келісім өзгерісі оқиғасын ашатын CMP, түсіру мен ойнатуды өшіріп PostHog-ты инициализациялайтын кейінге қалдырылған жүктеме, тиісті қақпалар ашылған кезде opt_in_capturing-ті және жазу қосқышын ауыстыратын келісім тыңдаушы, және opt_out_capturing-ті шақыратын, ойнату буферін тоқтататын және SDK қалпына келтіру API арқылы тұрақты идентификаторларды тазалайтын қайтару жолы.
Веб іске асыру
Ең таза үлгі — PostHog SDK-ны әрбір бетке жүктеу, бірақ бастапқы жүктеме ретінде posthog.init(apiKey, { api_host: 'https://eu.posthog.com', opt_out_capturing_by_default: true, disable_session_recording: true, persistence: 'memory', respect_dnt: true }) шақыру. CMP-нің келісім өзгерісі оқиғасына жазылу. Аналитика санаты true-ге өткенде, posthog.set_config({ persistence: 'localStorage+cookie' }) шақырып, содан кейін posthog.opt_in_capturing() шақыру; бұл оқиғаны түсіруді қайта қосады және тұрақтылық ауысуы ерекше идентификаторды жазуды бастайды. Сессияны қайта ойнату санаты true-ге өткенде, posthog.startSessionRecording() шақыру. Кез келген қақпа кері алынған кезде, аналитика қақпасы үшін posthog.opt_out_capturing() немесе ойнату қақпасы үшін posthog.stopSessionRecording() шақыру, posthog.reset() арқылы тиісті тұрақтылық жазбаларын мерзімін аяқтату және пайдаланушы жою құқығын пайдаланса PostHog-тың GDPR API арқылы жою сұрауын жіберу.
Аймақты таңдау: PostHog Cloud АҚШ vs ЕО vs өз серверіңізде
PostHog екі бұлт аймағын басқарады — АҚШ (us.posthog.com) және ЕО (eu.posthog.com) — және тапсырыс берушінің өз инфрақұрылымында өз серверіндегі орнатуларды қолдайды. ЕЭА мен Ұлыбритания трафигі үшін ЕО бұлты дұрыс әдепкі; ол ЕЭА шеңберінде қабылдауды, өңдеуді және сақтауды сақтайды және кез келген АҚШ аймағының аналитика орналастыруы алып жүретін Schrems II тәуекелін азайтады. api_host init опциясы аймақты бекітеді. Өз серверінде PostHog барлық стекті баспагердің өз инфрақұрылымына ауыстырады, бұл деректер тұрғылықтылығының ең күшті позасы, бірақ келісім міндеттерін алып тастамайды — заңды негіз деректерді ізейді, оператордың емес. Қай опция таңдалса да, бұл жеке өмір туралы ескертуде және бақылаушының өңдеу жазбасында көрсетілуі тиіс.
Серверлік жақтан түсіру
PostHog Python, Node, Go, Ruby және PHP SDK-лары арқылы серверлік оқиға қабылдауды қолдайды. Серверлік оқиғалар келісімнен босатылмаған — заңды негіз деректерді ізейді — бірақ серверлік қабылдау баспагерге қандай өрістердің шығарылатынын және қашан толық бақылауды береді. Жалпы үлгі — заңды мүдде негізінде серверлік жақта минималды, тек маңызды оқиғалар жиынтығын түсіру, содан кейін пайдаланушы аналитика келісімін бергеннен кейін ғана клиенттен мінез-құлық мәліметтерімен бұл оқиғаларды байыту. Серверлік және клиенттік оқиғалар келісім ауысқанда бірдей ерекше идентификаторда қосылады; келісімге дейін серверлік оқиғалар әрбір сессияда қалпына келтірілетін анонимді, өткінші идентификатормен шығарылады.
Интеграция мен аудит ізін тексеру
Тексеру қадамы реттеушілер тексеретін және баспагерлер жиі өткізіп жіберетін нәрсе. Дұрыс интеграцияланған PostHog орналастыруы ретімен төрт тесттен өтуі керек. Біріншіден, баннер көрсетілген, бірақ таңдау жасалмаған таза браузер сессиясы SDK файлын жүктеуден тыс конфигурацияланған api_host-қа нөл сұрауды, document.cookie-де нөл ph_ cookie-лерді және localStorage-де нөл ph_ жазбаларды қайтаруы керек. Екіншіден, аналитиканы қабылдамау сол күйді сақтауы керек — түсіру жоқ, жазу жоқ, тұрақты идентификатор жоқ. Үшіншіден, аналитиканы қабылдау дереу $opt_in оқиғасын, дұрыс SameSite атрибуттары бар күтілетін ph_{projectKey}_posthog тұрақтылық жазбасын және конфигурацияланған хостқа ағатын оқиғалар трафигін қайтаруы керек. Төртіншіден, кейіннен келісімді кері алу одан әрі түсіру мен ойнатуды дереу тоқтатуы, тұрақты идентификаторлардың мерзімін аяқтауы және пайдаланушы жоюды пайдаланса PostHog-тың GDPR API арқылы жою сұрауын іске қосуы керек.
EDPB-нің 2023 жылғы cookie баннер нұсқауы мен жаңартылған 2026 жылғы жұмыс тобы басымдықтары бойынша аудит ізіне қатысты күтілім — баспагер PostHog жобасындағы кез келген оқиға үшін оны жасаған пайдаланушының түсіру сәтінде жарамды келісім бергенін дәлелдей алуы тиіс. Стандартты үлгі — posthog.setPersonProperties({ consent_version: 'v3', consent_ts: ts }) арқылы келісім нұсқасы мен уақыт белгісін ерекше идентификатордағы адам қасиеттері ретінде орнату, осылайша кез келген жеке оқиға нақты келісім журналы жазбасына дейін қадағаланады. Дұрыс қақпаланған орналастыру, аудиторияға сәйкес аймақ таңдауымен, жадты әдепкіге жоспарлайтын тұрақтылықпен және кері алу кезінде іске қосылатын жою жолымен жұпталған, PostHog-ты реттеуші шоғырлану тәуекелінен өнім аналитикасы стегінің қорғалатын орталығына айналдыратын нәрсе.