diff --git a/lib/gitlab/satellite/logger.rb b/lib/gitlab/satellite/logger.rb
new file mode 100644
index 0000000000000000000000000000000000000000..6f3f8255aca11e5b9c77bf98bd968a299e3c9756
--- /dev/null
+++ b/lib/gitlab/satellite/logger.rb
@@ -0,0 +1,13 @@
+module Gitlab
+  module Satellite
+    class Logger < Gitlab::Logger
+      def self.file_name
+        'satellites.log'
+      end
+
+      def format_message(severity, timestamp, progname, msg)
+        "#{timestamp.to_s(:long)}: #{msg}\n"
+      end
+    end
+  end
+end
diff --git a/lib/gitlab/satellite/satellite.rb b/lib/gitlab/satellite/satellite.rb
index d8e8f58963bde352e5de13a4571dcf452f90bb3d..95273a6d2080c79feb7822ace14842a2da73780c 100644
--- a/lib/gitlab/satellite/satellite.rb
+++ b/lib/gitlab/satellite/satellite.rb
@@ -13,6 +13,10 @@ module Gitlab
         @project = project
       end
 
+      def log message
+        Gitlab::Satellite::Logger.error(message)
+      end
+
       def raise_no_satellite
         raise SatelliteNotExistError.new("Satellite doesn't exist")
       end
@@ -29,10 +33,13 @@ module Gitlab
         output, status = popen("git clone #{project.url_to_repo} #{path}",
                                Gitlab.config.satellites.path)
 
+        log("PID: #{project.id}: git clone #{project.url_to_repo} #{path}")
+        log("PID: #{project.id}: -> #{output}")
+
         if status.zero?
           true
         else
-          Gitlab::GitLogger.error("Failed to create satellite for #{project.name_with_namespace}")
+          log("Failed to create satellite for #{project.name_with_namespace}")
           false
         end
       end