ae-tracking 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +43 -0
- package/README.md +50 -0
- package/dist/bin/ae-tracking.d.ts +2 -0
- package/dist/bin/ae-tracking.js +20 -0
- package/dist/scripts/postinstall.d.ts +1 -0
- package/dist/scripts/postinstall.js +17 -0
- package/dist/src/auth.d.ts +12 -0
- package/dist/src/auth.js +215 -0
- package/dist/src/cli/auth.d.ts +8 -0
- package/dist/src/cli/auth.js +81 -0
- package/dist/src/cli/code.d.ts +2 -0
- package/dist/src/cli/code.js +85 -0
- package/dist/src/cli/debug.d.ts +2 -0
- package/dist/src/cli/debug.js +152 -0
- package/dist/src/cli/home.d.ts +4 -0
- package/dist/src/cli/home.js +15 -0
- package/dist/src/cli/init.d.ts +14 -0
- package/dist/src/cli/init.js +107 -0
- package/dist/src/cli/package-root.d.ts +1 -0
- package/dist/src/cli/package-root.js +20 -0
- package/dist/src/cli/plan.d.ts +2 -0
- package/dist/src/cli/plan.js +242 -0
- package/dist/src/cli/wiki.d.ts +2 -0
- package/dist/src/cli/wiki.js +20 -0
- package/dist/src/client.d.ts +62 -0
- package/dist/src/client.js +56 -0
- package/dist/src/config.d.ts +4 -0
- package/dist/src/config.js +29 -0
- package/dist/src/plan/autotrack.d.ts +18 -0
- package/dist/src/plan/autotrack.js +350 -0
- package/dist/src/plan/conflict.d.ts +34 -0
- package/dist/src/plan/conflict.js +106 -0
- package/dist/src/plan/draft.d.ts +39 -0
- package/dist/src/plan/draft.js +104 -0
- package/dist/src/plan/fix.d.ts +32 -0
- package/dist/src/plan/fix.js +187 -0
- package/dist/src/plan/types.d.ts +57 -0
- package/dist/src/plan/types.js +1 -0
- package/dist/src/project-detect/detect.d.ts +2 -0
- package/dist/src/project-detect/detect.js +120 -0
- package/dist/src/project-detect/types.d.ts +9 -0
- package/dist/src/project-detect/types.js +1 -0
- package/dist/src/te-debug/client.d.ts +12 -0
- package/dist/src/te-debug/client.js +54 -0
- package/dist/src/te-debug/types.d.ts +16 -0
- package/dist/src/te-debug/types.js +1 -0
- package/dist/src/te-plan/fetch.d.ts +3 -0
- package/dist/src/te-plan/fetch.js +47 -0
- package/dist/src/te-plan/types.d.ts +7 -0
- package/dist/src/te-plan/types.js +1 -0
- package/dist/src/wiki/block-to-md.d.ts +74 -0
- package/dist/src/wiki/block-to-md.js +88 -0
- package/dist/src/wiki/crawler.d.ts +3 -0
- package/dist/src/wiki/crawler.js +71 -0
- package/dist/src/wiki/index-writer.d.ts +4 -0
- package/dist/src/wiki/index-writer.js +70 -0
- package/dist/src/wiki/slugify.d.ts +1 -0
- package/dist/src/wiki/slugify.js +11 -0
- package/dist/src/wiki/types.d.ts +29 -0
- package/dist/src/wiki/types.js +1 -0
- package/dist/src/wiki-query/query.d.ts +8 -0
- package/dist/src/wiki-query/query.js +32 -0
- package/dist/src/xlsx/read.d.ts +2 -0
- package/dist/src/xlsx/read.js +457 -0
- package/dist/src/xlsx/write.d.ts +3 -0
- package/dist/src/xlsx/write.js +251 -0
- package/package.json +47 -0
- package/skills/generate-tracking-code/SKILL.md +551 -0
- package/skills/generate-tracking-code/references/client-sdk-insert.md +92 -0
- package/skills/generate-tracking-code/references/datax-config.md +41 -0
- package/skills/generate-tracking-code/references/debug-script.md +99 -0
- package/skills/generate-tracking-code/references/logbus-config.md +224 -0
- package/skills/generate-tracking-code/references/modes.md +81 -0
- package/skills/generate-tracking-code/references/restful-call.md +34 -0
- package/skills/generate-tracking-code/references/sdk-index.md +123 -0
- package/skills/generate-tracking-code/references/server-sdk-insert.md +175 -0
- package/skills/generate-tracking-code/references/snippet-delivery.md +240 -0
- package/skills/generate-tracking-code/references/te-api.md +181 -0
- package/skills/generate-tracking-plan/SKILL.md +826 -0
- package/skills/generate-tracking-plan/references/autotrack-events.md +238 -0
- package/skills/generate-tracking-plan/references/te-api.md +97 -0
- package/skills/generate-tracking-plan/references/xlsx-schema.md +149 -0
- package/skills/te-wiki-synthesize/SKILL.md +142 -0
- package/wiki/te-docs/index.md +223 -0
- package/wiki/te-docs/log.md +28 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/345/211/215/345/207/206/345/244/207/345/267/245/344/275/234//346/225/260/346/215/256/350/247/204/345/210/231.md +379 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/345/211/215/345/207/206/345/244/207/345/267/245/344/275/234//347/224/250/346/210/267/350/257/206/345/210/253/350/247/204/345/210/231.md +461 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/345/211/215/345/207/206/345/244/207/345/267/245/344/275/234//351/242/204/347/275/256/345/261/236/346/200/247/344/270/216/347/263/273/347/273/237/345/255/227/346/256/265.md +634 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/345/211/215/345/207/206/345/244/207/345/267/245/344/275/234.md +190 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227/restful-api-/344/275/277/347/224/250/346/214/207/345/215/227.md +195 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227/sdk-information-collection-rules.md +63 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/205/263/344/272/216-gdpr.md +81 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/android//345/220/210/350/247/204/346/214/207/345/215/227.md +34 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/android//346/233/264/346/226/260/346/227/245/345/277/227.md +502 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/android//350/277/233/351/230/266/346/214/207/345/215/227//344/270/211/346/226/271/346/225/260/346/215/256.md +367 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/android//350/277/233/351/230/266/346/214/207/345/215/227//345/244/232/345/256/236/344/276/213.md +117 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/android//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +96 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/android//350/277/233/351/230/266/346/214/207/345/215/227//350/207/252/345/212/250/351/207/207/351/233/206.md +947 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/android//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +686 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/android//350/277/233/351/230/266/346/214/207/345/215/227.md +1126 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/android.md +461 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/c//346/233/264/346/226/260/346/227/245/345/277/227-RCu1wk.md +64 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/c//346/233/264/346/226/260/346/227/245/345/277/227.md +167 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/c//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225-T57MwB.md +56 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/c//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +57 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/c//350/277/233/351/230/266/346/214/207/345/215/227-JARDwp.md +455 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/c//350/277/233/351/230/266/346/214/207/345/215/227.md +477 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/c-Uicgw2.md +145 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/c.md +253 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/h5-/344/270/216-app-sdk-/346/211/223/351/200/232.md +179 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/ios//345/220/210/350/247/204/346/214/207/345/215/227.md +37 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/ios//346/233/264/346/226/260/346/227/245/345/277/227.md +491 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/ios//350/277/233/351/230/266/346/214/207/345/215/227//344/270/211/346/226/271/346/225/260/346/215/256.md +154 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/ios//350/277/233/351/230/266/346/214/207/345/215/227//345/244/232/345/256/236/344/276/213.md +148 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/ios//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +92 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/ios//350/277/233/351/230/266/346/214/207/345/215/227//350/207/252/345/212/250/351/207/207/351/233/206.md +479 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/ios//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +587 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/ios//350/277/233/351/230/266/346/214/207/345/215/227.md +912 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/ios//351/232/220/347/247/201/346/270/205/345/215/225.md +183 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/ios.md +397 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/javascript//345/220/210/350/247/204/346/214/207/345/215/227.md +39 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/javascript//346/233/264/346/226/260/346/227/245/345/277/227.md +239 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/javascript//350/277/233/351/230/266/346/214/207/345/215/227//345/244/232/345/256/236/344/276/213.md +55 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/javascript//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +54 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/javascript//350/277/233/351/230/266/346/214/207/345/215/227//350/207/252/345/212/250/351/207/207/351/233/206.md +113 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/javascript//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +267 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/javascript//350/277/233/351/230/266/346/214/207/345/215/227.md +455 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/javascript.md +257 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/macos//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +77 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/macos//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +249 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/macos//350/277/233/351/230/266/346/214/207/345/215/227.md +738 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/macos.md +317 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/openharmony//345/220/210/350/247/204/346/214/207/345/215/227.md +345 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/openharmony//346/233/264/346/226/260/346/227/245/345/277/227.md +128 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/openharmony//350/277/233/351/230/266/346/214/207/345/215/227//345/244/232/345/256/236/344/276/213.md +60 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/openharmony//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +54 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/openharmony//350/277/233/351/230/266/346/214/207/345/215/227//350/207/252/345/212/250/351/207/207/351/233/206.md +121 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/openharmony//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +286 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/openharmony//350/277/233/351/230/266/346/214/207/345/215/227.md +408 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk/openharmony.md +209 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//345/256/242/346/210/267/347/253/257-sdk-/345/270/270/350/247/201/351/227/256/351/242/230.md +72 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//345/260/217/347/250/213/345/272/217/345/260/217/346/270/270/346/210/217//345/220/210/350/247/204/346/214/207/345/215/227.md +56 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//345/260/217/347/250/213/345/272/217/345/260/217/346/270/270/346/210/217//346/233/264/346/226/260/346/227/245/345/277/227.md +313 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//345/260/217/347/250/213/345/272/217/345/260/217/346/270/270/346/210/217//350/277/233/351/230/266/346/214/207/345/215/227//345/244/232/345/256/236/344/276/213.md +78 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//345/260/217/347/250/213/345/272/217/345/260/217/346/270/270/346/210/217//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +58 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//345/260/217/347/250/213/345/272/217/345/260/217/346/270/270/346/210/217//350/277/233/351/230/266/346/214/207/345/215/227//350/207/252/345/212/250/351/207/207/351/233/206.md +192 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//345/260/217/347/250/213/345/272/217/345/260/217/346/270/270/346/210/217//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +301 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//345/260/217/347/250/213/345/272/217/345/260/217/346/270/270/346/210/217//350/277/233/351/230/266/346/214/207/345/215/227.md +644 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//345/260/217/347/250/213/345/272/217/345/260/217/346/270/270/346/210/217.md +440 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-lua//345/220/210/350/247/204/346/214/207/345/215/227.md +35 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-lua//346/233/264/346/226/260/346/227/245/345/277/227.md +49 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-lua//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +53 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-lua//350/277/233/351/230/266/346/214/207/345/215/227//350/207/252/345/212/250/351/207/207/351/233/206.md +32 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-lua//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +65 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-lua//350/277/233/351/230/266/346/214/207/345/215/227.md +288 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-lua.md +236 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-x//345/220/210/350/247/204/346/214/207/345/215/227.md +34 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-x//346/233/264/346/226/260/346/227/245/345/277/227.md +122 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-x//350/277/233/351/230/266/346/214/207/345/215/227//345/244/232/345/256/236/344/276/213.md +27 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-x//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +53 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-x//350/277/233/351/230/266/346/214/207/345/215/227//350/207/252/345/212/250/351/207/207/351/233/206.md +34 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-x//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +177 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-x//350/277/233/351/230/266/346/214/207/345/215/227.md +368 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocos2d-x.md +311 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocoscreator//345/220/210/350/247/204/346/214/207/345/215/227.md +42 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocoscreator//346/233/264/346/226/260/346/227/245/345/277/227.md +184 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocoscreator//350/277/233/351/230/266/346/214/207/345/215/227/native/346/224/257/346/214/201.md +142 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocoscreator//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +60 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocoscreator//350/277/233/351/230/266/346/214/207/345/215/227//350/207/252/345/212/250/351/207/207/351/233/206.md +96 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocoscreator//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +255 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocoscreator//350/277/233/351/230/266/346/214/207/345/215/227.md +659 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/cocoscreator.md +213 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/corona//345/220/210/350/247/204/346/214/207/345/215/227.md +39 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/corona//346/233/264/346/226/260/346/227/245/345/277/227.md +42 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/corona//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +59 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/corona//350/277/233/351/230/266/346/214/207/345/215/227//350/207/252/345/212/250/351/207/207/351/233/206.md +37 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/corona//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +50 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/corona//350/277/233/351/230/266/346/214/207/345/215/227.md +281 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/corona.md +304 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/egret//346/233/264/346/226/260/346/227/245/345/277/227.md +129 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/egret//350/277/233/351/230/266/346/214/207/345/215/227/native/346/224/257/346/214/201.md +74 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/egret//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +60 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/egret//350/277/233/351/230/266/346/214/207/345/215/227//350/207/252/345/212/250/351/207/207/351/233/206.md +74 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/egret//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +228 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/egret//350/277/233/351/230/266/346/214/207/345/215/227.md +640 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/egret.md +210 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/layaair//346/233/264/346/226/260/346/227/245/345/277/227.md +129 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/layaair//350/277/233/351/230/266/346/214/207/345/215/227/native/346/224/257/346/214/201.md +79 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/layaair//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +60 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/layaair//350/277/233/351/230/266/346/214/207/345/215/227//350/207/252/345/212/250/351/207/207/351/233/206.md +73 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/layaair//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +254 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/layaair//350/277/233/351/230/266/346/214/207/345/215/227.md +626 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/layaair.md +228 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unity//345/216/206/345/217/262/347/211/210/346/234/254-unity-sdk-/344/275/277/347/224/250/346/214/207/345/215/227.md +503 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unity//345/220/210/350/247/204/346/214/207/345/215/227.md +34 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unity//346/233/264/346/226/260/346/227/245/345/277/227.md +505 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unity//350/277/233/351/230/266/346/214/207/345/215/227//344/270/211/346/226/271/346/225/260/346/215/256.md +86 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unity//350/277/233/351/230/266/346/214/207/345/215/227//345/216/237/347/224/237-sdk-/345/217/257/346/217/222/346/213/224.md +44 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unity//350/277/233/351/230/266/346/214/207/345/215/227//345/244/232/345/256/236/344/276/213.md +55 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unity//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +53 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unity//350/277/233/351/230/266/346/214/207/345/215/227//350/207/252/345/212/250/351/207/207/351/233/206.md +156 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unity//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +293 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unity//350/277/233/351/230/266/346/214/207/345/215/227.md +667 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unity.md +203 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unreal//345/220/210/350/247/204/346/214/207/345/215/227.md +34 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unreal//346/233/264/346/226/260/346/227/245/345/277/227.md +209 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unreal//350/277/233/351/230/266/346/214/207/345/215/227//344/270/211/346/226/271/346/225/260/346/215/256.md +152 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unreal//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +41 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unreal//350/277/233/351/230/266/346/214/207/345/215/227//350/207/252/345/212/250/351/207/207/351/233/206.md +81 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unreal//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +181 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unreal//350/277/233/351/230/266/346/214/207/345/215/227.md +346 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216/unreal.md +228 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//346/270/270/346/210/217/345/274/225/346/223/216.md +20 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/flutter//345/220/210/350/247/204/346/214/207/345/215/227.md +37 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/flutter//346/233/264/346/226/260/346/227/245/345/277/227.md +201 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/flutter//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +54 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/flutter//350/277/233/351/230/266/346/214/207/345/215/227//350/207/252/345/212/250/351/207/207/351/233/206.md +139 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/flutter//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +65 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/flutter//350/277/233/351/230/266/346/214/207/345/215/227.md +356 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/flutter.md +176 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/react-native//345/220/210/350/247/204/346/214/207/345/215/227.md +37 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/react-native//346/233/264/346/226/260/346/227/245/345/277/227.md +162 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/react-native//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +60 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/react-native//350/277/233/351/230/266/346/214/207/345/215/227//350/207/252/345/212/250/351/207/207/351/233/206.md +140 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/react-native//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +23 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/react-native//350/277/233/351/230/266/346/214/207/345/215/227.md +375 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/react-native.md +176 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/uni-app//346/233/264/346/226/260/346/227/245/345/277/227.md +34 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/uni-app//350/277/233/351/230/266/346/214/207/345/215/227/native/346/224/257/346/214/201.md +96 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/uni-app//350/277/233/351/230/266/346/214/207/345/215/227//345/244/232/345/256/236/344/276/213.md +48 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/uni-app//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +57 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/uni-app//350/277/233/351/230/266/346/214/207/345/215/227//350/207/252/345/212/250/351/207/207/351/233/206.md +68 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/uni-app//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +249 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/uni-app//350/277/233/351/230/266/346/214/207/345/215/227.md +420 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266/uni-app.md +193 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk//350/267/250/345/271/263/345/217/260/346/241/206/346/236/266.md +15 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//345/256/242/346/210/267/347/253/257-sdk.md +35 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/225/260/346/215/256/345/257/274/345/205/245/filebeat-logstash-/344/275/277/347/224/250/346/214/207/345/215/227.md +638 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/225/260/346/215/256/345/257/274/345/205/245/logbus2-/344/275/277/347/224/250/346/214/207/345/215/227.md +1140 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/225/260/346/215/256/345/257/274/345/205/245/ta-datax-writer-/346/217/222/344/273/266/344/275/277/347/224/250/346/214/207/345/215/227.md +256 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/225/260/346/215/256/345/257/274/345/205/245.md +17 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/225/260/346/225/260/347/247/221/346/212/200sdk/351/232/220/347/247/201/345/243/260/346/230/216.md +298 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c//346/233/264/346/226/260/346/227/245/345/277/227-HZrPwz.md +80 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c//346/233/264/346/226/260/346/227/245/345/277/227-U1zKwj.md +108 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c//346/233/264/346/226/260/346/227/245/345/277/227.md +114 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225-LEb9wx.md +46 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225-TfR3wg.md +46 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +93 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247-U1Qvwk.md +75 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247-X08Fw7.md +75 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +75 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c//350/277/233/351/230/266/346/214/207/345/215/227-Jc1dwk.md +245 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c//350/277/233/351/230/266/346/214/207/345/215/227-YGuuwc.md +237 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c//350/277/233/351/230/266/346/214/207/345/215/227.md +242 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c-D4KBwg.md +211 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c-HF7Dwv.md +169 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/c.md +225 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/erlang//346/233/264/346/226/260/346/227/245/345/277/227.md +55 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/erlang//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +51 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/erlang//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +75 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/erlang//350/277/233/351/230/266/346/214/207/345/215/227.md +151 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/erlang.md +204 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/golang//346/233/264/346/226/260/346/227/245/345/277/227.md +135 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/golang//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +46 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/golang//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +75 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/golang//350/277/233/351/230/266/346/214/207/345/215/227.md +208 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/golang.md +193 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/java//346/233/264/346/226/260/346/227/245/345/277/227.md +138 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/java//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +52 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/java//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +75 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/java//350/277/233/351/230/266/346/214/207/345/215/227.md +289 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/java.md +214 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/lua//346/233/264/346/226/260/346/227/245/345/277/227.md +123 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/lua//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +57 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/lua//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +75 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/lua//350/277/233/351/230/266/346/214/207/345/215/227.md +234 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/lua.md +165 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/nodejs//346/233/264/346/226/260/346/227/245/345/277/227.md +89 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/nodejs//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +65 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/nodejs//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +75 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/nodejs//350/277/233/351/230/266/346/214/207/345/215/227.md +263 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/nodejs.md +161 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/php//346/233/264/346/226/260/346/227/245/345/277/227.md +86 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/php//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +48 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/php//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +75 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/php//350/277/233/351/230/266/346/214/207/345/215/227.md +269 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/php.md +206 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/python//346/233/264/346/226/260/346/227/245/345/277/227.md +155 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/python//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +47 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/python//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +75 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/python//350/277/233/351/230/266/346/214/207/345/215/227.md +274 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/python.md +162 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/ruby//346/233/264/346/226/260/346/227/245/345/277/227.md +53 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/ruby//350/277/233/351/230/266/346/214/207/345/215/227//345/256/236/346/227/266/350/260/203/350/257/225.md +50 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/ruby//350/277/233/351/230/266/346/214/207/345/215/227//351/242/204/347/275/256/345/261/236/346/200/247.md +75 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/ruby//350/277/233/351/230/266/346/214/207/345/215/227.md +226 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk/ruby.md +165 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227//346/234/215/345/212/241/347/253/257-sdk.md +23 -0
- package/wiki/te-docs/raw//346/216/245/345/205/245/346/214/207/345/215/227.md +64 -0
- package/wiki/te-docs/raw//350/277/233/351/230/266/346/225/260/346/215/256/347/261/273/345/236/213//345/217/257/346/233/264/346/226/260/344/272/213/344/273/266.md +109 -0
- package/wiki/te-docs/raw//350/277/233/351/230/266/346/225/260/346/215/256/347/261/273/345/236/213//351/246/226/346/254/241/344/272/213/344/273/266/346/240/241/351/252/214.md +88 -0
- package/wiki/te-docs/raw//350/277/233/351/230/266/346/225/260/346/215/256/347/261/273/345/236/213.md +22 -0
- package/wiki/te-docs/schema.md +17 -0
- package/wiki/te-docs/synthesis/batch-ingest-comparison.md +117 -0
- package/wiki/te-docs/synthesis/js-sdk-cheatsheet.md +136 -0
- package/wiki/te-docs/synthesis/restful-api-reference.md +142 -0
- package/wiki/te-docs/synthesis/sdk-selection.md +79 -0
- package/wiki/te-docs/synthesis/server-sdk-overview.md +124 -0
package/wiki/te-docs/raw//350/277/233/351/230/266/346/225/260/346/215/256/347/261/273/345/236/213.md
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
code: advanced_data_type
|
|
3
|
+
name: "进阶数据类型"
|
|
4
|
+
wikiToken: Ljs3w406DiyDLnktFuAcHogInvg
|
|
5
|
+
parentWikiToken: Iufpwws70iX4tUk5qOOcwG5fnFb
|
|
6
|
+
updateTime: 1745310938000
|
|
7
|
+
sourceUrl: https://docs-v2.thinkingdata.cn/?version=v5.0&lan=zh-CN&code=advanced_data_type
|
|
8
|
+
---
|
|
9
|
+
# 进阶数据类型
|
|
10
|
+
|
|
11
|
+
本章节主要介绍 AE 系统中的进阶数据类型,进阶数据类型在系统接收时会有进行额外的数据处理逻辑,在结构上和标准的数据结构也有一些区别,可以查看对应文档了解每种进阶数据类型的能力。
|
|
12
|
+
|
|
13
|
+
::: warning
|
|
14
|
+
|
|
15
|
+
进阶数据类型会有较大的性能开销,为了保证数据处理效率,建议只在合适的场景下使用
|
|
16
|
+
|
|
17
|
+
:::
|
|
18
|
+
|
|
19
|
+
目前存在的进阶数据类型如下:
|
|
20
|
+
|
|
21
|
+
- 可更新事件:可以对事件属性进行更新的特殊事件
|
|
22
|
+
- 首次事件校验:通过加入首次事件校验标识 ID 来判断事件是否首次发生,只允许让 ID 首次出现的数据入库
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# AE docs Wiki Schema
|
|
2
|
+
|
|
3
|
+
## Layout
|
|
4
|
+
- `index.md` — catalog of pages with raw paths and source URLs
|
|
5
|
+
- `raw/` — Feishu docx → markdown mirror (read-only, crawler-owned)
|
|
6
|
+
- `synthesis/` — topic pages authored by synthesizer agents
|
|
7
|
+
- `log.md` — last build report
|
|
8
|
+
|
|
9
|
+
## Query flow for consuming skills
|
|
10
|
+
1. Read `index.md` first.
|
|
11
|
+
2. For topic overviews, prefer `synthesis/`.
|
|
12
|
+
3. For exact API / config lookup, read `raw/`.
|
|
13
|
+
4. Cite `sourceUrl` from page frontmatter when quoting.
|
|
14
|
+
|
|
15
|
+
## Rules
|
|
16
|
+
- Do not edit `raw/` — it is regenerated by the crawler.
|
|
17
|
+
- Hand-authored or LLM-synthesized notes go in `synthesis/`.
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
---
|
|
2
|
+
topic: 批量日志接入方案对比
|
|
3
|
+
sources:
|
|
4
|
+
- raw/接入指南/数据导入.md
|
|
5
|
+
- raw/接入指南/数据导入/logbus2-使用指南.md
|
|
6
|
+
- raw/接入指南/数据导入/logbus-使用指南.md
|
|
7
|
+
- raw/接入指南/数据导入/ta-datax-writer-插件使用指南.md
|
|
8
|
+
- raw/接入指南/数据导入/filebeat-logstash-使用指南.md
|
|
9
|
+
- raw/接入前准备工作/数据规则.md
|
|
10
|
+
generated: 2026-04-15
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# 批量日志接入方案对比
|
|
14
|
+
|
|
15
|
+
AE 提供多种批量/日志类数据导入工具,适用于服务端日志同步、历史数据迁移、多数据源对接等场景。所有工具上传的数据必须遵循 AE 数据格式 [[raw/接入前准备工作/数据规则.md]]。
|
|
16
|
+
|
|
17
|
+
## 方案总览
|
|
18
|
+
|
|
19
|
+
[[raw/接入指南/数据导入.md]]
|
|
20
|
+
|
|
21
|
+
| 工具 | 数据来源 | 吞吐 | 历史数据 | 维护状态 | 主要限制 |
|
|
22
|
+
|---|---|---|---|---|---|
|
|
23
|
+
| **LogBus2** | 日志文件 / Kafka / SLS / CLS | 高 | 最优 | 活跃(推荐) | 需要 Linux/Mac/Win 部署 |
|
|
24
|
+
| LogBus v1 | 日志文件 / Kafka | 中 | 支持 | 维护中(建议迁移) | 内存占用高,速度慢 |
|
|
25
|
+
| DataX Writer | MySQL/HDFS 等多数据源 | 批量 | 适合 | 稳定 | 需要 Java 环境 |
|
|
26
|
+
| Filebeat + Logstash | 日志文件 | 低 | 不推荐 | 稳定 | 吞吐量低 |
|
|
27
|
+
|
|
28
|
+
## LogBus2(推荐)
|
|
29
|
+
|
|
30
|
+
[[raw/接入指南/数据导入/logbus2-使用指南.md]]
|
|
31
|
+
|
|
32
|
+
**版本**:v2.1.2.2(2025-11-07),相比 LogBus v1 内存减少 80%、速度提升 5 倍。
|
|
33
|
+
|
|
34
|
+
**支持数据源**:
|
|
35
|
+
- 本地日志文件(监听目录变更)
|
|
36
|
+
- Kafka(需开启 Consumer Group,默认从 earliest 消费)
|
|
37
|
+
- SLS(需联系阿里云开启 Kafka 协议消费)
|
|
38
|
+
- CLS(需关闭自动分裂,申请 AK/SK)
|
|
39
|
+
|
|
40
|
+
**安装包**:Linux amd64/arm64、Windows、macOS Apple Silicon/Intel、Docker Image
|
|
41
|
+
|
|
42
|
+
**注意事项**:
|
|
43
|
+
- 不要对监听目录下已上传的日志直接重命名(重命名 = 新建文件,会重复上传)
|
|
44
|
+
- 不要手动修改 `runtime/` 目录下的进度快照文件
|
|
45
|
+
- 从 LogBus v1 迁移需联系数数技术支持
|
|
46
|
+
|
|
47
|
+
## LogBus v1(维护中)
|
|
48
|
+
|
|
49
|
+
[[raw/接入指南/数据导入/logbus-使用指南.md]]
|
|
50
|
+
|
|
51
|
+
**版本**:v1.5.17(2022-11-08)
|
|
52
|
+
|
|
53
|
+
**升级方式**(v1.5.0+):
|
|
54
|
+
```bash
|
|
55
|
+
./logbus stop
|
|
56
|
+
./logbus update
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
**每个 APP_ID 至少预留 10G 磁盘空间**(因内部数据缓冲区)。
|
|
60
|
+
|
|
61
|
+
**建议**:新项目直接使用 LogBus2;现有 v1 用户联系技术支持迁移。
|
|
62
|
+
|
|
63
|
+
## DataX Writer(ta-datax-writer)
|
|
64
|
+
|
|
65
|
+
[[raw/接入指南/数据导入/ta-datax-writer-插件使用指南.md]]
|
|
66
|
+
|
|
67
|
+
**适用场景**:从 MySQL、PostgreSQL、HDFS、HBase 等 DataX 支持的数据源迁移数据至 TE。
|
|
68
|
+
|
|
69
|
+
**安装步骤**:
|
|
70
|
+
```bash
|
|
71
|
+
# 1. 下载并解压 DataX
|
|
72
|
+
wget http://datax-opensource.oss-cn-hangzhou.aliyuncs.com/datax.tar.gz
|
|
73
|
+
tar -zxvf datax.tar.gz
|
|
74
|
+
|
|
75
|
+
# 2. 安装 ta-datax-writer 插件
|
|
76
|
+
wget https://download.thinkingdata.cn/tools/release/ta-datax-writer.tar.gz
|
|
77
|
+
cp ta-datax-writer.tar.gz datax/plugin/writer/
|
|
78
|
+
cd datax/plugin/writer && tar -zxvf ta-datax-writer.tar.gz
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
**特性**:支持 gzip/lzo/lz4/snappy 压缩;支持多线程传输;仅支持写入 AE 集群。
|
|
82
|
+
|
|
83
|
+
## Filebeat + Logstash
|
|
84
|
+
|
|
85
|
+
[[raw/接入指南/数据导入/filebeat-logstash-使用指南.md]]
|
|
86
|
+
|
|
87
|
+
**适用场景**:团队已有 ELK 日志采集栈,希望复用已有管道将数据同步至 TE。
|
|
88
|
+
|
|
89
|
+
**安装 Logstash 插件**:
|
|
90
|
+
```bash
|
|
91
|
+
bin/logstash-plugin install logstash-output-thinkingdata
|
|
92
|
+
# 验证安装
|
|
93
|
+
bin/logstash-plugin list
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
**插件版本**:v1.2.0(2023-04-25),需 Logstash 6.x+(依赖 JDK)
|
|
97
|
+
|
|
98
|
+
**限制**:**吞吐量低**,不适合大批量历史数据导入,如需大量历史数据请改用 DataX 或 LogBus2。
|
|
99
|
+
|
|
100
|
+
## 数据格式要求
|
|
101
|
+
|
|
102
|
+
所有批量导入工具上传的数据必须是符合 AE 数据格式的 JSON,每行一条 [[raw/接入前准备工作/数据规则.md]]:
|
|
103
|
+
|
|
104
|
+
```json
|
|
105
|
+
{
|
|
106
|
+
"#account_id": "USER_ID",
|
|
107
|
+
"#distinct_id": "VISITOR_ID",
|
|
108
|
+
"#type": "track",
|
|
109
|
+
"#time": "2026-01-01 10:00:00.000",
|
|
110
|
+
"#event_name": "event_name",
|
|
111
|
+
"properties": {
|
|
112
|
+
"key": "value"
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
`#type` 可选值:`track`、`user_set`、`user_setOnce`、`user_add`、`user_unset`、`user_append`、`user_del`。
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
---
|
|
2
|
+
topic: JavaScript SDK 速查手册
|
|
3
|
+
sources:
|
|
4
|
+
- raw/接入指南/客户端-sdk/javascript.md
|
|
5
|
+
- raw/接入指南/客户端-sdk/javascript/进阶指南.md
|
|
6
|
+
- raw/接入前准备工作/用户识别规则.md
|
|
7
|
+
- raw/接入前准备工作/预置属性与系统字段.md
|
|
8
|
+
generated: 2026-04-15
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# JavaScript SDK 速查手册
|
|
12
|
+
|
|
13
|
+
适用于 Web(Vue2/3、React、Angular)及 Electron 桌面应用。最新版本 **v2.3.1**(2026-01-07)[[raw/接入指南/客户端-sdk/javascript.md]]。
|
|
14
|
+
|
|
15
|
+
## 安装
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
# npm
|
|
19
|
+
npm install thinkingdata-browser --save
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
或者手动载入(`thinkingdata.min.js` 异步 / `thinkingdata.umd.min.js` 同步)。
|
|
23
|
+
|
|
24
|
+
## 初始化
|
|
25
|
+
|
|
26
|
+
```js
|
|
27
|
+
import ta from "thinkingdata-browser";
|
|
28
|
+
ta.init({
|
|
29
|
+
appId: "YOUR_APP_ID", // 必填
|
|
30
|
+
serverUrl: "https://YOUR_SERVER_URL/sync_js", // 必填;云服务用 https://global-receiver-ta.thinkingdata.cn
|
|
31
|
+
autoTrack: {
|
|
32
|
+
pageShow: true, // 自动采集页面展示事件 ta_page_show
|
|
33
|
+
pageHide: true, // 自动采集页面隐藏事件 ta_page_hide
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
[[raw/接入指南/客户端-sdk/javascript.md]]
|
|
39
|
+
|
|
40
|
+
## 用户 ID 管理
|
|
41
|
+
|
|
42
|
+
AE 使用三层 ID 体系:访客 ID(`#distinct_id`)、账号 ID(`#account_id`)、AE 用户 ID(系统内部)[[raw/接入前准备工作/用户识别规则.md]]。
|
|
43
|
+
|
|
44
|
+
```js
|
|
45
|
+
// 设置自定义访客 ID(一般不需要,SDK 自动生成)
|
|
46
|
+
ta.setDistinctId("custom-visitor-id");
|
|
47
|
+
|
|
48
|
+
// 获取访客 ID
|
|
49
|
+
const vid = ta.getDistinctId();
|
|
50
|
+
|
|
51
|
+
// 用户登录 → 设置账号 ID
|
|
52
|
+
ta.login("user-account-id"); // 不会上报登录事件
|
|
53
|
+
|
|
54
|
+
// 用户登出 → 清除账号 ID
|
|
55
|
+
ta.logout(); // 不会上报登出事件
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
[[raw/接入指南/客户端-sdk/javascript/进阶指南.md]]
|
|
59
|
+
|
|
60
|
+
## 事件上报
|
|
61
|
+
|
|
62
|
+
```js
|
|
63
|
+
// 普通事件
|
|
64
|
+
ta.track("product_buy", { product_name: "商品名", price: 99 });
|
|
65
|
+
|
|
66
|
+
// 首次事件(同设备只记录一次)
|
|
67
|
+
ta.trackFirstEvent("first_launch", {}, "first_check_id");
|
|
68
|
+
|
|
69
|
+
// 可更新事件
|
|
70
|
+
ta.trackUpdate("order_pay", { status: "paid" }, "ORDER_ID_001");
|
|
71
|
+
|
|
72
|
+
// 可覆盖事件
|
|
73
|
+
ta.trackOverwrite("order_pay", { status: "refunded" }, "ORDER_ID_001");
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
事件名只能以字母开头,包含字母/数字/下划线,最长 50 字符 [[raw/接入指南/客户端-sdk/javascript.md]]。
|
|
77
|
+
|
|
78
|
+
## 公共事件属性
|
|
79
|
+
|
|
80
|
+
```js
|
|
81
|
+
// 设置(持久化到缓存)
|
|
82
|
+
ta.setSuperProperties({
|
|
83
|
+
channel: "ta",
|
|
84
|
+
age: 25,
|
|
85
|
+
isVip: true,
|
|
86
|
+
birthday: new Date(),
|
|
87
|
+
obj: { key: "value" },
|
|
88
|
+
arr: ["a", "b"]
|
|
89
|
+
});
|
|
90
|
+
|
|
91
|
+
// 动态超级属性(每次 track 时实时计算)
|
|
92
|
+
ta.setDynamicSuperProperties(() => ({ current_time: Date.now() }));
|
|
93
|
+
|
|
94
|
+
// 清除单个
|
|
95
|
+
ta.unsetSuperProperties("channel");
|
|
96
|
+
|
|
97
|
+
// 清除全部
|
|
98
|
+
ta.clearSuperProperties();
|
|
99
|
+
|
|
100
|
+
// 设置页面级属性
|
|
101
|
+
ta.setPageProperty({ page_title: document.title });
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
[[raw/接入指南/客户端-sdk/javascript/进阶指南.md]]
|
|
105
|
+
|
|
106
|
+
## 用户属性
|
|
107
|
+
|
|
108
|
+
```js
|
|
109
|
+
ta.userSet({ username: "Alice", level: 10 }); // 覆盖
|
|
110
|
+
ta.userSetOnce({ register_date: new Date() }); // 仅首次设置生效
|
|
111
|
+
ta.userAdd({ total_spend: 99.9 }); // 数值累加
|
|
112
|
+
ta.userDel(); // 删除用户
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
## 时间事件
|
|
116
|
+
|
|
117
|
+
```js
|
|
118
|
+
// 开始计时
|
|
119
|
+
ta.timeEvent("product_view");
|
|
120
|
+
// 触发时自动附加 #duration 属性(秒)
|
|
121
|
+
ta.track("product_view", { product_id: "P001" });
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
## 预置属性说明
|
|
125
|
+
|
|
126
|
+
[[raw/接入前准备工作/预置属性与系统字段.md]] 中,系统自动填充以 `#` 开头的字段(`#ip`、`#country`、`#os` 等),**不建议手动覆盖**,除 `#ip` 外其他预置属性需在 AE 工作人员指导下设置。
|
|
127
|
+
|
|
128
|
+
## 多实例
|
|
129
|
+
|
|
130
|
+
```js
|
|
131
|
+
ta.initInstance("sub"); // 创建子实例
|
|
132
|
+
ta.sub.init({ appId: "SUB_APP_ID", serverUrl: "..." });
|
|
133
|
+
ta.sub.track("event_name", {});
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
[[raw/接入指南/客户端-sdk/javascript/进阶指南.md]]
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
---
|
|
2
|
+
topic: RESTful API 接入速查
|
|
3
|
+
sources:
|
|
4
|
+
- raw/接入指南/restful-api-使用指南.md
|
|
5
|
+
- raw/接入前准备工作/数据规则.md
|
|
6
|
+
- raw/接入前准备工作/用户识别规则.md
|
|
7
|
+
generated: 2026-04-15
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
# RESTful API 接入速查
|
|
11
|
+
|
|
12
|
+
AE RESTful API 允许在不集成 SDK 或传输工具的情况下,通过 HTTP POST 直接向 AE 上报数据。适用于脚本对接、第三方系统集成、快速验证等场景 [[raw/接入指南/restful-api-使用指南.md]]。
|
|
13
|
+
|
|
14
|
+
## 接入前提
|
|
15
|
+
|
|
16
|
+
上报数据必须遵循 AE 数据格式,详见 [[raw/接入前准备工作/数据规则.md]]。用户 ID 需同时包含 `#account_id`(登录后)或 `#distinct_id`(未登录),详见 [[raw/接入前准备工作/用户识别规则.md]]。
|
|
17
|
+
|
|
18
|
+
## 接口地址
|
|
19
|
+
|
|
20
|
+
| 部署类型 | form-data 接口 | raw JSON 接口 |
|
|
21
|
+
|---|---|---|
|
|
22
|
+
| 云服务 | `https://global-receiver-ta.thinkingdata.cn/sync_data` | `https://global-receiver-ta.thinkingdata.cn/sync_json` |
|
|
23
|
+
| 私有化部署 | `http://数据采集地址/sync_data` | `http://数据采集地址/sync_json` |
|
|
24
|
+
|
|
25
|
+
## 方式一:form-data 上报(`/sync_data`)
|
|
26
|
+
|
|
27
|
+
### 单条数据
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
# 原始 JSON
|
|
31
|
+
{
|
|
32
|
+
"#account_id": "testing",
|
|
33
|
+
"#time": "2019-01-01 10:00:00.000",
|
|
34
|
+
"#type": "track",
|
|
35
|
+
"#event_name": "testing",
|
|
36
|
+
"properties": { "test": "test" }
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
# urlencode 后
|
|
40
|
+
curl "http://receiver:9080/sync_data" \
|
|
41
|
+
--data "appid=YOUR_APP_ID&data=%7b%22%23account_id%22%3a%22testing%22...%7d"
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
### 多条数据
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
curl "http://receiver:9080/sync_data" \
|
|
48
|
+
--data "appid=YOUR_APP_ID&data_list=URLENCODed_JSON_ARRAY"
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
### 请求参数
|
|
52
|
+
|
|
53
|
+
| 参数 | 说明 | 必填 |
|
|
54
|
+
|---|---|---|
|
|
55
|
+
| `appid` | 项目 APP ID | 是 |
|
|
56
|
+
| `data` | 单条 JSON,UTF-8 + urlencode | 二选一 |
|
|
57
|
+
| `data_list` | JSONArray 格式多条数据,UTF-8 + urlencode | 二选一 |
|
|
58
|
+
| `client` | 0(默认)/ 1(强制用上报端 IP 替换 `#ip`) | 否 |
|
|
59
|
+
| `debug` | 0(关闭)/ 1(开启调试,返回详细错误) | 否 |
|
|
60
|
+
|
|
61
|
+
**注意**:Python3 requests 库、Postman 等工具会自动 urlencode,无需手动编码。
|
|
62
|
+
|
|
63
|
+
## 方式二:raw JSON 上报(`/sync_json`)
|
|
64
|
+
|
|
65
|
+
### 单条数据
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
curl -X POST "https://global-receiver-ta.thinkingdata.cn/sync_json" \
|
|
69
|
+
-H "Content-Type: application/json" \
|
|
70
|
+
-d '{
|
|
71
|
+
"appid": "YOUR_APP_ID",
|
|
72
|
+
"debug": 0,
|
|
73
|
+
"data": {
|
|
74
|
+
"#type": "track",
|
|
75
|
+
"#event_name": "test",
|
|
76
|
+
"#time": "2019-11-15 11:35:53.648",
|
|
77
|
+
"#distinct_id": "visitor-001",
|
|
78
|
+
"properties": { "a": "123", "b": 2 }
|
|
79
|
+
}
|
|
80
|
+
}'
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
### 多条数据
|
|
84
|
+
|
|
85
|
+
```bash
|
|
86
|
+
curl -X POST "https://global-receiver-ta.thinkingdata.cn/sync_json" \
|
|
87
|
+
-H "Content-Type: application/json" \
|
|
88
|
+
-d '[
|
|
89
|
+
{ "appid": "YOUR_APP_ID", "data": { "#type": "track", ... } },
|
|
90
|
+
{ "appid": "YOUR_APP_ID", "data": { "#type": "track", ... } }
|
|
91
|
+
]'
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
## 返回码
|
|
95
|
+
|
|
96
|
+
| code | 含义 |
|
|
97
|
+
|---|---|
|
|
98
|
+
| `0` | 上报成功 |
|
|
99
|
+
| `-1` | 数据格式错误(开启 debug 模式时返回详细原因) |
|
|
100
|
+
|
|
101
|
+
Debug 示例错误响应:
|
|
102
|
+
```json
|
|
103
|
+
{"code":-1,"msg":"#time字段格式不对,需传递[yyyy-MM-dd HH:mm:ss]或者[yyyy-MM-dd HH:mm:ss.SSS]格式"}
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
## 数据结构速查
|
|
107
|
+
|
|
108
|
+
[[raw/接入前准备工作/数据规则.md]]
|
|
109
|
+
|
|
110
|
+
```json
|
|
111
|
+
{
|
|
112
|
+
"#account_id": "ABCDEFG-123", // 登录 ID(与 #distinct_id 至少一个必填)
|
|
113
|
+
"#distinct_id": "UUID-xxx", // 访客 ID
|
|
114
|
+
"#type": "track", // 数据类型
|
|
115
|
+
"#time": "2026-01-01 10:00:00.000", // 时间,精确到秒或毫秒
|
|
116
|
+
"#event_name": "event_name", // 事件名(type=track 时必填)
|
|
117
|
+
"#ip": "1.2.3.4", // 可选,用于地理信息
|
|
118
|
+
"#uuid": "unique-uuid", // 可选,用于去重
|
|
119
|
+
"properties": {
|
|
120
|
+
"key": "value" // 自定义属性
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
`#type` 枚举值:
|
|
126
|
+
|
|
127
|
+
| 值 | 含义 |
|
|
128
|
+
|---|---|
|
|
129
|
+
| `track` | 普通事件 |
|
|
130
|
+
| `track_update` | 可更新事件 |
|
|
131
|
+
| `track_overwrite` | 可覆盖事件 |
|
|
132
|
+
| `user_set` | 设置用户属性(覆盖) |
|
|
133
|
+
| `user_setOnce` | 首次设置用户属性 |
|
|
134
|
+
| `user_add` | 用户属性数值累加 |
|
|
135
|
+
| `user_unset` | 清空用户属性 |
|
|
136
|
+
| `user_append` | 用户属性数组追加 |
|
|
137
|
+
| `user_del` | 删除用户 |
|
|
138
|
+
|
|
139
|
+
## Debug 模式建议
|
|
140
|
+
|
|
141
|
+
- `debug=1` 时每条数据都会校验并立即入库,**仅用于测试少量数据**
|
|
142
|
+
- **禁止在生产环境开启 debug 模式**,会严重影响上报性能
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
---
|
|
2
|
+
topic: SDK 选型指南
|
|
3
|
+
sources:
|
|
4
|
+
- raw/接入指南/客户端-sdk.md
|
|
5
|
+
- raw/接入指南/服务端-sdk.md
|
|
6
|
+
- raw/接入指南/数据导入.md
|
|
7
|
+
- raw/接入指南/restful-api-使用指南.md
|
|
8
|
+
- raw/接入前准备工作/数据规则.md
|
|
9
|
+
generated: 2026-04-15
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
# SDK 选型指南
|
|
13
|
+
|
|
14
|
+
本页综合各接入方式的特点,帮助您快速选择最适合场景的 AE 数据接入方案。
|
|
15
|
+
|
|
16
|
+
## 接入方式总览
|
|
17
|
+
|
|
18
|
+
| 接入方式 | 适用场景 | 数据延迟 | 开发成本 | 批量历史数据 |
|
|
19
|
+
|---|---|---|---|---|
|
|
20
|
+
| 客户端 SDK | 移动端/Web/游戏客户端行为采集 | 实时 | 低 | 不适合 |
|
|
21
|
+
| 服务端 SDK + LogBus | 后端业务事件、高精度数据 | 近实时 | 中 | 支持 |
|
|
22
|
+
| LogBus2(独立) | 日志文件监听、Kafka消费、大批量历史数据 | 近实时 | 低(配置型) | 最优 |
|
|
23
|
+
| DataX Writer | 多数据源迁移、离线同步 | 批量 | 中 | 适合 |
|
|
24
|
+
| Filebeat + Logstash | 已有ELK栈、日志管道复用 | 近实时 | 中(吞吐低) | 不推荐 |
|
|
25
|
+
| RESTful API | 无法集成SDK的场景、快速验证 | 实时 | 中(需自行处理) | 支持(手动) |
|
|
26
|
+
|
|
27
|
+
## 客户端 SDK
|
|
28
|
+
|
|
29
|
+
[[raw/接入指南/客户端-sdk.md]] 中列出的客户端覆盖范围:
|
|
30
|
+
|
|
31
|
+
**移动原生**:Android、iOS、OpenHarmony、macOS
|
|
32
|
+
|
|
33
|
+
**Web**:JavaScript(Vue2/3、React、Angular、Electron,~58 KB)
|
|
34
|
+
|
|
35
|
+
**小程序/小游戏**:微信小程序等
|
|
36
|
+
|
|
37
|
+
**游戏引擎**:Unity、Unreal、Cocos2d-x、Cocos2d-Lua、CocosCreator、LayaAir、Egret、Corona
|
|
38
|
+
|
|
39
|
+
**跨平台框架**:React Native、Flutter、uni-app、C++客户端、C#客户端
|
|
40
|
+
|
|
41
|
+
客户端 SDK 自动管理访客 ID、账号 ID 的绑定,并在本地缓存 ID,适合需要自动采集用户行为的场景。
|
|
42
|
+
|
|
43
|
+
## 服务端 SDK
|
|
44
|
+
|
|
45
|
+
[[raw/接入指南/服务端-sdk.md]] 中支持的语言:Java、Golang、C、C#、Erlang、Ruby、Lua、Node.js、PHP、Python、C++。
|
|
46
|
+
|
|
47
|
+
服务端 SDK 的推荐模式是 **SDK 写本地日志文件 + LogBus 监听上传**,既保证数据不丢失,又避免对业务线程产生阻塞影响([[raw/接入指南/服务端-sdk/java.md]])。
|
|
48
|
+
|
|
49
|
+
## 批量日志接入(LogBus / DataX / Filebeat)
|
|
50
|
+
|
|
51
|
+
| 工具 | 推荐版本 | 特点 |
|
|
52
|
+
|---|---|---|
|
|
53
|
+
| LogBus2 | v2.1.2.2(推荐) | 内存占用减至 LogBus v1 的 1/5、速度提升 5 倍,支持 Kafka/SLS/CLS [[raw/接入指南/数据导入/logbus2-使用指南.md]] |
|
|
54
|
+
| LogBus v1 | v1.5.17(维护中) | 经典版本,仍可用,但建议迁移至 v2 [[raw/接入指南/数据导入/logbus-使用指南.md]] |
|
|
55
|
+
| DataX Writer | — | 适合从 MySQL/HDFS 等多数据源迁移数据,使用 ta-datax-writer 插件 [[raw/接入指南/数据导入/ta-datax-writer-插件使用指南.md]] |
|
|
56
|
+
| Filebeat + Logstash | Logstash 6.x+ | 已有 ELK 栈时复用,**吞吐量低,不适合大批量历史数据** [[raw/接入指南/数据导入/filebeat-logstash-使用指南.md]] |
|
|
57
|
+
|
|
58
|
+
## RESTful API
|
|
59
|
+
|
|
60
|
+
[[raw/接入指南/restful-api-使用指南.md]] 提供两种上报方式:
|
|
61
|
+
|
|
62
|
+
- **form-data**:`POST /sync_data`,参数 `appid`、`data`(urlencode)、`client`
|
|
63
|
+
- **raw JSON**:`POST /sync_json`,Body 直接包含 `appid` + `data` 字段
|
|
64
|
+
|
|
65
|
+
适用于:不便集成 SDK 的脚本/工具、快速数据验证、第三方系统对接。数据格式必须遵循 AE 数据规则([[raw/接入前准备工作/数据规则.md]])。
|
|
66
|
+
|
|
67
|
+
## 选型决策树
|
|
68
|
+
|
|
69
|
+
```
|
|
70
|
+
需要采集客户端行为?
|
|
71
|
+
└─ 是 → 选对应平台的客户端 SDK
|
|
72
|
+
需要服务端业务事件?
|
|
73
|
+
└─ 是 → 服务端 SDK + LogBus2
|
|
74
|
+
需要同步历史数据/多数据源迁移?
|
|
75
|
+
└─ 大量 → LogBus2 或 DataX Writer
|
|
76
|
+
└─ 少量 → RESTful API
|
|
77
|
+
已有 ELK 栈?
|
|
78
|
+
└─ 是 → Filebeat + Logstash(注意吞吐限制)
|
|
79
|
+
```
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
---
|
|
2
|
+
topic: 服务端 SDK 总览
|
|
3
|
+
sources:
|
|
4
|
+
- raw/接入指南/服务端-sdk.md
|
|
5
|
+
- raw/接入指南/服务端-sdk/java.md
|
|
6
|
+
- raw/接入指南/服务端-sdk/python.md
|
|
7
|
+
- raw/接入指南/服务端-sdk/golang.md
|
|
8
|
+
- raw/接入指南/服务端-sdk/nodejs.md
|
|
9
|
+
- raw/接入前准备工作/用户识别规则.md
|
|
10
|
+
generated: 2026-04-15
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# 服务端 SDK 总览
|
|
14
|
+
|
|
15
|
+
AE 服务端 SDK 用于从后端服务采集业务事件,支持 11 种语言。推荐架构:**SDK 写本地日志 → LogBus 监听上传**,避免直接 HTTP 推送对业务线程的阻塞影响。
|
|
16
|
+
|
|
17
|
+
## 支持语言对照表
|
|
18
|
+
|
|
19
|
+
[[raw/接入指南/服务端-sdk.md]]
|
|
20
|
+
|
|
21
|
+
| 语言 | 包名/获取方式 | 最新版本 | 更新时间 |
|
|
22
|
+
|---|---|---|---|
|
|
23
|
+
| Java | Maven: `cn.thinkingdata:thinkingdatasdk` | v3.0.4-beta.1 | 2026-01-07 |
|
|
24
|
+
| Python | `pip install ThinkingDataSdk` | v3.0.0 | 2023-10-07 |
|
|
25
|
+
| Golang | `go get github.com/ThinkingDataAnalytics/go-sdk/v2` | v2.1.0 | 2024-12-19 |
|
|
26
|
+
| Node.js | `npm install thinkingdata-node` | v1.5.0 | 2024-03-26 |
|
|
27
|
+
| PHP | Composer / 源码 | — | — |
|
|
28
|
+
| Ruby | 源码 | — | — |
|
|
29
|
+
| Lua | 源码 | — | — |
|
|
30
|
+
| C (服务端) | 源码 | — | — |
|
|
31
|
+
| C# (服务端) | 源码 | — | — |
|
|
32
|
+
| C++ (服务端) | 源码 | — | — |
|
|
33
|
+
| Erlang | 源码 | — | — |
|
|
34
|
+
|
|
35
|
+
## 初始化模式对比
|
|
36
|
+
|
|
37
|
+
所有服务端 SDK 均支持以下两种 Consumer 模式:
|
|
38
|
+
|
|
39
|
+
| 模式 | 说明 | 推荐场景 |
|
|
40
|
+
|---|---|---|
|
|
41
|
+
| **LoggerConsumer(推荐)** | 写入本地日志文件,配合 LogBus 上传 | 生产环境 |
|
|
42
|
+
| **BatchConsumer** | 批量直接 HTTP 上报 | 低流量/测试场景 |
|
|
43
|
+
|
|
44
|
+
### Java 示例
|
|
45
|
+
|
|
46
|
+
```java
|
|
47
|
+
// LoggerConsumer 模式
|
|
48
|
+
TDAnalytics te = new TDAnalytics(new TDLoggerConsumer("LOG_DIRECTORY"), false);
|
|
49
|
+
|
|
50
|
+
// 带文件名前缀
|
|
51
|
+
TDLoggerConsumer.Config config = new TDLoggerConsumer.Config("LOG_DIRECTORY");
|
|
52
|
+
config.setFilenamePrefix("server_events");
|
|
53
|
+
TDAnalytics te = new TDAnalytics(new TDLoggerConsumer(config), false);
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
[[raw/接入指南/服务端-sdk/java.md]]
|
|
57
|
+
|
|
58
|
+
### Python 示例
|
|
59
|
+
|
|
60
|
+
```python
|
|
61
|
+
from tgasdk.sdk import *
|
|
62
|
+
consumer = TDLogConsumer(
|
|
63
|
+
"LOG_DIRECTORY",
|
|
64
|
+
rotate_mode=TD_ROTATE_MODE.HOURLY,
|
|
65
|
+
file_prefix="LOG_FILE_PREFIX"
|
|
66
|
+
)
|
|
67
|
+
te = TDAnalytics(consumer)
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
[[raw/接入指南/服务端-sdk/python.md]]
|
|
71
|
+
|
|
72
|
+
### Golang 示例
|
|
73
|
+
|
|
74
|
+
```go
|
|
75
|
+
import "github.com/ThinkingDataAnalytics/go-sdk/v2/src/thinkingdata"
|
|
76
|
+
// 创建 LogConfig 后初始化 TDAnalytics
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
[[raw/接入指南/服务端-sdk/golang.md]]
|
|
80
|
+
|
|
81
|
+
### Node.js 示例
|
|
82
|
+
|
|
83
|
+
```js
|
|
84
|
+
const ThinkingData = require('thinkingdata-node');
|
|
85
|
+
let teSDK = ThinkingData.initWithLoggingMode('LOG_DIRECTORY', {
|
|
86
|
+
filePrefix: 'test',
|
|
87
|
+
rotateHourly: true
|
|
88
|
+
});
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
[[raw/接入指南/服务端-sdk/nodejs.md]]
|
|
92
|
+
|
|
93
|
+
## 核心 API(跨语言通用)
|
|
94
|
+
|
|
95
|
+
所有服务端 SDK 提供一致的 API 语义:
|
|
96
|
+
|
|
97
|
+
| API | 作用 |
|
|
98
|
+
|---|---|
|
|
99
|
+
| `track(accountId, distinctId, event, properties)` | 上报普通事件 |
|
|
100
|
+
| `trackFirstEvent(...)` | 首次事件(同 firstCheckId 只入库一次) |
|
|
101
|
+
| `trackUpdate(...)` | 可更新事件 |
|
|
102
|
+
| `trackOverwrite(...)` | 可覆盖事件 |
|
|
103
|
+
| `userSet(...)` | 设置用户属性(覆盖) |
|
|
104
|
+
| `userSetOnce(...)` | 首次设置用户属性 |
|
|
105
|
+
| `userAdd(...)` | 数值类用户属性累加 |
|
|
106
|
+
| `userDel(...)` | 删除用户 |
|
|
107
|
+
| `flush()` | 手动刷新缓冲区 |
|
|
108
|
+
| `close()` | 关闭 SDK,确保数据落盘 |
|
|
109
|
+
|
|
110
|
+
## 用户 ID 注意事项
|
|
111
|
+
|
|
112
|
+
服务端 SDK 不会自动管理 ID,调用方需同时传入 `accountId` 和 `distinctId`。若只传其中一个,可能导致 ID 无法绑定、用户重复计算 [[raw/接入前准备工作/用户识别规则.md]]。
|
|
113
|
+
|
|
114
|
+
## 推荐部署架构
|
|
115
|
+
|
|
116
|
+
```
|
|
117
|
+
业务服务 → 服务端 SDK(LoggerConsumer)→ 本地日志文件
|
|
118
|
+
↓
|
|
119
|
+
LogBus2 监听
|
|
120
|
+
↓
|
|
121
|
+
AE 接收端
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
详细 LogBus2 配置见 `synthesis/batch-ingest-comparison.md`。
|