diff --git a/mobly/mesh-run/public_mesh_test.py b/mobly/mesh-run/public_mesh_test.py
index de0cac8fa4235498d60890e7ce5e4fac2ac7e258..c9dc0e1962a2a0734bc0e7f7c89143ea500dc424 100644
--- a/mobly/mesh-run/public_mesh_test.py
+++ b/mobly/mesh-run/public_mesh_test.py
@@ -30,5 +30,13 @@ class PublicMeshTest(base_test.BaseTestClass):
         print("wait for device 2")
         self.droid2.adb.wait_for_device()
 
+        print("pulling logs from device 1")
+        self.pull_logs(self.droid1)
+        print("pulling logs from device 2")
+        self.pull_logs(self.droid2)
+
+  def pull_logs(sefl, droid):
+    droid.adb.pull(["/storage/emulated/0/Android/data/org.briarproject.publicmesh/files/app.log", droid.log_path + "/app.log"])
+
 if __name__ == '__main__':
   test_runner.main()