diff --git a/endpoints/trackhelper.py b/endpoints/trackhelper.py index df8af5aae..a92955708 100644 --- a/endpoints/trackhelper.py +++ b/endpoints/trackhelper.py @@ -1,6 +1,6 @@ import logging -from app import analytics, app +from app import analytics, app, userevents from data import model from flask import request from auth.auth_context import get_authenticated_user, get_validated_token, get_validated_oauth_token @@ -41,7 +41,21 @@ def track_and_log(event_name, repo, **kwargs): 'repository': '%s/%s' % (namespace, repository), } + # Publish the user event (if applicable) + if get_authenticated_user(): + user_event_data = { + 'action': event_name, + 'repository': repository, + 'namespace': namespace + } + + event = userevents.get_event(get_authenticated_user().username) + event.publish_event_data('docker-cli', user_event_data) + + # Save the action to mixpanel. analytics.track(analytics_id, event_name, extra_params) + + # Log the action to the database. model.log_action(event_name, namespace, performer=get_authenticated_user(), ip=request.remote_addr, metadata=metadata,