PostHog პროდუქტის ანალიტიკა Cookie-ს თანხმობის ინტეგრაციის სახელმძღვანელო: Self-Hosted და Cloud განლაგების სახელმძღვანელო 2026 წლისთვის

PostHog არის პროდუქტის ანალიტიკის პლატფორმა, რომლისკენაც ინჟინერიის გუნდები მიმართავენ, როდესაც სურთ პროდუქტის ანალიტიკა, სესიის გადათამაშება, ფუნქციის ალმები, ექსპერიმენტები, გამოკითხვები და ვებ-ანალიტიკა ერთ სტეკში, ვიდრე ხუთი გამყიდველის ერთად შეკვრა. ეს გაერთიანება არის ღირებულების წინადადება. ეს ასევე არის მიზეზი, რის გამოც ნაგულისხმევი PostHog განლაგება ატარებს უფრო კონცენტრირებულ თანხმობის ვალდებულებებს, ვიდრე თითქმის ნებისმიერი სხვა ინსტრუმენტი, რომელსაც გამომცემელი დააყენებს. იგივე posthog.init() გამოძახება, რომელიც იჭერს პროდუქტის მოვლენებს, ასევე შეუძლია დაიწყოს სესიების ჩაწერა, შეაფასოს ფუნქციის ალმები მდგრადი იდენტიფიკატორის მიხედვით, და გამოკითხვის შთაბეჭდილებები რიგში ჩააყენოს — და ამ საქმიანობათაგან თითოეული სხვადასხვა სამართლებრივ საფუძველს ეხება GDPR, ePrivacy და CCPA-ს მიხედვით. კარგი ამბავი ის არის, რომ PostHog ანალიტიკის ეკოსისტემაში ერთ-ერთი ყველაზე დეტალური თანხმობის API-ით მოდის; საქმე მდგომარეობს მის რეალურ გამოყენებაში. ეს სახელმძღვანელო განიხილავს, თუ როგორ განვახორციელოთ PostHog ისე, რომ სამართლებრივი პოზიცია შეესაბამებოდეს ტექნიკურ რეალობას self-hosted ინსტალაციებსა და PostHog Cloud-ში, აშშ და EU რეგიონებში, და ანალიტიკის, გადათამაშების, ალმებისა და გამოკითხვების სრულ ზედაპირზე.

რატომ სჭირდება PostHog-ს თანხმობა — და რატომ განსხვავდება პასუხი თითოეული მოდულისთვის

PostHog-ის ვებ SDK პასიური გვერდის ტეგი არ არის. ნაგულისხმევ ინიციალიზაციაზე SDK ადგენს ერთ ან მეტ პირველი მხარის მდგრადობის ჩანაწერს — ნაგულისხმევად cookie-ს და localStorage-ის კომბინირებული სქემა, გასაღებულია ph_{projectKey}_posthog-ის ქვეშ — ქმნის სტაბილური განსხვავებულ იდენტიფიკატორს, იჭერს საწყის გვერდის ნახვას referrer-ით, UTM პარამეტრებით და დაწკაპუნების იდენტიფიკატორებით, და ხსნის გრძელვადიან მოვლენების არხს კონფიგურირებულ მიმღებ ჰოსტამდე. თუ სესიის გადათამაშება პროექტის დონეზე ჩართულია, SDK ასევე იწყებს გადმოცემული DOM-ის, მაუსის კოორდინატებისა და შეყვანის მოვლენების უწყვეტი ჩანაწერის სტრიმინგს. თუ ფუნქციის ალმები კონფიგურირებულია, SDK მათ განსხვავებული იდენტიფიკატორის მიხედვით აფასებს, ინარჩუნებს გადაწყვეტილებებს სესიისთვის, და თითოეული შეფასებისთვის $feature_flag_called მოვლენას გამოსცემს.

ამ საქმიანობათაგან თითოეული განსხვავებულ თანხმობის კარიბჭეს ასახავს. განსხვავებული იდენტიფიკატორის შენარჩუნება ePrivacy დირექტივის მუხლი 5(3)-ის მიხედვით შენახვა-და-წვდომის ოპერაციაა და EEA-ში, დიდ ბრიტანეთსა და ნებისმიერ იურისდიქციაში, რომელმაც იგივე სტანდარტი შემოიღო, მოითხოვს წინასწარ, თავისუფლად მიცემულ, სპეციფიკურ, ინფორმირებულ და ცალსახა თანხმობას. ქცევითი მოვლენების ჩაწერა არის პერსონალური მონაცემების დამუშავება GDPR-ის მიხედვით, რადგან იდენტიფიკატორის, IP-მისამართის და ქცევითი კვალის კომბინაცია საკმარისია ინდივიდის გამოსარჩევად. სესიის გადათამაშება EDPB-ის სესიის გადათამაშების სახელმძღვანელოს მიხედვით ცალკე, უფრო მკაცრ კატეგორიაში ხვდება — გადათამაშება იჭერს გადმოცემული DOM-ს და ნებისმიერ შეუნიღბავ შეყვანის ველს, და მოითხოვს ზოგადი ანალიტიკის თანხმობისგან განსხვავებულ ექსპლიციტურ, დეტალიზებულ თანხმობას. ფუნქციის ალმების შეფასება ყველაზე დახვეწილია: ალმის შემოწმება, რომელიც ბულიანს აბრუნებს, თავად არ საჭიროებს თანხმობას, მაგრამ მომხმარებლის ალმის მინიჭების სტაბილური იდენტიფიკატორისთვის სესიებს მიღმა შენარჩუნება მოითხოვს, რადგან ასე ქმნის ალმზე დაფუძნებული ექსპერიმენტაცია თვალთვალადი მომხმარებლის დონის მონაცემებს.

რას წერს PostHog თანხმობამდე — და რა უნდა ჩახშობდეს

ნაგულისხმევი PostHog Browser SDK ინიციალიზაციისას წერს შემდეგს: ერთ კომბინირებული cookie-სა და localStorage ჩანაწერს ph_{projectKey}_posthog-ის ქვეშ, რომელიც შეიცავს განსხვავებული იდენტიფიკატორს, სესიის იდენტიფიკატორს და ფუნქციის ალმების გადაწყვეტილებებს, გარდა ამისა, სესიის გადათამაშების ჩართვისას, დამატებითი მეხსიერებაში ჩაწერის ბუფერს, რომელიც რამდენიმე წამში ერთხელ მიმღები ბოლო წერტილამდე ასუფთავდება. SDK ასევე დაუყოვნებლივ აგზავნის $pageview მოვლენას და, თუ ავტოჩაწერა ჩართულია, გვერდზე ყველა შემდგომ დაწკაპუნებას, ფორმასთან ურთიერთქმედებასა და rage-click-ს.

რეკომენდებული შაბლონია PostHog-ის ინიციალიზაცია opt_out_capturing_by_default: true-ით და disable_session_recording: true-ით, შემდეგ ორივე ალმის გადართვა თანხმობის ბანერის დადებითი სიგნალის დაბრუნებისას. ეს არის ინტეგრაციის პოზა, რომელსაც PostHog-ის დოკუმენტაცია ახლა გვირჩევს, და ეს არის პოზა, რომელიც მარეგულირებლის განხილვას გადარჩება, რადგან ნაგულისხმევს ზემოქმედებით ახდენს: არაფერი ჩაიწერება სანამ თანხმობა არ დაფიქსირდება, და SDK უზრუნველყოფს სუფთა გადასვლას სტეიტფულ რეტროფიტის ნაცვლად.

Cookie-ები, localStorage ჩანაწერები და იდენტიფიკატორები, რომლებსაც PostHog ინარჩუნებს

Browser SDK 1.x წერს ერთ მდგრადობის ჩანაწერს პროექტზე, გასაღებულია ph_{projectKey}_posthog-ის ქვეშ, ნაგულისხმევად 365-დღიანი ვადით. persistence init ოფციონი აკონტროლებს ძირეულ მექანიზმს: მხოლოდ cookie, მხოლოდ localStorage, localStorage+cookie (ნაგულისხმევი), sessionStorage ან memory. თანხმობა-პირველი განლაგებისთვის, memory მდგრადობა არის სწორი ნაგულისხმევი, სანამ თანხმობა ჯერ კიდევ არ არის მიცემული — ეს უზრუნველყოფს, რომ არცერთი იდენტიფიკატორი გვერდის სესიას გადარჩეს — localStorage+cookie-ზე გადასვლით, თანხმობის ჩართვისთანავე. SDK ასევე წერს opt-in ან opt-out მარკერს __ph_opt_in_out_{projectKey}-ის ქვეშ, რომ ვიზიტებს მიღმა მომხმარებლის არჩევანი გაიხსენოს; ეს მარკერი თავად არის მკაცრად საჭირო cookie, რადგან ინარჩუნებს თანხმობის გადაწყვეტილებას.

PostHog მოდულების თანხმობის ჩარჩოებში დარტყმა

PostHog არ ახორციელებს IAB TCF-ს ან IAB Global Privacy Platform-ს ნატიურად, და არ არის აგებული ad-tech გამყიდველად. თუმცა, ის ინტეგრირდება Google Consent Mode v2-თან გამომცემლის მხარის bridging-ის მეშვეობით, ამჟღავნებს ნატიური opt-in და opt-out API-ს, და პატივს სცემს Do Not Track სათაურს respect_dnt init ოფციონის მეშვეობით. სქემა, რომელიც წარმოებაში მუშაობს, თითოეულ PostHog მოდულს კონკრეტული CMP სიგნალთან დაკავშირებულ ცალკე კარიბჭედ მოიაზრებს.

სამუშაო ინტეგრაციის შაბლონი

საცნობარო განლაგებას ოთხი ნაწილი აქვს: CMP, რომელიც რეალურ დროში ამჟღავნებს თანხმობის ცვლილების მოვლენას, გადადებული bootstrap, რომელიც PostHog-ს ჩაწერისა და გადათამაშების გამორთვით ახდენს ინიციალიზაციას, თანხმობის მსმენელი, რომელიც opt_in_capturing-ს და ჩაწერის გადამრთველს ახდენს გადართვას, როდესაც შესაბამისი კარიბჭეები გაიხსნება, და გატანის გზა, რომელიც opt_out_capturing-ს ეძახის, გადათამაშების ბუფერს ჩერდება, და SDK-ის reset API-ის მეშვეობით მდგრადი იდენტიფიკატორებს ასუფთავებს.

ვებ-განხორციელება

ყველაზე სუფთა შაბლონია PostHog SDK-ის ყველა გვერდზე ჩართვა, მაგრამ საწყისი bootstrap-ის სახით 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 US vs EU vs self-hosted

PostHog ოპერირებს ორ cloud რეგიონში — US (us.posthog.com) და EU (eu.posthog.com) — და მხარს უჭერს self-hosted ინსტალაციებს მომხმარებლის საკუთარ ინფრასტრუქტურაზე. EEA და დიდი ბრიტანეთის ტრაფიკისთვის EU cloud სწორი ნაგულისხმევია; ის ინგესციას, დამუშავებასა და შენახვას EEA-ს შიგნით ინარჩუნებს და ამცირებს Schrems II-ს გამოვლინებას, რომელსაც ნებისმიერი აშშ-ს რეგიონის ანალიტიკის განლაგება ატარებს. api_host init ოფციონი რეგიონს ამაგრებს. Self-hosted PostHog მთელ სტეკს გამომცემლის საკუთარ ინფრასტრუქტურაზე გადაიტანს, რაც მონაცემთა რეზიდენტობის ყველაზე ძლიერი პოზიციაა, მაგრამ თანხმობის ვალდებულებებს არ შლის — სამართლებრივი საფუძველი მიჰყვება მონაცემებს, არა ოპერატორს. რომელი ვარიანტიც არ უნდა შეირჩეს, კონფიდენციალურობის შეტყობინებასა და კონტროლერის დამუშავების ჩანაწერში უნდა აისახოს.

სერვერის მხარის ჩაწერა

PostHog მხარს უჭერს სერვერის მხარის მოვლენების ინგესციას Python, Node, Go, Ruby და PHP SDK-ების მეშვეობით. სერვერის მხარის მოვლენები თანხმობისგან გათავისუფლებული არ არის — სამართლებრივი საფუძველი მიჰყვება მონაცემებს — მაგრამ სერვერის მხარის ინგესცია გამომცემელს სრულ კონტროლს აძლევს, თუ რომელი ველები გაიგზავნება და როდის. ჩვეულებრივი შაბლონია სერვერის მხარეს ლეგიტიმური ინტერესის საფუძველზე მინიმალური, მხოლოდ აუცილებელი მოვლენების ნაკრების ჩაწერა, შემდეგ ამ მოვლენების კლიენტიდან ქცევის დეტალებით გამდიდრება მხოლოდ მომხმარებლის ანალიტიკის თანხმობის მიცემის შემდეგ. სერვერის და კლიენტის მხარის მოვლენები ერთვება თანხმობის ჩართვის შემდეგ ერთსა და იმავე განსხვავებულ იდენტიფიკატორს; თანხმობამდე, სერვერის მხარის მოვლენები გამოიცემა ანონიმური, ეფემერული იდენტიფიკატორით, რომელიც ყოველ სესიაზე განახლდება.

ინტეგრაციისა და აუდიტის კვალის ვალიდაცია

ვალიდაციის ნაბიჯი ის არის, რასაც მარეგულირებლები ამოწმებენ და გამომცემლები ყველაზე ხშირად გამოტოვებენ. სწორად ინტეგრირებული PostHog განლაგება თანმიმდევრობით ოთხ ტესტს უნდა ჩაბაროს. პირველი, სუფთა ბრაუზერის სესია, სადაც ბანერი ნაჩვენებია, მაგრამ არჩევანი არ გაკეთებულა, კონფიგურირებული api_host-ის ნულ მოთხოვნას უნდა წარმოქმნიდეს SDK ფაილის ჩამოტვირთვის გარდა, document.cookie-ში ნულ ph_ cookie-ს, და localStorage-ში ნულ ph_ ჩანაწერს. მეორე, ანალიტიკის უარყოფამ ეს სტატუსი უნდა შეინარჩუნოს — ჩაწერა არ ხდება, ჩანაწერი არ ხდება, მდგრადი იდენტიფიკატორი არ არსებობს. მესამე, ანალიტიკის მიღებამ უნდა წარმოქმნას დაუყოვნებელი $opt_in მოვლენა, მოსალოდნელი ph_{projectKey}_posthog მდგრადობის ჩანაწერი სწორი SameSite ატრიბუტებით, და კონფიგურირებულ ჰოსტამდე გამავალი მოვლენების ტრაფიკი. მეოთხე, შემდეგ თანხმობის გატანამ უნდა დაუყოვნებლივ შეაჩეროს შემდგომი ჩაწერა და გადათამაშება, მდგრადი იდენტიფიკატორები ვადაგასვლილი გახადოს, და PostHog-ის GDPR API-ის მეშვეობით წაშლის მოთხოვნა გაააქტიუროს, თუ მომხმარებელმა წაშლა გამოიყენა.

EDPB-ის 2023 წლის cookie ბანერის სახელმძღვანელოს და განახლებული 2026 წლის სამუშაო ჯგუფის პრიორიტეტების მიხედვით აუდიტის კვალის მოლოდინია, რომ გამომცემელი PostHog პროექტის ნებისმიერი მოვლენისთვის შეძლებს დამტკიცებას, რომ ამ მოვლენის შემქმნელ მომხმარებელს ჩაწერის მომენტში მიეცა მოქმედი თანხმობა. სტანდარტული შაბლონია posthog.setPersonProperties({ consent_version: 'v3', consent_ts: ts })-ის მეშვეობით თანხმობის ვერსიისა და ტაიმსტამპის განსხვავებული ID-ის პიროვნების თვისებებად დაყენება, რათა ნებისმიერი ცალკეული მოვლენა კონკრეტულ თანხმობის ჟურნალის ჩანაწერს მიეკვლიოს. სწორად კარიბჭიანი განლაგება, აუდიტორიის შესატყვისი რეგიონის არჩევასთან, მეხსიერებაზე ნაგულისხმევი მდგრადობასთან, და გატანისას ამოქმედებული წაშლის გზასთან შეწყვილებული, ის არის, რაც PostHog-ს მარეგულირებლის კონცენტრაციის რისკიდან პროდუქტის ანალიტიკის სტეკის დასაცავ ცენტრად გარდაქმნის.

← ბlodelays delays ყველას წაკითხვა →