移动应用的最小分析
django-femtolytics的Python项目详细描述
django女性分析师
这是用于femtolytics.com的开放源代码。使用这个django包,您可以运行自己的femtolytics实例,而不依赖任何第三方跟踪来了解人们如何使用您的移动应用程序。在
你可以在https://pub.dev/packages/femtolytics找到一个女性分析的Flutter客户端
您可以在django-femtolytics-sample找到一个正确配置为运行Django femtolytics的Django示例项目。如果您已经有一个现有的Django项目,并希望将Django femtolytics合并到其中,请按照下面的说明操作。在
入门
首先需要安装依赖项
pip install django-femtolytics
或者把它加到你的要求.txt在
^{pr2}$设置
在你的项目中设置.py将女性分析添加到应用程序列表中
INSTALLED_APPS=[...'femtolytics',]
然后,可以将路径添加到项目URL:
fromdjango.confimportsettingsfromdjango.contribimportadminfromdjango.urlsimportpath,includeurlpatterns=[path('analytics/api/v1/',include('femtolytics.api.urls')),path('analytics/',include('femtolytics.urls')),]
femtolytics.api.urls
对应于移动应用程序客户端将向其发送信息的端点。您应该确保它与在应用程序中配置客户端时传递的URL相匹配。在
femtolytics.urls
是主仪表板URL,可让您访问有关用户正在做什么的详细信息。你将能够跟踪,会议,访客,自定义行动,目标和崩溃。在
最后确保安装迁移
python manage.py migrate
所有仪表板URL femtolytics.urls
都需要用户登录,因此您可以确保没有人可以访问这些信息。在
跟踪
Femtolytics要求创建的应用程序与您在应用程序中使用的包名称相同。因此,在您的客户机中生成事件之前,请务必访问仪表板和add an application
。在
自定义
仪表板是可自定义的,因为它使用Template Views
和Form Views
。在
以下是使用的不同视图
DashboardView
是一个跳板视图,它将选择第一个注册的移动应用程序并重定向到该视图的仪表板。在DashboardByAppView
为特定应用程序生成仪表板。在AppsView
显示已配置应用程序的列表。在AppsAdd
是一个用于添加注册新应用程序的窗体视图。在AppsEdit
是同一个FormView,但用于编辑现有的应用程序。在AppsDelete
删除应用程序。在SessionsView
是一个跳板视图,它将选择第一个注册的移动应用程序并重定向到该应用程序的会话列表。在SessionsByAppView
显示特定应用程序的会话列表。在SessionView
显示特定会话。在VisitorsView
是一个sprinboard视图,它将选择第一个注册的移动应用程序并重定向到该应用程序的访问者列表。在VisitorsByAppView
显示特定应用程序的访问者列表。在VisitorView
显示一个特定的访问者。在CrashesView
是一个sprinboard视图,它将选择第一个注册的移动应用程序并重定向到该应用程序的崩溃列表。在CrashesByAppView
显示特定应用程序的崩溃列表。在CrashView
显示一个特定的崩溃。在GoalsView
是一个sprinboard视图,它将选择第一个注册的移动应用程序并重定向到该应用程序的目标列表。在GoalsByAppView
显示特定应用程序的目标列表。在GoalView
显示一个特定的目标。在
跳板视图DashboardView
、SessionsView
、VisitorsView
、CrashesView
和{success_url
和{success_url
,否则将重定向到failed_url
。在
只有AppsAdd
、AppsEdit
和{success_url
参数来定义添加、编辑或删除应用程序后的重定向位置。在
以下是使用自定义模板的自定义路由定义示例:
app_name="analytics"urlpatterns=[path("",views.index,name="index"),# Dashboardpath("dashboard",subscription_required()(femto_views.DashboardView.as_view(success_url="analytics:dashboards_by_app",failed_url="analytics:apps_add",)),name="dashboard",),path("dashboard/<uuid:app_id>",subscription_required()(femto_views.DashboardByAppView.as_view(template_name="analytics/dashboard.html",)),name="dashboards_by_app",),# Appspath("apps/",femto_views.AppsView.as_view(template_name="analytics/apps.html",),name="apps",),path("apps/add",femto_views.AppsAdd.as_view(template_name="analytics/apps_add.html",success_url=reverse_lazy("analytics:apps"),),name="apps_add",),path("apps/edit/<uuid:app_id>",femto_views.AppsEdit.as_view(template_name="analytics/apps_add.html",success_url=reverse_lazy("analytics:apps"),),name="apps_edit",),path("apps/delete/<uuid:app_id>",femto_views.AppsDelete.as_view(success_url=reverse_lazy("analytics:apps"),),name="apps_delete",),# Sessionspath("sessions",subscription_required()(femto_views.SessionsView.as_view(success_url="analytics:sessions_by_app",failed_url="analytics:account",),),name="sessions",),path("sessions/<uuid:app_id>",subscription_required()(femto_views.SessionsByAppView.as_view(template_name="analytics/sessions.html",)),name="sessions_by_app",),path("sessions/<uuid:app_id>/<uuid:session_id>",subscription_required()(femto_views.SessionView.as_view(template_name="analytics/session.html",)),name="session",),# Visitorspath("visitors",subscription_required()(femto_views.VisitorsView.as_view(success_url="analytics:visitors_by_app",failed_url="analytics:account",)),name="visitors",),path("visitors/<uuid:app_id>",subscription_required()(femto_views.VisitorsByAppView.as_view(template_name="analytics/visitors.html",)),name="visitors_by_app",),path("visitors/<uuid:app_id>/<uuid:visitor_id>",subscription_required()(femto_views.VisitorView.as_view(template_name="analytics/visitor.html",)),name="visitor",),# Crashpath("crashes/<uuid:app_id>/<uuid:crash_id>",subscription_required()(femto_views.CrashView.as_view(template_name="analytics/crash.html",)),name="crash",),# Goalpath("goals/<uuid:app_id>/<uuid:goal_id>",subscription_required()(femto_views.GoalView.as_view(template_name="analytics/goal.html",)),name="goal",),]
- 项目
标签: