เบ›เบฐเบซเบงเบฑเบ”เบ‚เบญเบ‡เปเบซเบผเปˆเบ‡เป€เบ›เบตเบ”เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ: เบงเบดเบ—เบตเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐเปƒเบ™ Go เปเบฅเบฐเป€เบฎเบฑเบ”เปƒเบซเป‰เบกเบฑเบ™เป€เบ›เบตเบ”เป€เบœเบตเบเบ•เปเปˆเบชเบฒเบ—เบฒเบฅเบฐเบ™เบฐ

เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™, เป€เบเบทเบญเบšเบ—เบธเบเบšเปเบฅเบดเบชเบฑเบ”เปƒเบ™เป‚เบฅเบเป€เบเบฑเบšเบเปเบฒเบชเบฐเบ–เบดเบ•เบดเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบ‚เบญเบ‡เบœเบนเป‰เปƒเบŠเป‰เปƒเบ™เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เป€เบงเบฑเบšเป„เบŠเบ•เปŒ. เปเบฎเบ‡เบˆเบนเบ‡เปƒเบˆเปเบกเปˆเบ™เบˆเบฐเปเบˆเป‰เบ‡ - เบšเปเบฅเบดเบชเบฑเบ”เบ•เป‰เบญเบ‡เบเบฒเบ™เบฎเบนเป‰เบงเปˆเบฒเบœเบฐเบฅเบดเบ”เบ•เบฐเบžเบฑเบ™ / เป€เบงเบฑเบšเป„เบŠเบ—เปŒเบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒเบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เปเบ™เบงเปƒเบ”เปเบฅเบฐเป€เบ‚เบปเป‰เบฒเปƒเบˆเบœเบนเป‰เปƒเบŠเป‰เบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒเบ”เบตเบ‚เบถเป‰เบ™. เปเบ™เปˆเบ™เบญเบ™, เบกเบตเป€เบ„เบทเปˆเบญเบ‡เบกเบทเบˆเปเบฒเบ™เบงเบ™เบซเบฅเบฒเบเบขเบนเปˆเปƒเบ™เบ•เบฐเบซเบผเบฒเบ”เป€เบžเบทเปˆเบญเปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบ™เบตเป‰ - เบˆเบฒเบเบฅเบฐเบšเบปเบšเบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐเบ—เบตเปˆเบชเบฐเบซเบ™เบญเบ‡เบ‚เปเป‰เบกเบนเบ™เปƒเบ™เบฎเบนเบšเปเบšเบšเบ‚เบญเบ‡ dashboards เปเบฅเบฐเบเบฒเบŸ (เบ•เบปเบงเบขเปˆเบฒเบ‡. เบเบนเป‚เบเบงเบดเป€เบ„เบฒเบฐ) เป„เบ›เบซเบฒเปเบžเบฅเบฐเบ•เบฐเบŸเบญเบกเบ‚เปเป‰เบกเบนเบ™เบฅเบนเบเบ„เป‰เบฒ, เป€เบŠเบดเปˆเบ‡เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เป€เบเบฑเบšเบเปเบฒเปเบฅเบฐเบฅเบงเบšเบฅเบงเบกเบ‚เปเป‰เบกเบนเบ™เบˆเบฒเบเปเบซเบผเปˆเบ‡เบ•เปˆเบฒเบ‡เป†เปƒเบ™เบชเบฒเบ‡เบ•เปˆเบฒเบ‡เป† (เบ•เบปเบงเบขเปˆเบฒเบ‡: เบชเปˆเบงเบ™).

เปเบ•เปˆเบžเบงเบเป€เบฎเบปเบฒเบžเบปเบšเบšเบฑเบ™เบซเบฒเบ—เบตเปˆเบเบฑเบ‡เบšเปเปˆเบ—เบฑเบ™เป„เบ”เป‰เปเบเป‰เป„เบ‚เป€เบ—เบทเปˆเบญ. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบˆเบถเปˆเบ‡เป€เบเบตเบ” เป€เบซเบ”เบเบฒเบ™เบžเบทเป‰เบ™เป€เบกเบทเบญเบ‡ โ€” เบเบฒเบ™โ€‹เบšเปโ€‹เบฅเบดโ€‹เบเบฒเบ™โ€‹เบเบฒเบ™โ€‹เบงเบดโ€‹เป€เบ„เบฒเบฐโ€‹เปเบซเบผเปˆเบ‡โ€‹เป€เบ›เบตเบ”โ€‹. เบญเปˆเบฒเบ™เบเปˆเบฝเบงเบเบฑเบšเบงเปˆเบฒเป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบ—เบตเปˆเบˆเบฐเบžเบฑเบ”เบ—เบฐเบ™เบฒเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบญเบ‡, เบชเบดเปˆเบ‡เบ—เบตเปˆเบกเบฑเบ™เปƒเบซเป‰เบžเบงเบเป€เบฎเบปเบฒ, เปเบฅเบฐเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบชเบธเบ”เบ—เป‰เบฒเบเปเบกเปˆเบ™เบซเบเบฑเบ‡ (เบเบฑเบšเบ•เปˆเบญเบ™เบ‚เบญเบ‡เบฅเบฐเบซเบฑเบ”).

เบ›เบฐเบซเบงเบฑเบ”เบ‚เบญเบ‡เปเบซเบผเปˆเบ‡เป€เบ›เบตเบ”เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ: เบงเบดเบ—เบตเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐเปƒเบ™ Go เปเบฅเบฐเป€เบฎเบฑเบ”เปƒเบซเป‰เบกเบฑเบ™เป€เบ›เบตเบ”เป€เบœเบตเบเบ•เปเปˆเบชเบฒเบ—เบฒเบฅเบฐเบ™เบฐ

เป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบžเบงเบเป€เบฎเบปเบฒเบ„เบงเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ‚เบญเบ‡เบ•เบปเบ™เป€เบญเบ‡?

เบกเบฑเบ™เปเบกเปˆเบ™ nineties, เบžเบงเบเป€เบฎเบปเบฒเบขเบนเปˆเบฅเบญเบ”เบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบชเบธเบ”เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เป„เบ”เป‰. 2019, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒเปเบžเบฅเบ”เบŸเบญเบกเบ‚เปเป‰เบกเบนเบ™เบฅเบนเบเบ„เป‰เบฒเบ—เบณเบญเบดเบ”เบ‚เบญเบ‡ API kSense, เป€เบŠเบดเปˆเบ‡เป€เบฎเบฑเบ”เปƒเบซเป‰เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบฅเบงเบšเบฅเบงเบกเบ‚เปเป‰เบกเบนเบ™เบˆเบฒเบเปเบซเบผเปˆเบ‡เบ•เปˆเบฒเบ‡เป† (เป‚เบ„เบชเบฐเบ™เบฒเป€เบŸเบชเบšเบธเบ, Stripe, Salesforce, Google play, Google Analytics, เปเบฅเบฐเบญเบทเปˆเบ™เป†) เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบชเบฐเบ”เบงเบเบเบงเปˆเบฒ, เบเบฒเบ™เบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบ‚เบถเป‰เบ™เบเบฑเบš, เปเบฅเบฐเบญเบทเปˆเบ™เป†. เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบชเบฑเบ‡เป€เบเบ”เป€เบซเบฑเบ™เบงเปˆเบฒเบœเบนเป‰เปƒเบŠเป‰เบซเบผเบฒเบเบ„เบปเบ™เปƒเบŠเป‰เปเบžเบฅเบฐเบ•เบฐเบŸเบญเบกเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐเบ‚เปเป‰เบกเบนเบ™เป‚เบ”เบเบชเบฐเป€เบžเบฒเบฐ Google Analytics (เบ•เปเปˆเป„เบ›เบ™เบตเป‰ GA). เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบชเบปเบ™เบ—เบฐเบ™เบฒเบเบฑเบšเบœเบนเป‰เปƒเบŠเป‰เบšเบฒเบ‡เบ„เบปเบ™เปเบฅเบฐเบžเบปเบšเบงเปˆเบฒเบžเบงเบเป€เบ‚เบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐเบชเปเบฒเบฅเบฑเบšเบœเบฐเบฅเบดเบ”เบ•เบฐเบžเบฑเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒเบ—เบตเปˆเบžเบงเบเป€เบ‚เบปเบฒเป„เบ”เป‰เบฎเบฑเบšเป‚เบ”เบเปƒเบŠเป‰ GA, เปเบ•เปˆ. Google เบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เปเป‰เบกเบนเบ™ เปเบฅเบฐเบชเปเบฒเบฅเบฑเบšเบซเบผเบฒเบเป†เบ„เบปเบ™, เบเบฒเบ™เป‚เบ•เป‰เบ•เบญเบšเบœเบนเป‰เปƒเบŠเป‰ GA เบšเปเปˆเปเบกเปˆเบ™เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™เบ‚เบญเบ‡เบ„เบงเบฒเบกเบชเบฐเบ”เบงเบ. เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบเบฒเบ™เบชเบปเบ™เบ—เบฐเบ™เบฒเบžเบฝเบ‡เบžเปเบเบฑเบšเบœเบนเป‰เปƒเบŠเป‰เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเปเบฅเบฐเบฎเบฑเบšเบฎเบนเป‰เบงเปˆเบฒเบซเบผเบฒเบเบ„เบปเบ™เบเบฑเบ‡เปƒเบŠเป‰เป€เบงเบ—เบต Segment (เป€เบŠเบดเปˆเบ‡, เป‚เบ”เบเบงเบดเบ—เบตเบ—เบฒเบ‡เบเบฒเบ™, เปเบกเปˆเบ™เบžเบฝเบ‡เปเบ•เปˆเปƒเบ™เบกเบทเป‰เบญเบทเปˆเบ™. เบ‚เบฒเบเปƒเบ™เบฅเบฒเบ„เบฒ 3.2 เบ•เบทเป‰เป‚เบ”เบฅเบฒ).

เบžเบงเบเป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบ•เบดเบ”เบ•เบฑเป‰เบ‡ Segment javascript pixel เปƒเบ™เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เป€เบงเบฑเบšเบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒเปเบฅเบฐเบ‚เปเป‰เบกเบนเบ™เบเปˆเบฝเบงเบเบฑเบšเบžเบถเบ”เบ•เบดเบเปเบฒเบ‚เบญเบ‡เบœเบนเป‰เปƒเบŠเป‰เบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒเบ–เบทเบเป‚เบซเบฅเบ”เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบฅเบฐเบšเบธ (เบ•เบปเบงเบขเปˆเบฒเบ‡ Postgres). เปเบ•เปˆ Segment เบเบฑเบ‡เบกเบตเบ‚เปเป‰เป€เบชเบเบ‚เบญเบ‡เบกเบฑเบ™ - เบฅเบฒเบ„เบฒ. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบ–เป‰เบฒเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เป€เบงเบฑเบšเบกเบต 90,000 MTU (เบœเบนเป‰เบ•เบดเบ”เบ•เบฒเบกเบ›เบฐเบˆเปเบฒเป€เบ”เบทเบญเบ™), เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบˆเปˆเบฒเบ ~ 1,000 เป‚เบ”เบฅเบฒเบ•เปเปˆเป€เบ”เบทเบญเบ™เปƒเบซเป‰เบœเบนเป‰เป€เบเบฑเบšเป€เบ‡เบดเบ™. เบเบฑเบ‡เบกเบตเบšเบฑเบ™เบซเบฒเบ—เบตเบชเบฒเบก - เบšเบฒเบ‡เบชเปˆเบงเบ™เบ‚เบฐเบซเบเบฒเบเบ‚เบญเบ‡เบ•เบปเบงเบ—เปˆเบญเบ‡เป€เบงเบฑเบš (เป€เบŠเบฑเปˆเบ™: AdBlock) เบ‚เบฑเบ”เบ‚เบงเบฒเบ‡เบเบฒเบ™เบฅเบงเบšเบฅเบงเบกเบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐเป€เบžเบฒเบฐเบงเปˆเบฒ ... เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เป http เบˆเบฒเบเบ•เบปเบงเบ—เปˆเบญเบ‡เป€เบงเบฑเบšเป„เบ”เป‰เบ–เบทเบเบชเบปเปˆเบ‡เป„เบ›เบซเบฒเป‚เบ”เป€เบกเบ™ GA เปเบฅเบฐ Segment. เบญเบตเบ‡เบ•เบฒเบกเบ„เบงเบฒเบกเบ›เบฒเบ”เบ–เบฐเบซเบ™เบฒเบ‚เบญเบ‡เบฅเบนเบเบ„เป‰เบฒเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบชเป‰เบฒเบ‡เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐเบ—เบตเปˆเป€เบเบฑเบšเบเปเบฒเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เป„เบงเป‰เบขเปˆเบฒเบ‡เบชเบปเบกเบšเบนเบ™ (เป‚เบ”เบเบšเปเปˆเบกเบตเบเบฒเบ™เป€เบเบฑเบšเบ•เบปเบงเบขเปˆเบฒเบ‡), เปเบกเปˆเบ™เบšเปเปˆเป€เบชเบเบ„เปˆเบฒเปเบฅเบฐเบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เบงเบฝเบเบเปˆเบฝเบงเบเบฑเบšเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบญเบ‡.

เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเปเบ™เบงเปƒเบ”

เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ›เบฐเบเบญเบšเบกเบตเบชเบฒเบกเบชเปˆเบงเบ™: javascript pixel (เป€เบŠเบดเปˆเบ‡เบ•เปเปˆเบกเบฒเบžเบงเบเป€เบฎเบปเบฒเบ‚เบฝเบ™เปƒเบซเบกเปˆเปƒเบ™ typescript), เบชเปˆเบงเบ™เป€เบŠเบตเบŸเป€เบงเบตเบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เปƒเบ™เบžเบฒเบชเบฒ GO, เปเบฅเบฐเป„เบ”เป‰เบกเบตเบเบฒเบ™เบงเบฒเบ‡เปเบœเบ™เบ—เบตเปˆเบˆเบฐเปƒเบŠเป‰ Redshift เปเบฅเบฐ BigQuery เป€เบ›เบฑเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบžเบฒเบเปƒเบ™ (เบ•เปเปˆเบกเบฒเบžเบงเบเป€เบ‚เบปเบฒเป„เบ”เป‰เป€เบžเบตเปˆเบกเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบชเปเบฒเบฅเบฑเบš Postgres, ClickHouse เปเบฅเบฐ Snowflake).

เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบ—เบตเปˆเบˆเบฐเบญเบญเบเบˆเบฒเบเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบ‚เบญเบ‡เป€เบซเบ”เบเบฒเบ™ GA เปเบฅเบฐ Segment เบšเปเปˆเบ›เปˆเบฝเบ™เปเบ›เบ‡. เบ—เบฑเบ‡เบซเบกเบปเบ”เบ—เบตเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เปเบกเปˆเบ™เป€เบžเบทเปˆเบญเบŠเป‰เปเบฒเบเบฑเบ™เป€เบซเบ”เบเบฒเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบˆเบฒเบเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เป€เบงเบฑเบšเป„เบŠเบ•เปŒเบ—เบตเปˆ pixels เบฅเบงเบ‡เป„เบ”เป‰เบ–เบทเบเบ•เบดเบ”เบ•เบฑเป‰เบ‡เปƒเบชเปˆ backend เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ. เบเป‰เบญเบ™เบงเปˆเบฒเบกเบฑเบ™เบซเบฑเบ™เบญเบญเบ, เบ™เบตเป‰เบšเปเปˆเปเบกเปˆเบ™เบเบฒเบ™เบเบฒเบเบ—เบตเปˆเบˆเบฐเป€เบฎเบฑเบ”. Javascript pixel เบ—เบฑเบšเบŠเป‰เบญเบ™เบงเบดเบ—เบตเบเบฒเบ™เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ” GA เบ•เบปเป‰เบ™เบชเบฐเบšเบฑเบšเบ”เป‰เบงเบเบญเบฑเบ™เปƒเบซเบกเปˆ, เป€เบŠเบดเปˆเบ‡เป€เบฎเบฑเบ”เบŠเป‰เปเบฒเป€เบซเบ”เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบฅเบฐเบšเบปเบšเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ.

//'ga' - ัั‚ะฐะฝะดะฐั€ั‚ะฝะพะต ะฝะฐะทะฒะฐะฝะธะต ะฟะตั€ะตะผะตะฝะฝะพะน Google Analytics
if (window.ga) {
    ga(tracker => {
        var originalSendHitTask = tracker.get('sendHitTask');
        tracker.set('sendHitTask', (model) => {
            var payLoad = model.get('hitPayload');
            //ะพั‚ะฟั€ะฐะฒะบะฐ ะพั€ะธะณะธะฝะฐะปัŒะฝะพะณะพ ัะพะฑั‹ั‚ะธั ะฒ GA
            originalSendHitTask(model);
            let jsonPayload = this.parseQuery(payLoad);
            //ะพั‚ะฟั€ะฐะฒะบะฐ ัะพะฑั‹ั‚ะธั ะฒ ะฝะฐัˆ ัะตั€ะฒะธั
            this.send3p('ga', jsonPayload);
        });
    });
}

เบ”เป‰เบงเบ Segment pixel เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เปเบกเปˆเบ™เบ‡เปˆเบฒเบเบ”เบฒเบเบเบงเปˆเบฒ; เบกเบฑเบ™เบกเบตเบงเบดเบ—เบตเบเบฒเบ™เบเบฒเบ‡, เบซเบ™เบถเปˆเบ‡เปƒเบ™เบ™เบฑเป‰เบ™เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเปƒเบŠเป‰.


//'analytics' - ัั‚ะฐะฝะดะฐั€ั‚ะฝะพะต ะฝะฐะทะฒะฐะฝะธะต ะฟะตั€ะตะผะตะฝะฝะพะน Segment
if (window.analytics) {
    if (window.analytics.addSourceMiddleware) {
        window.analytics.addSourceMiddleware(chain => {
            try {
		//ะดัƒะฑะปะธั€ะพะฒะฐะฝะธะต ัะพะฑั‹ั‚ะธั ะฒ ะฝะฐัˆ ัะตั€ะฒะธั
                this.send3p('ajs', chain.payload);
            } catch (e) {
                LOG.warn('Failed to send an event', e)
            }
	    //ะพั‚ะฟั€ะฐะฒะบะฐ ะพั€ะธะณะธะฝะฐะปัŒะฝะพะณะพ ัะพะฑั‹ั‚ะธั ะฒ Segment
            chain.next(chain.payload);
        });
    } else {
        LOG.warn("Invalid interceptor state. Analytics js initialized, but not completely");
    }
} else {
    LOG.warn('Analytics.js listener is not set.');
}

เบ™เบญเบเป€เบซเบ™เบทเบญเบˆเบฒเบเบเบฒเบ™เบ„เบฑเบ”เบฅเบญเบเป€เบซเบ”เบเบฒเบ™, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบชเบปเปˆเบ‡ json arbitrary:


//ะžั‚ะฟั€ะฐะฒะบะฐ ัะพะฑั‹ั‚ะธะน ั ะฟั€ะพะธะทะฒะพะปัŒะฝั‹ะผ json ะพะฑัŠะตะบั‚ะพะผ
eventN.track('product_page_view', {
    product_id: '1e48fb70-ef12-4ea9-ab10-fd0b910c49ce',
    product_price: 399.99,
    price_currency: 'USD'
    product_release_start: '2020-09-25T12:38:27.763000Z'
});

เบ•เปเปˆเป„เบ›, เปƒเบซเป‰เป€เบงเบปเป‰เบฒเบเปˆเบฝเบงเบเบฑเบšเบชเปˆเบงเบ™เบ‚เบญเบ‡เป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ. backend เบ„เบงเบ™เบเบญเบกเบฎเบฑเบšเบ„เปเบฒเบฎเป‰เบญเบ‡เบ‚เป http, เบ•เบทเปˆเบกเบ‚เปเป‰เบกเบนเบ™เปƒเบชเปˆเบžเบงเบเป€เบ‚เบปเบฒเบ”เป‰เบงเบเบ‚เปเป‰เบกเบนเบ™เป€เบžเบตเปˆเบกเป€เบ•เบตเบก, เบ•เบปเบงเบขเปˆเบฒเบ‡, เบ‚เปเป‰เบกเบนเบ™เบ—เบฒเบ‡เบžเบนเบกเบชเบฒเบ” (เบ‚เปเบ‚เบญเบšเปƒเบˆ เปƒเบˆเบชเบนเบ‡เบชเบธเบ” เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ™เบตเป‰) เปเบฅเบฐเบšเบฑเบ™เบ—เบถเบเบกเบฑเบ™เบขเบนเปˆเปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™. เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เบ•เป‰เบญเบ‡โ€‹เบเบฒเบ™โ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เป€เบฎเบฑเบ”โ€‹เปƒเบซเป‰โ€‹เบเบฒเบ™โ€‹เบšเปโ€‹เบฅเบดโ€‹เบเบฒเบ™โ€‹เป€เบ›เบฑเบ™โ€‹เบชเบฐโ€‹เบ”เบงเบโ€‹เป€เบ—เบปเปˆเบฒโ€‹เบ—เบตเปˆโ€‹เป€เบ›เบฑเบ™โ€‹เป„เบ›โ€‹เป„เบ”เป‰โ€‹เป€เบžเบทเปˆเบญโ€‹เปƒเบซเป‰โ€‹เบกเบฑเบ™โ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰โ€‹เบ—เบตเปˆโ€‹เบกเบตโ€‹เบเบฒเบ™โ€‹เบ•เบฑเป‰เบ‡โ€‹เบ„เปˆเบฒโ€‹เบซเบ™เป‰เบญเบโ€‹. เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบ›เบฐเบ•เบดเบšเบฑเบ”เบซเบ™เป‰เบฒเบ—เบตเปˆเบเปเบฒเบ™เบปเบ”เป‚เบ„เบ‡เบเบฒเบ™เบ‚เปเป‰เบกเบนเบ™เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบ‚เบญเบ‡เป€เบซเบ”เบเบฒเบ™ json เบ—เบตเปˆเป€เบ‚เบปเป‰เบฒเบกเบฒ. เบ›เบฐเป€เบžเบ”เบ‚เปเป‰เบกเบนเบ™เบ–เบทเบเบเปเบฒเบ™เบปเบ”เป‚เบ”เบเบ„เปˆเบฒ. เบงเบฑเบ”เบ–เบธเบ—เบตเปˆเบเบฑเบ‡เบ–เบทเบเป€เบ™เบปเปˆเบฒเป€เบ›เบทเปˆเบญเบ เปเบฅเบฐ เบซเบผเบธเบ”เบฅเบปเบ‡เป€เบ›เบฑเบ™เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบฎเบฒเบšเบžเบฝเบ‡:

//ะฒั…ะพะดัั‰ะธะน json
{
  "field_1":  {
    "sub_field_1": "text1",
    "sub_field_2": 100
  },
  "field_2": "text2",
  "field_3": {
    "sub_field_1": {
      "sub_sub_field_1": "2020-09-25T12:38:27.763000Z"
    }
  }
}

//ั€ะตะทัƒะปัŒั‚ะฐั‚
{
  "field_1_sub_field_1":  "text1",
  "field_1_sub_field_2":  100,
  "field_2": "text2",
  "field_3_sub_field_1_sub_sub_field_1": "2020-09-25T12:38:27.763000Z"
}

เบขเปˆเบฒเบ‡เปƒเบ”เบเปเบ•เบฒเบก, arrays เบ›เบฐเบˆเบธเบšเบฑเบ™เบžเบฝเบ‡เปเบ•เปˆเบ›เปˆเบฝเบ™เป€เบ›เบฑเบ™ strings เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒ เบšเปเปˆเปเบกเปˆเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบ—เบฑเบ‡เปเบปเบ”เบฎเบญเบ‡เบฎเบฑเบšเบŠเปˆเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบŠเป‰เบณเป†. เบกเบฑเบ™เบเบฑเบ‡เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบ›เปˆเบฝเบ™เบŠเบทเปˆเบžเบฒเบเบชเบฐเบซเบ™เบฒเบกเบซเบผเบทเบฅเบถเบšเบžเบงเบเบกเบฑเบ™เป‚เบ”เบเปƒเบŠเป‰เบเบปเบ”เบฅเบฐเบšเบฝเบšเบเบฒเบ™เบชเป‰เบฒเบ‡เปเบœเบ™เบ—เบตเปˆเบ—เบฒเบ‡เป€เบฅเบทเบญเบ. เบžเบงเบเป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ›เปˆเบฝเบ™เปเบœเบ™เบœเบฑเบ‡เบ‚เปเป‰เบกเบนเบ™เบ–เป‰เบฒเบˆเปเบฒเป€เบ›เบฑเบ™เบซเบผเบทเบ›เปˆเบฝเบ™เบ›เบฐเป€เบžเบ”เบ‚เปเป‰เบกเบนเบ™เบซเบ™เบถเปˆเบ‡เป„เบ›เบซเบฒเบญเบตเบ. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบ–เป‰เบฒเบŠเปˆเบญเบ‡ json เบกเบตเบชเบฐเบ•เบฃเบดเบ‡เบ—เบตเปˆเบกเบตเป€เบงเบฅเบฒ (.field_3_sub_field_1_sub_sub_field_1 เบˆเบฒเบเบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เป‰เบฒเบ‡เป€เบ—เบดเบ‡), เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เป€เบžเบทเปˆเบญเบชเป‰เบฒเบ‡เบžเบฒเบเบชเบฐเบซเบ™เบฒเบกเปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบกเบตเบ›เบฐเป€เบžเบ”เป€เบงเบฅเบฒ, เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ‚เบฝเบ™เบเบปเบ”เบฅเบฐเบšเบฝเบšเบเบฒเบ™เบชเป‰เบฒเบ‡เปเบœเบ™เบ—เบตเปˆเปƒเบ™เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒ. เปƒเบ™เบ„เปเบฒเบชเบฑเบšเบ•เปˆเบฒเบ‡เป†เบญเบทเปˆเบ™เป†, เบ›เบฐเป€เบžเบ”เบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เบžเบฒเบเบชเบฐเบซเบ™เบฒเบกเปเบกเปˆเบ™เบ–เบทเบเบเปเบฒเบ™เบปเบ”เป‚เบ”เบเบกเบนเบ™เบ„เปˆเบฒ json, เปเบฅเบฐเบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบเบปเบ”เบฅเบฐเบšเบฝเบšเบเบฒเบ™เป‚เบเบ™เบ›เบฐเป€เบžเบ” (เบ–เป‰เบฒเบ–เบทเบเบ•เบฑเป‰เบ‡เบ„เปˆเบฒ) เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰. เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบเปเบฒเบ™เบปเบ” 4 เบ›เบฐเป€เบžเบ”เบ‚เปเป‰เบกเบนเบ™เบ•เบปเป‰เบ™เบ•เป: STRING, FLOAT64, INT64 เปเบฅเบฐ TIMESTAMP. เบเบปเบ”เบฅเบฐเบšเบฝเบšเบเบฒเบ™เบงเบฒเบ‡เปเบœเบ™เบ—เบตเปˆ เปเบฅเบฐเบ›เบฐเป€เบžเบ”เบกเบตเบฅเบฑเบเบชเบฐเบ™เบฐเบ”เบฑเปˆเบ‡เบ™เบตเป‰:

rules:
  - "/field_1/subfield_1 -> " #ะฟั€ะฐะฒะธะปะพ ัƒะดะฐะปะตะฝะธั ะฟะพะปั
  - "/field_2/subfield_1 -> /field_10/subfield_1" #ะฟั€ะฐะฒะธะปะพ ะฟะตั€ะตะฝะพัะฐ ะฟะพะปั
  - "/field_3/subfield_1/subsubfield_1 -> (timestamp) /field_20" #ะฟั€ะฐะฒะธะปะพ ะฟะตั€ะตะฝะพัะฐ ะฟะพะปั ะธ ะฟั€ะธะฒะตะดะตะฝะธั ั‚ะธะฟะฐ

เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบเบฒเบ™เบเบณเบ™เบปเบ”เบ›เบฐเป€เบžเบ”เบ‚เปเป‰เบกเบนเบ™:

  • เบ›เปˆเบฝเบ™เป‚เบ„เบ‡เบชเป‰เบฒเบ‡ json เป€เบ›เบฑเบ™เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบฎเบฒเบšเบžเบฝเบ‡
  • เบเบฒเบ™เบเปเบฒเบ™เบปเบ”เบ›เบฐเป€เบžเบ”เบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เบŠเปˆเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เป‚เบ”เบเบ„เปˆเบฒ
  • เบเบฒเบ™โ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰โ€‹เปเบœเบ™โ€‹เบ—เบตเปˆโ€‹เปเบฅเบฐโ€‹เบเบปเบ”โ€‹เบฅเบฐโ€‹เบšเบฝเบšโ€‹เบเบฒเบ™โ€‹เบžเบดเบกโ€‹

เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบˆเบฒเบเป‚เบ„เบ‡เบชเป‰เบฒเบ‡ json เบ—เบตเปˆเป€เบ‚เบปเป‰เบฒเบกเบฒ:

{
    "product_id":  "1e48fb70-ef12-4ea9-ab10-fd0b910c49ce",
    "product_price": 399.99,
    "price_currency": "USD",
    "product_type": "supplies",
    "product_release_start": "2020-09-25T12:38:27.763000Z",
    "images": {
      "main": "picture1",
      "sub":  "picture2"
    }
}

เป‚เบ„เบ‡โ€‹เบเบฒเบ™โ€‹เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹เบˆเบฐโ€‹เป„เบ”เป‰โ€‹เบฎเบฑเบšโ€‹:

"product_id" character varying,
"product_price" numeric (38,18),
"price_currency" character varying,
"product_type" character varying,
"product_release_start" timestamp,
"images_main" character varying,
"images_sub" character varying

เบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เบ„เบดเบ”เบงเปˆเบฒเบœเบนเป‰เปƒเบŠเป‰เบ„เบงเบ™เบˆเบฐเบชเบฒเบกเบฒเบ” configure เบเบฒเบ™เปเบšเปˆเบ‡เบชเปˆเบงเบ™เบซเบผเบทเปเบšเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ•เบฒเบกเป€เบ‡เบทเปˆเบญเบ™เป„เบ‚เบญเบทเปˆเบ™เป†เปเบฅเบฐเบ›เบฐเบ•เบดเบšเบฑเบ”เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบเปเบฒเบ™เบปเบ”เบŠเบทเปˆเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ—เบตเปˆเบกเบตเบ„เปˆเบฒเบ„เบปเบ‡เบ—เบตเปˆเบซเบผเบท. เบเบฒเบ™เบชเบฐเปเบ”เบ‡เบญเบญเบ เปƒเบ™โ€‹เบเบฒเบ™โ€‹เบ•เบฑเป‰เบ‡โ€‹เบ„เปˆเบฒโ€‹. เปƒเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เป‰เบฒเบ‡เบฅเบธเปˆเบกเบ™เบตเป‰, เป€เบซเบ”เบเบฒเบ™เบˆเบฐเบ–เบทเบเบšเบฑเบ™เบ—เบถเบเป„เบงเป‰เปƒเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ—เบตเปˆเบกเบตเบŠเบทเปˆเบ—เบตเปˆเบ„เบดเบ”เป„เบฅเปˆเป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเบ„เปˆเบฒเบ‚เบญเบ‡เบŠเปˆเบญเบ‡เบ‚เปเป‰เบกเบนเบ™ product_type เปเบฅเบฐ _timestamp (เบ•เบปเบงเบขเปˆเบฒเบ‡: เบญเบธเบ›เบฐเบเบญเบ™_2020_10):

tableName: '{{.product_type}}_{{._timestamp.Format "2006_01"}}'

เบขเปˆเบฒเบ‡เปƒเบ”เบเปเปˆเบ•เบฒเบก, เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบ‚เบญเบ‡เป€เบซเบ”เบเบฒเบ™เบ—เบตเปˆเป€เบ‚เบปเป‰เบฒเบกเบฒเบชเบฒเบกเบฒเบ”เบ›เปˆเบฝเบ™เปเบ›เบ‡เปƒเบ™เป€เบงเบฅเบฒเปเบฅเปˆเบ™. เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบ›เบฐเบ•เบดเบšเบฑเบ”เบชเบนเบ”เบเบฒเบ™เบ„เบดเบ”เป„เบฅเปˆเป€เบžเบทเปˆเบญเบเบงเบ”เป€เบšเบดเปˆเบ‡เบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡เบฅเบฐเบซเบงเปˆเบฒเบ‡เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบ‚เบญเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ—เบตเปˆเบกเบตเบขเบนเปˆเปเบฅเป‰เบงเปเบฅเบฐเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบ‚เบญเบ‡เป€เบซเบ”เบเบฒเบ™เบ—เบตเปˆเป€เบ‚เบปเป‰เบฒเบกเบฒ. เบ–เป‰เบฒเบžเบปเบšเบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡, เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบˆเบฐเบ–เบทเบเบ›เบฑเบšเบ›เบธเบ‡เบ”เป‰เบงเบเบŠเปˆเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เปƒเบซเบกเปˆ. เป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เบชเบดเปˆเบ‡เบ™เบตเป‰, เปƒเบŠเป‰ patch SQL query:

#ะŸั€ะธะผะตั€ ะดะปั Postgres
ALTER TABLE "schema"."table" ADD COLUMN new_column character varying

เบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐ

เบ›เบฐเบซเบงเบฑเบ”เบ‚เบญเบ‡เปเบซเบผเปˆเบ‡เป€เบ›เบตเบ”เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ: เบงเบดเบ—เบตเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐเปƒเบ™ Go เปเบฅเบฐเป€เบฎเบฑเบ”เปƒเบซเป‰เบกเบฑเบ™เป€เบ›เบตเบ”เป€เบœเบตเบเบ•เปเปˆเบชเบฒเบ—เบฒเบฅเบฐเบ™เบฐ

เป€เบ›เบฑเบ™เบซเบเบฑเบ‡เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบ‚เบฝเบ™เป€เบซเบ”เบเบฒเบ™เปƒเบ™เบฅเบฐเบšเบปเบšเป„เบŸเบฅเปŒ, เปเบฅเบฐเบšเปเปˆเบžเบฝเบ‡เปเบ•เปˆเบ‚เบฝเบ™เบกเบฑเบ™เป‚เบ”เบเบเบปเบ‡เปƒเบชเปˆเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™? เบ–เบฒเบ™โ€‹เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹เบšเปเปˆโ€‹เบชเบฐโ€‹เป€เบซเบกเบตโ€‹เป„เบ›โ€‹เบ›เบฐโ€‹เบ•เบดโ€‹เบšเบฑเบ”โ€‹เป„เบ”เป‰โ€‹เบ”เบตโ€‹เปƒเบ™โ€‹เป€เบงโ€‹เบฅเบฒโ€‹เบ—เบตเปˆโ€‹เบเปˆเบฝเบงโ€‹เบเบฑเบšโ€‹เบเบฒเบ™โ€‹เบˆเปเบฒโ€‹เบ™เบงเบ™โ€‹เบซเบผเบฒเบโ€‹เบ‚เบญเบ‡โ€‹เบเบฒเบ™โ€‹เปเบŠเบ (เบ„เปเบฒเปเบ™เบฐเบ™เปเบฒเบ‚เบญเบ‡ Postgres). เป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เบชเบดเปˆเบ‡เบ™เบตเป‰, Logger เบ‚เบฝเบ™เป€เบซเบ”เบเบฒเบ™เบ—เบตเปˆเป€เบ‚เบปเป‰เบฒเบกเบฒเปƒเบ™เป„เบŸเบฅเปŒเปเบฅเบฐเปƒเบ™ goroutine เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ (เบเบฐเบ—เบนเป‰) File reader เบญเปˆเบฒเบ™เป„เบŸเบฅเปŒ, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบ‚เปเป‰เบกเบนเบ™เบˆเบฐเบ–เบทเบเปเบ›เบ‡เปเบฅเบฐเบเปเบฒเบ™เบปเบ”. เบซเบผเบฑเบ‡เบˆเบฒเบเบœเบนเป‰เบˆเบฑเบ”เบเบฒเบ™เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เป€เบฎเบฑเบ”เปƒเบซเป‰เปเบ™เปˆเปƒเบˆเบงเปˆเบฒเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เปเบกเปˆเบ™เบ—เบฑเบ™เบชเบฐเป„เบซเบก, เบ‚เปเป‰เบกเบนเบ™เบˆเบฐเบ–เบทเบเบ‚เบฝเบ™เปƒเบชเปˆเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เปƒเบ™เบซเบ™เบถเปˆเบ‡เบŠเบธเบ”. เบ•เปเปˆเบกเบฒ, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบ‚เบฝเบ™เบ‚เปเป‰เบกเบนเบ™เป‚เบ”เบเบเบปเบ‡เบเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™, เปเบ•เปˆเบžเบงเบเป€เบฎเบปเบฒเปƒเบŠเป‰เป‚เบซเบกเบ”เบ™เบตเป‰เบชเปเบฒเบฅเบฑเบšเป€เบซเบ”เบเบฒเบ™เบ—เบตเปˆเบšเปเปˆเบกเบตเบˆเปเบฒเบ™เบงเบ™เบซเบฅเบฒเบ - เบ•เบปเบงเบขเปˆเบฒเบ‡, เบเบฒเบ™เปเบ›เบ‡.

Open Source เปเบฅเบฐเปเบœเบ™เบเบฒเบ™เบชเปเบฒเบฅเบฑเบšเบญเบฐเบ™เบฒเบ„เบปเบ”

เปƒเบ™เบšเบฒเบ‡เบˆเบธเบ”, เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เป€เบฅเบตเปˆเบกเป€เบšเบดเปˆเบ‡เบ„เบทเบงเปˆเบฒเป€เบ›เบฑเบ™เบœเบฐเบฅเบดเบ”เบ•เบฐเบžเบฑเบ™เบ—เบตเปˆเป€เบ•เบฑเบกเป„เบ›เบ”เป‰เบงเบเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบ›เปˆเบญเบเบกเบฑเบ™เปƒเบซเป‰เบเบฑเบš Open Source. เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™, เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเป‚เบเบ‡เบเบฑเบš Postgres, ClickHouse, BigQuery, Redshift, S3, Snowflake เป„เบ”เป‰เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”. เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเป‚เบเบ‡เบ—เบฑเบ‡เบซเบกเบปเบ”เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบ—เบฑเบ‡เบฎเบนเบšเปเบšเบš batch เปเบฅเบฐ streaming เบ‚เบญเบ‡เบเบฒเบ™เป‚เบซเบผเบ”เบ‚เปเป‰เบกเบนเบ™. เป€เบžเบตเปˆเบกเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบเบฒเบ™เบฎเป‰เบญเบ‡เบ‚เปเบœเปˆเบฒเบ™ API.

เป‚เบ„เบ‡โ€‹เบเบฒเบ™โ€‹เบฅเบงเบกโ€‹เปƒเบ™โ€‹เบ›เบฑเบ”โ€‹เบˆเบธโ€‹เบšเบฑเบ™โ€‹เป€เบšเบดเปˆเบ‡โ€‹เบ„เบทโ€‹เบ™เบตเป‰โ€‹:

เบ›เบฐเบซเบงเบฑเบ”เบ‚เบญเบ‡เปเบซเบผเปˆเบ‡เป€เบ›เบตเบ”เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ: เบงเบดเบ—เบตเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบเบฒเบ™เบงเบดเป€เบ„เบฒเบฐเปƒเบ™ Go เปเบฅเบฐเป€เบฎเบฑเบ”เปƒเบซเป‰เบกเบฑเบ™เป€เบ›เบตเบ”เป€เบœเบตเบเบ•เปเปˆเบชเบฒเบ—เบฒเบฅเบฐเบ™เบฐ

เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบชเบฒเบกเบฒเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบ›เบฑเบ™เป€เบญเบเบฐเบฅเบฒเบ” (เบ•เบปเบงเบขเปˆเบฒเบ‡เป€เบŠเบฑเปˆเบ™เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰ Docker), เบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เบกเบต เบชเบฐเบšเบฑเบšเบ—เบตเปˆเป€เบ›เบฑเบ™เป€เบˆเบปเป‰เบฒเบžเบฒเบš, เบ—เบตเปˆเบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเป‚เบเบ‡เบเบฑเบšเบชเบฒเบ‡เบ‚เปเป‰เบกเบนเบ™, เป€เบžเบตเปˆเบก CNAME เบเบฑเบšเป‚เบ”เป€เบกเบ™เบ‚เบญเบ‡เบ—เปˆเบฒเบ™เปเบฅเบฐเป€เบšเบดเปˆเบ‡เบชเบฐเบ–เบดเบ•เบดเบเปˆเบฝเบงเบเบฑเบšเบˆเปเบฒเบ™เบงเบ™เป€เบซเบ”เบเบฒเบ™. เปเบœเบ™เบเบฒเบ™เบ—เบฑเบ™เบ—เบตเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเปเบกเปˆเบ™เป€เบžเบทเปˆเบญเป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เปƒเบ™เบเบฒเบ™เบฅเบงเบšเบฅเบงเบกเบชเบฐเบ–เบดเบ•เบดเบšเปเปˆเบžเบฝเบ‡เปเบ•เปˆเบˆเบฒเบเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เป€เบงเบฑเบš, เปเบ•เปˆเบเบฑเบ‡เบ‚เปเป‰เบกเบนเบ™เบˆเบฒเบเปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™เบžเบฒเบเบ™เบญเบเปเบฅเบฐเบšเบฑเบ™เบ—เบถเบเบžเบงเบเบกเบฑเบ™เป„เบงเป‰เปƒเบ™เบšเปˆเบญเบ™เป€เบเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบ—เปˆเบฒเบ™เป€เบฅเบทเบญเบ!

โ†’ GitHub
โ†’ ะ”ะพะบัƒะผะตะฝั‚ะฐั†ะธั
โ†’ slack

เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบ”เบตเปƒเบˆเบ–เป‰เบฒ EventNative เบŠเปˆเบงเบเปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบ‚เบญเบ‡เป€เบˆเบปเป‰เบฒ!

เบžเบฝเบ‡เปเบ•เปˆเบœเบนเป‰เปƒเบŠเป‰เบฅเบปเบ‡เบ—เบฐเบšเบฝเบ™เบชเบฒเบกเบฒเบ”เป€เบ‚เบปเป‰เบฒเบฎเปˆเบงเบกเปƒเบ™เบเบฒเบ™เบชเปเบฒเบซเบผเบงเบ”. เป€เบ‚เบปเป‰เบฒโ€‹เบชเบนเปˆโ€‹เบฅเบฐโ€‹เบšเบปเบšเบเบฐเบฅเบธเบ™เบฒ.

เบฅเบฐเบšเบปเบšเบเบฒเบ™เป€เบเบฑเบšเบเบณเบชเบฐเบ–เบดเบ•เบดเบญเบฑเบ™เปƒเบ”เบ—เบตเปˆเปƒเบŠเป‰เบขเบนเปˆเปƒเบ™เบšเปเบฅเบดเบชเบฑเบ”เบ‚เบญเบ‡เป€เบˆเบปเป‰เบฒ?

  • 48,0%Google Analytics12

  • 4,0%เบžเบฒเบเบ—เบต1

  • 16,0%เบญเบทเปˆเบ™ (เบ‚เบฝเบ™เปƒเบ™เบ„เปเบฒเป€เบซเบฑเบ™) 4

  • 32,0%เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ‚เบญเบ‡เป€เบˆเบปเป‰เบฒ 8

25 เบœเบนเป‰เปƒเบŠเป‰เบฅเบปเบ‡เบ„เบฐเปเบ™เบ™เบชเบฝเบ‡. 6 เบœเบนเป‰เปƒเบŠเป‰เบ‡เบปเบ”.

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: www.habr.com

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™