అనలిటిక్స్ ట్రాకింగ్: ప్రైవసీ-ఫస్ట్ ఈవెంట్ కలెక్షన్
ఈ కథనం యూజర్ ప్రైవసీని గౌరవిస్తూ మరియు బాట్ ట్రాఫిక్ను నివారిస్తూ, మేము యూజర్ ప్రవర్తనను ఎలా ట్రాక్ చేస్తామో వివరిస్తుంది.
సమస్య: యూజర్ ప్రవర్తనను అర్థం చేసుకోవడం
మనకు తెలుసుకోవాలి:
-
యూజర్లు ఏ పేజీలను సందర్శిస్తారు
-
వారు ఏ ఉత్పత్తులను వీక్షిస్తారు
-
ట్రాఫిక్ ఎక్కడ నుండి వస్తుంది (గూగుల్ యాడ్స్, ఆర్గానిక్, సోషల్)
-
ఏ ప్రచారాలు మార్పిడులను నడుపుతాయి
కానీ మనం తప్పించుకోవాలి:
-
బాట్లు మరియు క్రాలర్లను ట్రాక్ చేయడం
-
వ్యక్తిగతంగా గుర్తించదగిన సమాచారాన్ని (PII) నిల్వ చేయడం
-
ప్రైవసీ నియమాలను ఉల్లంఘించడం
పరిష్కారం: క్లయింట్-సైడ్ + సర్వర్-సైడ్ ట్రాకింగ్
క్లయింట్-సైడ్: జావాస్క్రిప్ట్ ట్రాకింగ్
విజిటర్ ID: కుకీలో నిల్వ చేయబడిన యాదృచ్ఛిక ID (365 రోజులు)
సెషన్ ID: సెషన్స్టోరేజ్లో నిల్వ చేయబడిన యాదృచ్ఛిక ID (బ్రౌజర్ మూసివేయబడే వరకు)
క్యాంపెయిన్ పారామీటర్లు: URL నుండి సేకరించి సెషన్స్టోరేజ్లో నిల్వ చేయబడతాయి
ట్రాక్ చేయబడిన పారామీటర్లు:
-
gclid- గూగుల్ క్లిక్ ID (శోధన ప్రకటనలు) -
gbraid- గూగుల్ యాడ్స్ క్లిక్ ID (షాపింగ్ ప్రకటనలు) -
wbraid- గూగుల్ యాడ్స్ క్లిక్ ID (iOS) -
fbclid- ఫేస్బుక్ క్లిక్ ID -
srsltid- గూగుల్ ఆర్గానిక్ శోధన ఫలిత ID -
utm_source,utm_medium,utm_campaign,utm_term,utm_content
నిల్వ: వాట్సాప్/ఫోన్ క్లిక్ ఆట్రిబ్యూషన్ కోసం పారామీటర్లు కుకీలలో నిల్వ చేయబడతాయి (30 నిమిషాలు)
సర్వర్-సైడ్: ఎన్రిచ్మెంట్
సర్వర్ ఈవెంట్లను ఇలా సమృద్ధిపరుస్తుంది:
జియోఐపి డేటా: IP చిరునామా నుండి దేశం, ప్రాంతం, నగరం
యూజర్-ఏజెంట్ పార్సింగ్: బ్రౌజర్, OS, పరికర రకం
టైమ్స్టాంప్: సర్వర్ సమయం (UTC)
బాట్ డిటెక్షన్: తెలిసిన బాట్ యూజర్-ఏజెంట్లను ఫిల్టర్ చేస్తుంది
ఈవెంట్ రకాలు
పేజీ వ్యూ: యూజర్ ఒక పేజీని సందర్శిస్తాడు
ప్రొడక్ట్ వ్యూ: యూజర్ ఉత్పత్తి పేజీని వీక్షిస్తాడు
కార్ట్కి జోడించు: యూజర్ ఉత్పత్తిని కార్ట్కి జోడిస్తాడు
చెక్అవుట్: యూజర్ చెక్అవుట్ను ప్రారంభిస్తాడు
కొనుగోలు: యూజర్ కొనుగోలును పూర్తి చేస్తాడు
వాట్సాప్ క్లిక్: యూజర్ వాట్సాప్ బటన్పై క్లిక్ చేస్తాడు
ఫోన్ క్లిక్: యూజర్ ఫోన్ నంబర్పై క్లిక్ చేస్తాడు
డేటా ప్రవాహం
sequenceDiagram
participant User
participant JS as JavaScript
participant API as /api/analytics
participant Firehose as Kinesis Firehose
participant S3
User->>JS: Visit page
JS->>JS: Extract URL params
(gclid, utm_*, etc.)
JS->>JS: Store in sessionStorage
JS->>API: POST event + params
API->>API: Enrich with GeoIP
API->>API: Parse User-Agent
API->>API: Filter bots
API->>Firehose: Send enriched event
Firehose->>S3: Store in analytics bucketబాట్ డిటెక్షన్
బహుళ సంకేతాలను ఉపయోగించి మేము బాట్ ట్రాఫిక్ను ఫిల్టర్ చేస్తాము:
యూజర్-ఏజెంట్ నమూనాలు: తెలిసిన బాట్ స్ట్రింగ్లు (గూగుల్బాట్, బింగ్బాట్ మొదలైనవి)
ప్రవర్తన నమూనాలు: చాలా వేగంగా, చాలా ఎక్కువ అభ్యర్థనలు
జావాస్క్రిప్ట్ లేకపోవడం: బాట్లు తరచుగా JSని అమలు చేయవు
మినహాయింపు కుకీ: tv_exclude=true అన్ని ట్రాకింగ్ను ఆపివేస్తుంది
ప్రైవసీ రక్షణ
PII లేదు: మేము పేర్లు, ఇమెయిల్లు, ఫోన్ నంబర్లను ఎప్పుడూ నిల్వ చేయము
అనామక IPలు: నిల్వకు ముందు చివరి ఆక్టెట్ తీసివేయబడుతుంది
క్రాస్-సైట్ ట్రాకింగ్ లేదు: కుకీలు మొదటి-పార్టీ మాత్రమే
ఆప్ట్-అవుట్: యూజర్లు మినహాయింపు కుకీని సెట్ చేయవచ్చు
డేటా నిలుపుదల: ఈవెంట్లు 90 రోజుల తర్వాత తొలగించబడతాయి
కండిషనల్ పిక్సెల్ లోడింగ్
మేము సంబంధితమైనప్పుడు మాత్రమే ట్రాకింగ్ పిక్సెల్లను లోడ్ చేస్తాము:
గూగుల్ యాడ్స్ పిక్సెల్: gclid, gbraid, లేదా wbraid ఉన్నప్పుడు మాత్రమే
లింక్డ్ఇన్ పిక్సెల్: msclkid ఉన్నప్పుడు మాత్రమే
ఫేస్బుక్ పిక్సెల్: fbclid ఉన్నప్పుడు మాత్రమే
ప్రయోజనం: వేగవంతమైన పేజీ లోడ్లు, తక్కువ ట్రాకింగ్ ఓవర్హెడ్
ట్రాఫిక్ మూలం డిటెక్షన్
URL పారామీటర్ల నుండి మేము ట్రాఫిక్ మూలాన్ని గుర్తిస్తాము:
గూగుల్ యాడ్స్: gclid, gbraid, wbraid → utm_source=google_ads
గూగుల్ ఆర్గానిక్: srsltid → utm_source=google_search
ఫేస్బుక్: fbclid → utm_source=facebook
లింక్డ్ఇన్: msclkid → utm_source=linkedin
డైరెక్ట్: పారామీటర్లు లేవు → utm_source=direct
మార్పిడి ట్రాకింగ్
ఫనల్ ద్వారా మేము మార్పిడులను ట్రాక్ చేస్తాము:
ప్రొడక్ట్ వ్యూ → కార్ట్కి జోడించు → చెక్అవుట్ → కొనుగోలు
ప్రతి దశలో ఇవి ఉంటాయి:
-
విజిటర్ ID (ఆట్రిబ్యూషన్ కోసం)
-
సెషన్ ID (సెషన్ విశ్లేషణ కోసం)
-
క్యాంపెయిన్ పారామీటర్లు (ROI లెక్కింపు కోసం)
-
ప్రొడక్ట్ SKU (ఉత్పత్తి విశ్లేషణ కోసం)
లీడ్ టచ్ ట్రాకింగ్
యూజర్లు మమ్మల్ని సంప్రదించినప్పుడు (వాట్సాప్, ఫోన్, ఇమెయిల్), మేము ఇవి క్యాప్చర్ చేస్తాము:
సంప్రదింపు పద్ధతి: వాట్సాప్, ఫోన్, ఇమెయిల్
క్యాంపెయిన్ పారామీటర్లు: కుకీల నుండి (30-నిమిషాల విండో)
ప్రొడక్ట్ సందర్భం: వారు ఏ ఉత్పత్తి పేజీపై ఉన్నారు
ప్రయోజనం: ఆఫ్లైన్ మార్పిడులను ఆన్లైన్ ప్రచారాలకు ఆపాదించండి
రేట్ లిమిటింగ్
అనలిటిక్స్ ఎండ్పాయింట్ రేట్-లిమిటెడ్:
పరిమితి: IPకి 10 నిమిషాలకు 100 అభ్యర్థనలు
ప్రయోజనం: దుర్వినియోగం మరియు బాట్ వరదలను నిరోధిస్తుంది
నిల్వ
ఈవెంట్లు కినేసిస్ ఫైర్హోస్ ద్వారా S3లో నిల్వ చేయబడతాయి:
ఫార్మాట్: JSON పంక్తులు (ప్రతి పంక్తికి ఒక ఈవెంట్)
పార్టీషనింగ్: తేదీ ద్వారా (సంవత్సరం/నెల/రోజు/గంట)
కంప్రెషన్: Gzip
నిలుపుదల: 90 రోజులు
ప్రశ్నించడం
ఈవెంట్లను AWS అథీనా ద్వారా ప్రశ్నించారు:
స్కీమా: గ్లూ డేటా కేటలాగ్లో నిర్వచించబడింది
ప్రశ్నలు: S3 డేటాపై SQL
ఉపయోగ కేసులు: ప్రచార ROI, ఉత్పత్తి ప్రాచుర్యం, ట్రాఫిక్ మూలాలు
సూచనలు
సాంకేతిక భావనలు
-
వెబ్ అనలిటిక్స్ - వికీపీడియా
-
ప్రైవసీ బై డిజైన్ - వికీపీడియా
AWS సేవలు
-
కినేసిస్ ఫైర్హోస్ - AWS డాక్యుమెంటేషన్
-
అథీనా - AWS డాక్యుమెంటేషన్
సంబంధిత కథనాలు
- మల్టీ-సర్వర్ ఆర్కిటెక్చర్ - అనలిటిక్స్ ఎక్కడ రన్ అవుతుంది
సారాంశం
మా అనలిటిక్స్ సిస్టమ్ ప్రైవసీని గౌరవిస్తూ యూజర్ ప్రవర్తనను ట్రాక్ చేస్తుంది:
క్లయింట్-సైడ్:
-
✅ URL నుండి క్యాంపెయిన్ పారామీటర్లను సేకరించండి
-
✅ సెషన్స్టోరేజ్లో నిల్వ చేయండి (సెషన్-స్కోప్డ్)
-
✅ కుకీలలో నిల్వ చేయ