• Stars
    star
    105
  • Rank 326,345 (Top 7 %)
  • Language
    Python
  • License
    MIT License
  • Created over 4 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Buried point data testing tool.

garbevents

本项目由 JetBranins 赞助相关开发工具

Build Status PyPI PyPI - Python Version GitHub top language Downloads GitHub stars https://blog.csdn.net/flower_drop

埋点适配计划

  • 诸葛 IO
  • 神策数据
  • GrowingIO 埋点数据
  • Argo 易观方舟
  • 友盟
  • C4J
  • Mixpanel
  • GA
  • Ptmind Ptengine
  • 国双 WebDissector
  • 谷歌分析 Google Analytics

Logo

安装

pip install -U garbevents

仓库地址:

社区地址

适用场景

  1. 使用 以上厂商 作为埋点收集工具的 。
  2. 需要回归验证大批量埋点是否丢失的。
  3. 使用本工具 自动抓取解析埋点信息数据校验埋点是否 丢失。

功能

  1. 自动解析 移动端\桌面端\h5页面 触发的埋点信息,解密后生成 now_data.txt
  2. 去重后和已知埋点信息diff,保存文件 lost_data.txt

使用

  • 启动服务
  1. 在cmd启动代理服务
gb -p 8889 -s test_script.py

                     __                         __      
   ____ _____ ______/ /_  ___ _   _____  ____  / /______
  / __ `/ __ `/ ___/ __ \/ _ \ | / / _ \/ __ \/ __/ ___/
 / /_/ / /_/ / /  / /_/ /  __/ |/ /  __/ / / / /_(__  ) 
 \__, /\__,_/_/  /_.___/\___/|___/\___/_/ /_/\__/____/  v2.0.5
/____/ 

Proxy server listening at http://*:8889
  • 连接代理
  1. cmd中运行ipconfig 找到自己的ip地址
  2. 手机wifi高级选项,代理选择手动,添加代理服务器
ip:你的电脑ip, 端口:8889
  • 下载证书
  1. 在手机浏览器中打开网址 mitm.it
  2. 选择对应的证书下载安装
mitm.it
  • 开始使用
  1. 此时便可以在手机端操作触发埋点,控制台实时打印当前触发的埋点
  2. 如果想查看丢失的埋点需要先在 ST.all_events 全局变量中传入全部埋点信息
  3. 例如:ST.all_events = ['event_name_1', 'event_name_2']

命令

# 只打印所需日志
gb -p 8889 -q -s test_script.py

诸葛IO Demo

from garbevents.events import GetData
from garbevents.settings import Settings as ST

# 埋点上传url 
ST.url = 'https://datain.zhuge.com'
# 报告生成路径 
ST.report_path = 'report'
# 所有事件名称 
ST.all_events = ['event_name_1', 'event_name_2']
# 接口地址
ST.interface_url = ['apipool', 'APIPOOL']

addons = [
    GetData()
]

神策数据 Demo 1

from garbevents.sensors_events import GetData
from garbevents.settings import Settings as ST

# 埋点上传url 
ST.url = 'http://sensor.wodidashi.com'
# 报告生成路径 
ST.report_path = 'report'
# 所有事件名称 
ST.all_events = ['event_name_1', 'event_name_2']

addons = [
    GetData()
]

神策数据 Demo 2

from garbevents.custom_sensors_events import GetData
from garbevents.settings import Settings as ST

# 埋点上传url 
ST.url = 'http://sensor.wodidashi.com'
# 报告生成路径 
ST.report_path = 'report'
# 所有事件名称 
ST.all_events = ['event_name_1', 'event_name_2']

addons = [
    GetData()
]

GrowingIO Demo

from garbevents.growingio_events import GetData
from garbevents.settings import Settings as ST

# 埋点上传url 
ST.url = 'https://wxapi.growingio.com'
# 报告生成路径 
ST.report_path = 'report'
# 所有事件名称 
ST.all_events = ['event_name_1', 'event_name_2']
addons = [
    GetData()
]

Argo 易观方舟 Demo

from garbevents.argo_events import GetData
from garbevents.settings import Settings as ST

# 埋点上传url 
ST.url = 'https://uat.analysys.cn:4089/'
# 报告生成路径 
ST.report_path = 'report'
# 所有事件名称 
ST.all_events = ['event_name_1', 'event_name_2']
addons = [
    GetData()
]

运行截图

用法拓展

  1. 结合UI自动化,嵌入到你的平台或者框架中,运行自动化脚本的同时,也测试了埋点。
  2. 部署到公司服务器,给测试部门的同学用,助人为乐!!!

趋势图

Stargazers over time

感谢

本工具中的代理功能使用 mitmproxy 实现。

Contributors

以上便是 garbevents 的基本用法介绍。

如果您有发现错误,或者您对 garbevents 有任何建议,欢迎到 garbevents Issues 发表,非常感谢您的支持。您的反馈和建议非常宝贵,希望您的参与能帮助 garbevents 做得更好。