Dont use decorators in basic log tests.
diff --git a/trace_event/multiple_process_test.py b/trace_event/multiple_process_test.py
index 80d915d..36a9731 100644
--- a/trace_event/multiple_process_test.py
+++ b/trace_event/multiple_process_test.py
@@ -7,10 +7,9 @@
 import subprocess
 import sys
 import unittest
-from . import *
+from .log import *
 from .trace_test import *
 
-
 import os
 
 class MultipleProcessTest(TraceTest):
diff --git a/trace_event/multiprocessing_test.py b/trace_event/multiprocessing_test.py
index 69e402d..e548682 100644
--- a/trace_event/multiprocessing_test.py
+++ b/trace_event/multiprocessing_test.py
@@ -5,7 +5,7 @@
 import tempfile
 import time
 import unittest
-from . import *
+from .log import *
 from .trace_test import *
 
 import os
@@ -17,9 +17,10 @@
 
   So, we wrap the function of interest.
   """
-  @trace
   def do_work():
+    trace_begin("do_work")
     time.sleep(0.25)
+    trace_end("do_work")
   do_work()
 
 def AssertTracingEnabled():
@@ -37,33 +38,36 @@
     self.assertTrue(hasattr(p, "_shimmed_by_trace_event"))
 
   def test_trace_enable_throws_in_child(self):
-    @trace
     def work():
+      trace_begin("work")
       p = multiprocessing.Pool(1)
       self.assertRaises(Exception, lambda: p.apply(TryToDisableTracing, ()))
       p.close()
       p.terminate()
       p.join()
+      trace_end("work")
     res = self.go(work)
 
   def test_trace_enabled_in_child(self):
-    @trace
     def work():
+      trace_begin("work")
       p = multiprocessing.Pool(1)
       p.apply(AssertTracingEnabled, ())
       p.close()
       p.terminate()
       p.join()
+      trace_end("work")
     res = self.go(work)
 
   def test_one_func(self):
-    @trace
     def work():
+      trace_begin("work")
       p = multiprocessing.Pool(1)
       p.apply(DoWork, ())
       p.close()
       p.terminate()
       p.join()
+      trace_end("work")
     res = self.go(work)
     work_events = res.findByName('work')
     do_work_events = res.findByName('do_work')
diff --git a/trace_event/single_thread_test.py b/trace_event/single_thread_test.py
index 3292375..b25e919 100644
--- a/trace_event/single_thread_test.py
+++ b/trace_event/single_thread_test.py
@@ -6,18 +6,19 @@
 import tempfile
 import time
 import unittest
-from . import *
+from .log import *
 from .trace_test import *
 
 class SingleThreadTest(TraceTest):
   def test_one_func(self):
     actual_diff = []
-    @trace
     def func1():
+      trace_begin("func1")
       start = time.time()
       time.sleep(0.25)
       end = time.time()
       actual_diff.append(end-start) # Pass via array because of Python scoping
+      trace_end("func1")
 
     res = self.go(func1)
     tids = res.findThreadIds()
@@ -31,11 +32,12 @@
     self.assertTrue(math.fabs(actual_diff - measured_diff) < 1000)
 
   def test_redundant_flush(self):
-    @trace
     def func1():
+      trace_begin("func1")
       time.sleep(0.25)
       trace_flush()
       trace_flush()
+      trace_end("func1")
 
     res = self.go(func1)
     events = res.findEventsOnThread(res.findThreadIds()[0])
@@ -44,14 +46,16 @@
     self.assertEquals('E', events[1]["ph"])
 
   def test_nested_func(self):
-    @trace
     def func1():
+      trace_begin("func1")
       time.sleep(0.25)
       func2()
+      trace_end("func1")
 
-    @trace
     def func2():
+      trace_begin("func2")
       time.sleep(0.05)
+      trace_end("func2")
 
     res = self.go(func1)
     self.assertEquals(1, len(res.findThreadIds()))