[autotest] RPC logging server

frontend.afe.rpc_handler is not logging RPC logs correctly
due to multi apache processes.
We should have a daemon that receives log records from the
apache processes and writes them in a chronological order.

BUG=chromium:490897
TEST=Run dummy suite on local machine.
DEPLOY=apache

Change-Id: If53667720922d0db248225d17b9e5a31d350f063
Reviewed-on: https://chromium-review.googlesource.com/274827
Reviewed-by: Dan Shi <dshi@chromium.org>
Reviewed-by: Fang Deng <fdeng@chromium.org>
Tested-by: Mungyung Ryu <mkryu@google.com>
Commit-Queue: Mungyung Ryu <mkryu@google.com>
diff --git a/frontend/afe/rpcserver_logging.py b/frontend/afe/rpcserver_logging.py
index a8523fb..f181672 100644
--- a/frontend/afe/rpcserver_logging.py
+++ b/frontend/afe/rpcserver_logging.py
@@ -1,29 +1,23 @@
 import logging, logging.handlers, time, os
 import common
 from autotest_lib.client.common_lib import global_config
+from autotest_lib.site_utils import rpc_logserver
 
 
 config = global_config.global_config
 LOGGING_ENABLED = config.get_config_value('SERVER', 'rpc_logging', type=bool)
 
-MEGABYTE = 1024 * 1024
-
 rpc_logger = None
 
-def configure_logging():
-    MAX_LOG_SIZE = config.get_config_value('SERVER', 'rpc_max_log_size_mb',
-                                           type=int)
-    NUMBER_OF_OLD_LOGS = config.get_config_value('SERVER', 'rpc_num_old_logs',
-                                                 type=int)
-    log_path = config.get_config_value('SERVER', 'rpc_log_path')
 
-    formatter = logging.Formatter(
-        fmt='[%(asctime)s %(levelname)-5.5s] %(message)s',
-        datefmt='%m/%d %H:%M:%S')
-    handler = logging.handlers.RotatingFileHandler(log_path,
-                                                 maxBytes=MAX_LOG_SIZE*MEGABYTE,
-                                                 backupCount=NUMBER_OF_OLD_LOGS)
-    handler.setFormatter(formatter)
+def configure_logging():
+    logserver_enabled = config.get_config_value(
+            'SERVER', 'rpc_logserver', type=bool)
+    if logserver_enabled:
+        handler = logging.handlers.SocketHandler(
+                'localhost', rpc_logserver.DEFAULT_PORT)
+    else:
+        handler = rpc_logserver.get_logging_handler()
 
     global rpc_logger
     rpc_logger = logging.getLogger('rpc_logger')