Commit ff00c87e by Gabe Mulley

rename event to emit

parent f7d1bd88
...@@ -13,6 +13,7 @@ backends for persisting the event data. When the application emits an event ...@@ -13,6 +13,7 @@ backends for persisting the event data. When the application emits an event
each backend will be given an opportunity to save the event to stable storage. each backend will be given an opportunity to save the event to stable storage.
It currently provides: It currently provides:
* Nested contexts - allows data to be injected into events even without * Nested contexts - allows data to be injected into events even without
having to pass around all of said data to every location where the events having to pass around all of said data to every location where the events
are emitted. are emitted.
...@@ -25,12 +26,12 @@ Example:: ...@@ -25,12 +26,12 @@ Example::
tracker = track.get_tracker() tracker = track.get_tracker()
tracker.enter_context('outer', {'user_id': 10938}) tracker.enter_context('outer', {'user_id': 10938})
tracker.event('navigation.request', {'url': 'http://www.edx.org/some/path/1'}) tracker.emit('navigation.request', {'url': 'http://www.edx.org/some/path/1'})
with tracker.context({'user_id': 11111, 'session_id': '2987lkjdyoioey'}): with tracker.context({'user_id': 11111, 'session_id': '2987lkjdyoioey'}):
tracker.event('navigation.request', {'url': 'http://www.edx.org/some/path/2'}) tracker.emit('navigation.request', {'url': 'http://www.edx.org/some/path/2'})
tracker.event('navigation.request', {'url': 'http://www.edx.org/some/path/3'}) tracker.emit('navigation.request', {'url': 'http://www.edx.org/some/path/3'})
# The following list shows the contexts and data for the three events that # The following list shows the contexts and data for the three events that
# are emitted # are emitted
......
...@@ -38,7 +38,7 @@ class TestMongoIntegration(IntegrationTestCase): ...@@ -38,7 +38,7 @@ class TestMongoIntegration(IntegrationTestCase):
def test_sequential_events(self): def test_sequential_events(self):
now = datetime.now(UTC) now = datetime.now(UTC)
for i in range(10): for i in range(10):
self.tracker.event('org.test.user.login', { self.tracker.emit('org.test.user.login', {
'username': 'tester', 'username': 'tester',
'user_id': 10, 'user_id': 10,
'email': 'tester@eventtracking.org', 'email': 'tester@eventtracking.org',
......
...@@ -31,7 +31,7 @@ class TestBackendPerformance(PerformanceTestCase): ...@@ -31,7 +31,7 @@ class TestBackendPerformance(PerformanceTestCase):
def test_sequential_events(self): def test_sequential_events(self):
with self.assert_execution_time_less_than_threshold(): with self.assert_execution_time_less_than_threshold():
for i in range(self.num_events): for i in range(self.num_events):
self.tracker.event('perf.event', { self.tracker.emit('perf.event', {
'sequence': i, 'sequence': i,
'payload': self.random_payload 'payload': self.random_payload
}) })
...@@ -133,7 +133,7 @@ class TrackRequestMiddleware(object): ...@@ -133,7 +133,7 @@ class TrackRequestMiddleware(object):
'query': self._remove_sensitive_request_variables(request.GET), 'query': self._remove_sensitive_request_variables(request.GET),
'body': self._remove_sensitive_request_variables(request.POST) 'body': self._remove_sensitive_request_variables(request.POST)
} }
track.event(event_type, event) track.emit(event_type, event)
return response return response
......
...@@ -55,7 +55,7 @@ class TestTrackRequestMiddleware(TestCase): ...@@ -55,7 +55,7 @@ class TestTrackRequestMiddleware(TestCase):
self.track_middleware = TrackRequestMiddleware() self.track_middleware = TrackRequestMiddleware()
self.request_factory = RequestFactory() self.request_factory = RequestFactory()
track_patcher = patch('eventtracking.django.middleware.track.event') track_patcher = patch('eventtracking.django.middleware.track.emit')
self.mock_track = track_patcher.start() self.mock_track = track_patcher.start()
self.addCleanup(track_patcher.stop) self.addCleanup(track_patcher.stop)
......
...@@ -48,7 +48,7 @@ class TestTrack(TestCase): # pylint: disable=missing-docstring ...@@ -48,7 +48,7 @@ class TestTrack(TestCase): # pylint: disable=missing-docstring
return self.tracker.get_backend('mock{0}'.format(index)) return self.tracker.get_backend('mock{0}'.format(index))
def test_event_simple_event_without_data(self): def test_event_simple_event_without_data(self):
self.tracker.event(sentinel.event_type) self.tracker.emit(sentinel.event_type)
self.assert_backend_called_with(sentinel.event_type) self.assert_backend_called_with(sentinel.event_type)
...@@ -85,7 +85,7 @@ class TestTrack(TestCase): # pylint: disable=missing-docstring ...@@ -85,7 +85,7 @@ class TestTrack(TestCase): # pylint: disable=missing-docstring
) )
def test_event_simple_event_without_type(self): def test_event_simple_event_without_type(self):
self.tracker.event(data={sentinel.key: sentinel.value}) self.tracker.emit(data={sentinel.key: sentinel.value})
self.assert_backend_called_with( self.assert_backend_called_with(
'unknown', 'unknown',
...@@ -95,14 +95,14 @@ class TestTrack(TestCase): # pylint: disable=missing-docstring ...@@ -95,14 +95,14 @@ class TestTrack(TestCase): # pylint: disable=missing-docstring
) )
def test_event_simple_event_without_type_or_data(self): def test_event_simple_event_without_type_or_data(self):
self.tracker.event() self.tracker.emit()
self.assert_backend_called_with( self.assert_backend_called_with(
'unknown', 'unknown',
{} {}
) )
def test_event_simple_event_with_data(self): def test_event_simple_event_with_data(self):
self.tracker.event( self.tracker.emit(
sentinel.event_type, sentinel.event_type,
{ {
sentinel.key: sentinel.value sentinel.key: sentinel.value
...@@ -118,7 +118,7 @@ class TestTrack(TestCase): # pylint: disable=missing-docstring ...@@ -118,7 +118,7 @@ class TestTrack(TestCase): # pylint: disable=missing-docstring
def test_multiple_backends(self): def test_multiple_backends(self):
self.configure_mock_backends(2) self.configure_mock_backends(2)
self.tracker.event(sentinel.event_type) self.tracker.emit(sentinel.event_type)
for backend in self._mock_backends: for backend in self._mock_backends:
self.assert_backend_called_with( self.assert_backend_called_with(
...@@ -128,13 +128,13 @@ class TestTrack(TestCase): # pylint: disable=missing-docstring ...@@ -128,13 +128,13 @@ class TestTrack(TestCase): # pylint: disable=missing-docstring
self.configure_mock_backends(2) self.configure_mock_backends(2)
self.get_mock_backend(0).send.side_effect = Exception self.get_mock_backend(0).send.side_effect = Exception
self.tracker.event(sentinel.event_type) self.tracker.emit(sentinel.event_type)
self.assert_backend_called_with( self.assert_backend_called_with(
sentinel.event_type, backend=self.get_mock_backend(1)) sentinel.event_type, backend=self.get_mock_backend(1))
def test_global_tracker(self): def test_global_tracker(self):
track.event(sentinel.event_type) track.emit(sentinel.event_type)
self.assert_backend_called_with( self.assert_backend_called_with(
sentinel.event_type) sentinel.event_type)
...@@ -147,7 +147,7 @@ class TestTrack(TestCase): # pylint: disable=missing-docstring ...@@ -147,7 +147,7 @@ class TestTrack(TestCase): # pylint: disable=missing-docstring
data = {sentinel.key: sentinel.value} data = {sentinel.key: sentinel.value}
self.tracker.enter_context('single', context) self.tracker.enter_context('single', context)
self.tracker.event(sentinel.event_type, data) self.tracker.emit(sentinel.event_type, data)
self.tracker.exit_context('single') self.tracker.exit_context('single')
self.assert_backend_called_with( self.assert_backend_called_with(
...@@ -166,7 +166,7 @@ class TestTrack(TestCase): # pylint: disable=missing-docstring ...@@ -166,7 +166,7 @@ class TestTrack(TestCase): # pylint: disable=missing-docstring
} }
self.tracker.enter_context('outer', context) self.tracker.enter_context('outer', context)
self.tracker.enter_context('inner', override_context) self.tracker.enter_context('inner', override_context)
self.tracker.event(sentinel.event_type) self.tracker.emit(sentinel.event_type)
self.tracker.exit_context('inner') self.tracker.exit_context('inner')
self.tracker.exit_context('outer') self.tracker.exit_context('outer')
......
...@@ -49,7 +49,7 @@ class Tracker(object): ...@@ -49,7 +49,7 @@ class Tracker(object):
"""Gets the backend that was configured with `name`""" """Gets the backend that was configured with `name`"""
return self.backends[name] return self.backends[name]
def event(self, event_type=None, data=None): def emit(self, event_type=None, data=None):
""" """
Emit an event annotated with the UTC time when this function was called. Emit an event annotated with the UTC time when this function was called.
...@@ -105,7 +105,7 @@ def register_tracker(tracker, name=DEFAULT_TRACKER_NAME): ...@@ -105,7 +105,7 @@ def register_tracker(tracker, name=DEFAULT_TRACKER_NAME):
""" """
Makes a tracker globally accessible. Providing no `name` parameter Makes a tracker globally accessible. Providing no `name` parameter
allows you to register the global default tracker that will be used allows you to register the global default tracker that will be used
by subsequent calls to `track.event`. by subsequent calls to `track.emit`.
""" """
TRACKERS[name] = tracker TRACKERS[name] = tracker
...@@ -119,6 +119,6 @@ def get_tracker(name=DEFAULT_TRACKER_NAME): ...@@ -119,6 +119,6 @@ def get_tracker(name=DEFAULT_TRACKER_NAME):
return TRACKERS[name] return TRACKERS[name]
def event(event_type=None, data=None): def emit(event_type=None, data=None):
"""Calls `Tracker.event` on the default global tracker""" """Calls `Tracker.emit` on the default global tracker"""
return get_tracker().event(event_type=event_type, data=data) return get_tracker().emit(event_type=event_type, data=data)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment