ืืขืจืืืืึทื, ืึผืืขื ืืขืืขืจ ืคืืจืืข ืืื ืืขืจ ืืืขืื ืงืึทืืขืงืฅ ืกืืึทืืืกืืืง ืืืขืื ืืึทื ืืฆืขืจ ืึทืงืฉืึทื ื ืืืืฃ ืึท ืืืขื ืืืื. ืื ืืึธืืืึทืืืืืฉืึทื ืืื ืงืืึธืจ - ืงืึธืืคึผืึทื ืืขืก ืืืืื ืฆื ืืืืกื ืืื ืืืืขืจ ืคึผืจืึธืืืงื / ืืืขืืืืืื ืืื ืืขื ืืฆื ืืื ืืขืกืขืจ ืคึฟืึทืจืฉืืืื ืืืืขืจ ืืืืขืจื. ืคืื ืงืืจืก, ืขืก ืืขื ืขื ืึท ืืจืืืก ื ืืืขืจ ืคืื ืืืฉืืจืื ืืืืฃ ืื ืืึทืจืง ืฆื ืกืึธืืืืข ืืขื ืคึผืจืึธืืืขื - ืคึฟืื ืึทื ืึทืืืืืงืก ืกืืกืืขืืขื ืืืึธืก ืฆืืฉืืขืื ืืึทืื ืืื ืื ืคืึธืจืขื ืคืื ืืึทืฉืืึธืจืื ืืื ืืจืึทืคืก (ืืืฉื.
ืืืขืจ ืืืจ ืืขืคืื ืขื ืึท ืคึผืจืึธืืืขื ืืืึธืก ืืื ื ืืฉื ืกืึทืืืื ื ืึธื. ืืืื ืืื ืืขืืืืจื ืืขืืืืจื
ืคืืจืืืืก ืืึธื ืืืจ ืึทื ืืืืืงืืขื ืืื ืืืขืจ ืืืืืขื ืข ืืื ืกื?
ืขืก ืืื ืืขืืืขื ืื ื ืืื ืฆืืงืขืจ ืืึธืจื, ืืืจ ืืึธืื ืืืืขืจืืขืืขืื ืืื ืืขืกืืขืจ ืืืจ ืืึธืื ืืขืงืขื ื. 2019, ืืืจ ืืขืืืขืืึธืคึผืขื ืื ืึทืคึผื ืขืจืฉืืขืจ ืงืื ื ืืึทืืึท ืคึผืืึทืืคืึธืจื kSense, ืืืึธืก ืืขืืืื ืขืก ืืขืืืขื ืฆื ืฆืื ืืืคืืืกื ืืึทืื ืคืื ืคืึทืจืฉืืืขื ืข ืงืืืืื (ืคืึทืกืขืืึธืึธืง ืึทืืก, ืกืืจืืืคึผ, ืกืึทืืขืกืคืึธืจืกืข, Google ืคึผืืืึท, Google ืึทื ืึทืืืืืงืก, ืืื"ื ื) ืคึฟืึทืจ ืืขืจ ืืึทืงืืืขื ืืึทืื ืึทื ืึทืืืกืืก, ืืืขื ืืืคืืฆืืจื ืืืคึผืขื ืืึทื ืกืื, ืืื"ื ื. ืืืจ ืืึธืื ืืืืขืจืงื ืึทื ืคืืืข ืืืืขืจื ื ืืฆื ืืื ืืืขืจ ืคึผืืึทืืคืึธืจืืข ืคึฟืึทืจ ืืึทืื ืึทื ืึทืืืกืืก ืกืคึผืึทืกืืคืืงืื Google Analytics (ืืขืจื ืึธื GA). ืืืจ ืืึธืื ืืขืจืขืื ืืื ืขืืืขืืข ืืืืขืจื ืืื ืืขืคึฟืื ืขื ืึทื ืืื ืืึทืจืคึฟื ืื ืึทื ืึทืืืืืงืก ืืึทืื ืคึฟืึทืจ ืืืืขืจ ืคึผืจืึธืืืงื ืืืึธืก ืืื ืืึทืงืืืขื ืืื GA, ืึธืืขืจ
ืืื ืืึธืื ืืื ืกืืึทืืืจื ืึท ืกืขืืืขื ื ืืืฉืึทืืืึทืกืงืจืืคึผื ืคึผืืงืกืขื ืืืืฃ ืืืืขืจ ืืืขื ืืืื ืืื ืืึทืื ืืืขืื ืื ื ืึทืืืจ ืคืื ืืืืขืจ ืืืืขืจื ืืขื ืขื ืืึธืืืื ืืื ืื ืกืคึผืขืกืืคืืขื ืืึทืืึทืืืืก (ืืืฉื Postgres). ืึธืืขืจ ืกืขืืืขื ื ืืืื ืืื ืืืื ืืึทืื ืกืืื - ืื ืคึผืจืืึทื. ืคึฟืึทืจ ืืืึทืฉืคึผืื, ืืืื ืึท ืืืขื ืืืื ืืื 90,000 MTU (ืืืืืขืฉืืขื ืืจืึทืงื ืืืืขืจื), ืืืจ ืืึทืจืคึฟื ืฆื ืฆืึธืื ~ 1,000 $ ืคึผืขืจ ืืืืฉ ืฆื ืื ืงืึทืกืืจืขืจ. ืขืก ืืื ืืืื ืืขืืืขื ืึท ืืจืื ืคึผืจืึธืืืขื - ืขืืืขืืข ืืืขืืขืจืขืจ ืืงืกืืขื ืฉืึทื ื (ืึทืืึท ืืื AdBlock) ืืคืืขืฉืืขืื ืื ืืึทืืืื ื ืคืื ืึทื ืึทืืืืืงืก ืืืืึทื ... ืืืืคึผ ืจืืงืืืขืก ืคืื ืืขื ืืืขืืขืจืขืจ ืืขื ืขื ืืขืฉืืงื ืฆื ืื GA ืืื Segment ืืึธืืืืื ื. ืืึทืืืจื ืืืืฃ ืื ืืืื ืคืื ืืื ืืืขืจ ืงืืืืึทื ืฅ, ืืืจ ืืึธืื ืืืฉืืคื ืึทื ืึทื ืึทืืืืืงืก ืืื ืกื ืืืึธืก ืงืึทืืขืงืฅ ืึท ืืึทื ืฅ ืืึทื ื ืคืื ืืึทืื (ืึธื ืืืกืืขืจืื ื), ืืื ืคืจืื ืืื ืงืขื ืขื ืึทืจืืขืื ืืืืฃ ืืื ืืืขืจ ืืืืืขื ืข ืื ืคืจืึทืกืืจืึทืงืืฉืขืจ.
ืืื ืื ืกืขืจืืืืก ืึทืจืืขื
ืื ืืื ืกื ืืืฉืืืื ืคืื ืืจืื ืคึผืึทืจืฅ: ืึท ืืืฉืึทืืืึทืกืงืจืืคึผื ืคึผืืงืกืขื (ืืืึธืก ืืืจ ืฉืคึผืขืืขืจ ืจืืจืึธืื ืืื ืืืคึผืกืงืจืืคึผื), ืื ืกืขืจืืืขืจ ืืืื ืืื ืืืคึผืืึทืืขื ืึทื ืืื ืื GO ืฉืคึผืจืึทื, ืืื ืขืก ืืื ืืขืืืขื ืคึผืืึทื ื ืขื ืฆื ื ืืฆื Redshift ืืื BigQuery ืืื ืึทื ืืื-ืืืื ืืึทืืึทืืืืก (ืฉืคึผืขืืขืจ ืืื ืฆืืืขืืขืื ืฉืืืฆื ืคึฟืึทืจ Postgres, ClickHouse ืืื Snowflake).
ืขืก ืืื ืืึทืฉืืึธืกื ืฆื ืืึธืื ืื ืกืืจืืงืืืจ ืคืื ืื GA ืืื ืกืขืืืขื ื ืืขืฉืขืขื ืืฉื ืึทื ืืฉืืื ืืืฉื. ืึทืืข ืืืึธืก ืืื ืืืจืฃ ืืื ืฆื ืืืคึผืืืงืึทื ืึทืืข ืืขืฉืขืขื ืืฉื ืคึฟืื ืื ืืืขื ืืืื ืืื ืื ืคึผืืงืกืขื ืืื ืืื ืกืืึทืืืจื ืฆื ืืื ืืืขืจ ืืึทืงืขื ื. ืืื ืขืก ืืืจื ืก ืืืืก, ืืึธืก ืืื ื ืืฉื ืฉืืืขืจ ืฆื ืืึธื. ืื ืืืฉืึทืืืึทืกืงืจืืคึผื ืคึผืืงืกืขื ืึธืืืืขืจืจืืื ืื ืึธืจืืืื ืขื 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);
});
});
}
ืืื ืื ืกืขืืืขื ื ืคึผืืงืกืขื ืึทืืฅ ืืื ืกืืืคึผืืขืจ; ืขืก ืืื ืืืืืืืึทืจืข ืืขืืืึธืืก, ืืืื ืขืจ ืคืื ืืืึธืก ืืืจ ืืขืืืืื ื.
//'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 ะพะฑัะตะบัะพะผ
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'
});
ืืืืึทืืขืจ, ืืึธืื ืก ืจืขืื ืืืขืื ืื ืกืขืจืืืขืจ ืืืื. ืื ืืึทืงืขื ื ืืึธื ืึธื ื ืขืืขื http ืจืืงืืืขืก, ืคึผืืึธืืืืจื ืืื ืืื ื ืึธื ืืื ืคึฟืึธืจืืึทืฆืืข, ืืืฉื, ืืขืึธ ืืึทืื (ืืึทื ืง
//ะฒั
ะพะดััะธะน 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"
}
ืึธืืขืจ, ืขืจืืื ืืขื ืขื ืืขืจืืืืึทื ืคืฉืื ืงืึธื ืืืขืจืืขื ืฆื ืกืืจืื ืืก ืืืืึทื ื ืื ืึทืืข ืจืืืืืฉืึทื ืึทื ืืึทืืึทืืืืกืื ืฉืืืฆื ืจืืคึผืืืื ืคืขืืืขืจ. ืขืก ืืื ืืืื ืืขืืืขื ืฆื ืืืืฉื ืคืขืื ื ืขืืขื ืึธืืขืจ ืืืกืืขืงื ืืื ื ืืฆื ืึทืคึผืฉืึทื ืึทื ืืึทืคึผืื ื ืึผืืืื. ืืื ืืึธืื ืืืจ ืฆื ืืืืฉื ืื ืืึทืื ืกืืขืืข ืืืื ื ืืืืืง ืึธืืขืจ ืืขืจ ืืืื ืืึทืื ืืืคึผ ืฆื ืื ืืขืจื. ืคึฟืึทืจ ืืืึทืฉืคึผืื, ืืืื ืึท ืืืฉืกืึธื ืคืขืื ืึผืืื ืึท ืฉืืจืืงื ืืื ืฆืืื ืกืืึทืืคึผ (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" #ะฟัะฐะฒะธะปะพ ะฟะตัะตะฝะพัะฐ ะฟะพะปั ะธ ะฟัะธะฒะตะดะตะฝะธั ัะธะฟะฐ
ืึทืืืขืจืืืึทื ืคึฟืึทืจ ืืืืขืจืืึทื ืื ื ืื ืืึทืื ืืืคึผ:
- ืืขืจ ืืืฉืกืึธื ืกืืจืืงืืืจ ืฆื ืคืืึทื ืกืืจืืงืืืจ
- ืืืืขืจืืึทื ืื ื ืื ืืึทืื ืืืคึผ ืคืื ืคืขืืืขืจ ืืืจื ืืืึทืืืขืก
- ืึทืคึผืืืืื ื ืืึทืคึผืื ื ืืื ืืืคึผ ืงืึทืกืืื ื ืึผืืืื
ืืขืจื ืึธื ืคึฟืื ืื ืื ืงืึทืืื ื ืืืฉืกืึธื ืกืืจืืงืืืจ:
{
"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
ืืืจ ืืืื ืืขืืึทื ืง ืึทื ืืขืจ ืืึทื ืืฆืขืจ ืืึธื ืงืขื ืขื ืฆื ืงืึทื ืคืืืืขืจ ืคึผืึทืจืืืฉืึทื ืื ื ืึธืืขืจ ืืืืื ืืึทืื ืืื ืื ืืึทืืึทืืืืก ืืืื ืื ืืขืจืข ืงืจืืืืืจืืึท ืืื ืืืคึผืืึทืืขื ืึทื ืื ืคืืืืงืืื ืฆื ืฉืืขืื ืื ืืืฉ ื ืึธืืขื ืืื ืึท ืงืขืกืืืืขืจืืืง ืึธืืขืจ
tableName: '{{.product_type}}_{{._timestamp.Format "2006_01"}}'
ืึธืืขืจ, ืื ืกืืจืืงืืืจ ืคืื ืื ืงืึทืืื ื ืืขืฉืขืขื ืืฉื ืงืขื ืขื ืืืืฉื ืืื ืจืื ืืืืข. ืืืจ ืืึธืื ืืืคึผืืึทืืขื ืึทื ืึท ืึทืืืขืจืืืึทื ืฆื ืงืึธื ืืจืึธืืืจื ืื ืืืืืง ืฆืืืืฉื ืื ืกืืจืืงืืืจ ืคืื ืึท ืืืืืกืืื ื ืืืฉ ืืื ืื ืกืืจืืงืืืจ ืคืื ืึท ืื ืงืึทืืื ื ืืขืฉืขืขื ืืฉ. ืืืื ืึท ืืืืืง ืืื ืืขืคึฟืื ืขื, ืื ืืืฉ ืืืขื ืืืื ืืขืจืืืึทื ืืืงื ืืื ื ืืึทืข ืคืขืืืขืจ. ืฆื ืืึธื ืืึธืก, ื ืืฆื ืื ืืึทืืข SQL ืึธื ืคึฟืจืขื:
#ะัะธะผะตั ะดะปั Postgres
ALTER TABLE "schema"."table" ADD COLUMN new_column character varying
ืึทืจืงืึทืืขืงืืฉืขืจ
ืคืืจืืืืก ืืึธื ืืืจ ืืึทืจืคึฟื ืฆื ืฉืจืืึทืื ืืขืฉืขืขื ืืฉื ืฆื ืื ืืขืงืข ืกืืกืืขื, ืืื ื ืื ื ืึธืจ ืฉืจืืึทืื ืืื ืืืืึทื ืฆื ืื ืืึทืืึทืืืืก? ืืึทืืึทืืืืกืื ืืึธื ื ืื ืฉืืขื ืืืง ืืืจืืคืืจื ืืื ืืืขื ืืืจ ืืึทื ืืืขื ืืื ืืจืืืก ื ืืืขืจ ืคืื ืื ืกืขืจืฅ (
ืขืคึฟื ืืงืืจ ืืื ืคึผืืึทื ื ืคึฟืึทืจ ืืขืจ ืฆืืงืื ืคึฟื
ืืื ืขืืืขืืข ืคืื ื, ืื ืืื ืกื ืื ืืขืืืืื ืฆื ืงืืงื ืืื ืึท ืคืื-ืคืืขืืืฉื ืคึผืจืึธืืืงื ืืื ืืืจ ืืึทืฉืืึธืกื ืฆื ืืขืืืื ื ืขืก ืฆื ืขืคึฟื ืืงืืจ. ืืขืจืืืืึทื, ืื ืืึทืืจืืืฉืึทื ื ืืื Postgres, ClickHouse, BigQuery, Redshift, S3, Snowflake ืืขื ืขื ืืืคึผืืึทืืขื ืึทื. ืื ืื ืึทืืจืืืฉืึทื ื ืฉืืืฆื ืืืืืข ืคึผืขืงื ืืื ืกืืจืืืื ื ืืึธืืขืก ืคืื ืืึทืื ืืึธืืืื ื. ืฆืืืขืืืืื ืฉืืืฆื ืคึฟืึทืจ ืจืืงืืืขืก ืืืจื ืึทืคึผื.
ืื ืืืฆืืืงืข ืื ืืึทืืจืืืฉืึทื ืกืืขืืข ืงืืงื ืืื ืืึธืก:
ืืึธืืฉ ืื ืกืขืจืืืืก ืงืขื ืขื ืืืื ืืขืืืืื ื ืื ืืืคึผืขื ืืึทื ืืื (ืืืฉื ื ืืฆื ืืึธืงืขืจ), ืืืจ ืืืื ืืึธืื
โ
โ
โ
ืืืจ ืืืขืื ืืืื ืฆืืคืจืืื ืืืื EventNative ืืขืืคึผืก ืกืึธืืืืข ืืืื ืคึผืจืึธืืืขืืก!
ืืืืื ืจืขืืืกืืจืืจื ื ืืฆืขืจืก ืงืขื ืขื ืึธื ืืืื ื ืขืืขื ืืื ืื ืืืขืจืืืืง.
ืืืึธืก ืกืืึทืืืกืืืง ืืึทืืืื ื ืกืืกืืขื ืืื ืืขื ืืฆื ืืื ืืืื ืคืืจืืข?
-
ืงืกื ืืืงืก%Google Analytics 12
-
ืงืกื ืืืงืก%ืกืขืืืขื ื 1
-
ืงืกื ืืืงืก%ืื ืื ืืขืจ (ืฉืจืืืื ืืื ืื ืืึทืืขืจืงืื ืืขื)4
-
ืงืกื ืืืงืก%ืืืคึผืืึทืืขื ืืึทื ืืืื ืกืขืจืืืืก 8
25 ืืื ืืฆืขืจ ืืืื ืืขืฉืืืื. 6 ืืื ืืฆืขืจ ืืืื ืืื ืืคืืขืืืืื.
ืืงืืจ: www.habr.com