Mwongozo wa Kuunganisha Idhini ya Vidakuzi vya PostHog Product Analytics: Kitabu cha Mchezo cha Usanidi wa Self-Hosted na Cloud kwa 2026
PostHog ni jukwaa la uchambuzi wa bidhaa ambalo timu za uhandisi zinafikiia zinapotaka uchambuzi wa bidhaa, urejeshaji wa vikao, bendera za vipengele, majaribio, tafiti, na uchambuzi wa wavuti katika safu moja badala ya wauzaji watano waliounganishwa pamoja. Ujumuishaji huo ndio pendekezo la thamani. Pia ndiyo sababu usanidi wa kawaida wa PostHog unabeba wajibu wa idhini uliojumuishwa zaidi kuliko karibu zana nyingine yoyote ambayo mchapishaji ataweka. Wito sawa wa posthog.init() unaonasa matukio ya bidhaa unaweza kuanza kurekodi vikao, kutathmini bendera za vipengele dhidi ya kitambulisho endelevu, na kupanga maonyesho ya tafiti — na kila moja ya shughuli hizo inashirikisha msingi tofauti wa kisheria chini ya GDPR, ePrivacy, na CCPA. Habari njema ni kwamba PostHog inakuja na moja ya API za idhini zilizo na undani zaidi katika mfumo wa ikolojia wa uchambuzi; kazi iko katika kuzitumia kweli kweli. Mwongozo huu unaeleza jinsi ya kusanidi PostHog ili msimamo wa kisheria ulingane na ukweli wa kiufundi katika usanidi wa self-hosted na PostHog Cloud, katika maeneo ya US na EU, na katika uso kamili wa uchambuzi, urejeshaji, bendera, na tafiti.
Kwa nini PostHog inahitaji idhini — na kwa nini jibu sio sawa kwa kila moduli
SDK ya wavuti ya PostHog si lebo tu ya ukurasa. Katika uanzishaji wa kawaida SDK inaweka ingizo moja au zaidi la uendelevu wa mhusika wa kwanza — kwa chaguomsingi mfumo uliounganishwa wa kuki pamoja na localStorage wenye ufunguo chini ya ph_{projectKey}_posthog — inazalisha kitambulisho tofauti thabiti, inanasa mwonekano wa awali wa ukurasa na rejea, vigezo vya UTM, na vitambulisho vya mibofyo, na kufungua njia ya matukio ya muda mrefu kwenda kwa mwenyeji wa uingizaji uliowekwa. Ikiwa urejeshaji wa kikao umewezeshwa katika ngazi ya mradi, SDK pia huanza kutiririka rekodi endelevu ya DOM iliyoonyeshwa, kuratibu panya, na matukio ya uingizaji. Ikiwa bendera za vipengele zimesanidiwa, SDK zinazitathmini dhidi ya kitambulisho tofauti, inahifadhi maamuzi kwa kikao, na hutoa tukio $feature_flag_called kwa kila tathmini.
Kila moja ya shughuli hizi inaoana na lango tofauti la idhini. Kuhifadhi kitambulisho tofauti ni operesheni ya uhifadhi na upatikanaji chini ya Kifungu 5(3) cha Maelekezo ya ePrivacy na inahitaji idhini ya awali, iliyotolewa kwa uhuru, maalum, iliyoarifiwa, na isiyoeleweka mbili katika EEA yote, UK, na mamlaka yoyote iliyoingiza kiwango sawa. Kunasa matukio ya tabia ni usindikaji wa data ya kibinafsi chini ya GDPR kwa sababu mchanganyiko wa kitambulisho, anwani ya IP, na athari ya kitabia unatosha kutambua mtu binafsi. Urejeshaji wa kikao uko katika kategoria tofauti, kali zaidi chini ya mwongozo wa EDPB kuhusu urejeshaji wa vikao — urejeshaji unanasa DOM iliyoonyeshwa na uwanja wowote wa uingizaji usio na kiatu na unahitaji idhini wazi, ya kina ambayo ni tofauti na idhini ya uchambuzi wa jumla. Tathmini ya bendera ya kipengele ndiyo inayohitaji uzingativu: ukaguzi wa bendera unaorejesha boolean hauhitaji idhini yenyewe, lakini kuhifadhi ugawaji wa bendera ya mtumiaji kwa kitambulisho thabiti katika vikao kunastahili, kwa sababu ndivyo majaribio yanayotegemea bendera yanaunda data inayofuatiliwa ya ngazi ya mtumiaji.
Nini PostHog inaandika kabla ya idhini — na nini lazima kukandamizwa
SDK ya kawaida ya PostHog Browser inaandika yafuatayo wakati wa uanzishaji: ingizo moja lililounganishwa la kuki na localStorage chini ya ph_{projectKey}_posthog lenye kitambulisho tofauti, kitambulisho cha kikao, na maamuzi ya bendera za vipengele, pamoja na, wakati urejeshaji wa kikao umewezeshwa, bafa ya nyongeza ya kurekodi ya ndani ya kumbukumbu inayotoa kwa kiungo cha uingizaji kila sekunde chache. SDK pia hutuma tukio la mara moja $pageview na, ikiwa ukamataji wa moja kwa moja umewashwa, kila mibofyo inayofuata, mwingiliano wa fomu, na mibofyo ya hasira kwenye ukurasa.
Mfano uliopendekezwa ni kuanzisha PostHog na opt_out_capturing_by_default: true na disable_session_recording: true, kisha kubadilisha bendera zote mbili mara bango la idhini linaporejesha ishara chanya. Hii ndiyo msimamo wa ujumuishaji ambao nyaraka za PostHog sasa zinaupendekeza, na ndiyo msimamo unaopita ukaguzi wa mdhibiti kwa sababu unabadilisha chaguomsingi: hakuna kinachonaswa mpaka idhini irekodiwe, na SDK hutoa mpito safi badala ya urekebisho wa hali.
Vidakuzi, maingizo ya localStorage, na vitambulisho vinavyohifadhiwa na PostHog
Browser SDK 1.x inaandika ingizo moja la uendelevu kwa mradi, wenye ufunguo chini ya ph_{projectKey}_posthog, na muda wa kumalizika wa siku 365 kwa chaguomsingi. Chaguo la uanzishaji la persistence linadhibiti mfumo wa msingi: cookie peke yake, localStorage peke yake, localStorage+cookie (chaguomsingi), sessionStorage, au memory. Kwa usanidi wa kwanza wa idhini, uendelevu wa memory ndio chaguomsingi sahihi idhini haijapatikana bado — inahakikisha hakuna kitambulisho kinachoweza kuishi zaidi ya kikao cha ukurasa — na mpito kwenda localStorage+cookie mara idhini inapobadilika. SDK pia inaandika alama ya opt-in au opt-out chini ya __ph_opt_in_out_{projectKey} kukumbuka chaguo la mtumiaji katika ziara; alama hiyo yenyewe ni kuki inayohitajika sana kwa sababu inahifadhi uamuzi wa idhini.
Kuoanisha moduli za PostHog na mifumo ya idhini
PostHog haitekelezi asili IAB TCF au Jukwaa la Faragha la Kimataifa la IAB, na haijengwa kama muuzaji wa teknolojia ya matangazo. Hata hivyo, inaunganishwa na Google Consent Mode v2 kupitia daraja la upande wa mchapishaji, inafunua API ya asili ya opt-in na opt-out, na inastahili kichwa cha Do Not Track kupitia chaguo la uanzishaji la respect_dnt. Mfano unaofanya kazi katika uzalishaji unashughulikia kila moduli ya PostHog kama lango tofauti linalofungwa na ishara maalum ya CMP.
- Matukio ya uchambuzi wa bidhaa yanafungwa na madhumuni ya uchambuzi. Katika istilahi za TCF hii mara nyingi ni madhumuni ya 8 (kupima utendaji wa maudhui) pamoja na madhumuni ya 1 (kuhifadhi na/au kufikia taarifa). Kwa Consent Mode hii inaoana na analytics_storage.
- Urejeshaji wa kikao uko nyuma ya lango kali zaidi. Urejeshaji wa kikao wa PostHog unanasa DOM iliyoonyeshwa na uwanja wowote wa uingizaji usio na kiatu, kwa hivyo opt-in ya ngazi ya mapendeleo au utafiti tofauti na uchambuzi ndiyo msimamo unaoweza kutetewa chini ya mwongozo wa EDPB.
- Bendera za vipengele na majaribio zinaweza kufanya kazi na tathmini ya muda mfupi ya ndani ya kumbukumbu chini ya msingi wa faida halali wakati lengo ni kutofautiana tu ukurasa ulioonyeshwa. Ugawaji wa bendera endelevu uliounganishwa na kitambulisho thabiti katika vikao unahitaji idhini sawa na uchambuzi, kwa sababu ndipo bendera inakuwa data inayoweza kufuatiliwa ya ngazi ya mtumiaji.
- Tafiti na maoni yanafungwa na lango sawa na urejeshaji wa kikao zinapokusanya uingizaji wa maandishi huru, au na lango la uchambuzi zinapokusanya vipimo au majibu ya chaguo moja tu.
Mfano wa ujumuishaji unaofanya kazi
Usanidi wa rejeleo una sehemu nne: CMP inayofunua tukio la mabadiliko ya idhini la wakati halisi, bootstrap iliyocheleweshwa inayoanzisha PostHog na ukamataji na urejeshaji umezimwa, msikilizaji wa idhini unaogeuza opt_in_capturing na kitufe cha urekodaji wakati milango inayohusika inafunguliwa, na njia ya kujiondoa inayoita opt_out_capturing, inasimamisha bafa ya urejeshaji, na inafuta vitambulisho endelevu kupitia API ya reset ya SDK.
Utekelezaji wa Wavuti
Mfano safi zaidi ni kupakia SDK ya PostHog kwenye kila ukurasa lakini kuita posthog.init(apiKey, { api_host: 'https://eu.posthog.com', opt_out_capturing_by_default: true, disable_session_recording: true, persistence: 'memory', respect_dnt: true }) kama bootstrap ya awali. Jiandikishe kwa tukio la mabadiliko ya idhini la CMP. Wakati kategoria ya uchambuzi inabadilika kwenda kweli, ita posthog.set_config({ persistence: 'localStorage+cookie' }) ikifuatwa na posthog.opt_in_capturing(); hii inarejesha ukamataji wa matukio na mpito wa uendelevu unaanza kuandika kitambulisho tofauti. Wakati kategoria ya urejeshaji wa kikao inabadilika kwenda kweli, ita posthog.startSessionRecording(). Wakati lango lolote linapokujiondoa, ita posthog.opt_out_capturing() kwa lango la uchambuzi au posthog.stopSessionRecording() kwa lango la urejeshaji, kisha kumalisha maingizo ya uendelevu yanayohusika kupitia posthog.reset(), na kutuma ombi la kufuta kupitia API ya GDPR ya PostHog ikiwa mtumiaji ametumia haki yake ya kufuta.
Uteuzi wa Eneo: PostHog Cloud US dhidi ya EU dhidi ya Self-Hosted
PostHog inafanya kazi ya maeneo mawili ya wingu — US (us.posthog.com) na EU (eu.posthog.com) — na inasaidia usanidi wa self-hosted katika miundombinu yake yenyewe ya mteja. Kwa trafiki ya EEA na UK, wingu la EU ndio chaguomsingi sahihi; inaweka uingizaji, usindikaji, na uhifadhi ndani ya EEA na kupunguza uwezekano wa Schrems II unaobebwa na usanidi wowote wa uchambuzi katika eneo la US. Chaguo la uanzishaji la api_host linafunga eneo. PostHog iliyohifadhiwa kibinafsi inahamisha safu yote kwenye miundombinu yake yenyewe ya mchapishaji, ambayo ndiyo msimamo mkubwa zaidi wa makazi ya data lakini haiondoi wajibu wa idhini — msingi wa kisheria unafuata data, si opereta. Chaguo lolote linalochaguliwa lazima lionyeshwe katika taarifa ya faragha na rekodi ya kidhibiti ya usindikaji.
Ukamataji wa Upande wa Seva
PostHog inasaidia uingizaji wa matukio ya upande wa seva kupitia SDK za Python, Node, Go, Ruby, na PHP. Matukio ya upande wa seva hayako nje ya idhini — msingi wa kisheria unafuata data — lakini uingizaji wa upande wa seva humpa mchapishaji udhibiti kamili juu ya nyanja zipi zinatumwa na wakati. Mfano wa kawaida ni kunasa seti ndogo ya matukio ya muhimu tu kutoka upande wa seva chini ya maslahi halali, kisha kuimarisha matukio hayo na maelezo ya tabia kutoka kwa mteja tu baada ya mtumiaji kutoa idhini ya uchambuzi. Matukio ya upande wa seva na upande wa mteja yanaunganishwa kwenye kitambulisho sawa tofauti idhini ikibadilika; kabla ya idhini, matukio ya upande wa seva hutolewa na kitambulisho kisichojulikana, cha muda mfupi ambacho kinarejeshwa kwenye kila kikao.
Kuthibitisha Ujumuishaji na Njia ya Ukaguzi
Hatua ya uthibitishaji ndiyo wadhibiti wanaoangalia na ambayo wachapishaji mara nyingi wanapita. Usanidi sahihi uliounganishwa wa PostHog lazima upite majaribio manne kwa mfuatano. Kwanza, kikao safi cha kivinjari na bango linaloonekana lakini hakuna chaguo lililofanywa lazima lizalishe maombi sifuri kwa api_host iliyosanidiwa zaidi ya upakuliaji wa faili la SDK, vidakuzi sifuri vya ph_ katika document.cookie, na maingizo sifuri ya ph_ katika localStorage. Pili, kukataa uchambuzi lazima kudumishe hali hiyo — hakuna ukamataji, hakuna urekodaji, hakuna kitambulisho endelevu. Tatu, kukubali uchambuzi lazima kuzalisha mara moja tukio la $opt_in, ingizo lingelotarajiwa la uendelevu wa ph_{projectKey}_posthog na sifa sahihi za SameSite, na trafiki ya matukio ikitiririka kwenda kwa mwenyeji aliyesanidiwa. Nne, kujiondoa idhini baadaye lazima kusimamisha mara moja ukamataji na urejeshaji zaidi, kumalisha vitambulisho endelevu, na kuanzisha ombi la kufuta kupitia API ya GDPR ya PostHog ikiwa mtumiaji ameanzisha kufuta.
Matarajio ya njia ya ukaguzi chini ya miongozo ya bango la vidakuzi ya EDPB ya 2023 na vipaumbele vilivyofanywa upya vya kikosi kazi cha 2026 ni kwamba mchapishaji anaweza kuthibitisha, kwa tukio lolote katika mradi wa PostHog, kwamba mtumiaji aliyeizalisha alitoa idhini halali wakati wa ukamataji. Mfano wa kawaida ni kuweka toleo la idhini na muhuri wa wakati kama mali za mtu kwenye kitambulisho tofauti kupitia posthog.setPersonProperties({ consent_version: 'v3', consent_ts: ts }) ili kila tukio la mtu binafsi liweze kufuatiliwa hadi ingizo maalum la kumbukumbu ya idhini. Usanidi uliosanidiwa vizuri, ukioanishwa na uteuzi wa eneo unaofanana na hadhira, uendelevu ambao chaguomsingi ni kumbukumbu, na njia ya kufuta inayoamilishwa wakati wa kujiondoa, ndiyo kinachogeuza PostHog kutoka hatari ya mkusanyiko wa udhibiti hadi kituo cha utetezi cha safu ya uchambuzi wa bidhaa.