devserver: move scripts to venv.
There's a dependency error in importing google.protobuf.descriptor.
To avoid further troubles, this CL tends to move monitor scripts for
devserver to venv.
BUG=chromium:708890
TEST=Run bin/apache_log_metrics & bin/tail_until_writer_finished.
Change-Id: Ib1b69e12aea1e09c3d2c6a3d41bc796070d9daa0
Reviewed-on: https://chromium-review.googlesource.com/490707
Commit-Ready: Xixuan Wu <xixuan@chromium.org>
Tested-by: Xixuan Wu <xixuan@chromium.org>
Reviewed-by: Xixuan Wu <xixuan@chromium.org>
diff --git a/apache_log_metrics.py b/apache_log_metrics.py
index 0bd1a4d..9c9d52c 100755
--- a/apache_log_metrics.py
+++ b/apache_log_metrics.py
@@ -1,4 +1,4 @@
-#!/usr/bin/python2
+#!/usr/bin/env python2
# Copyright 2016 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
@@ -15,8 +15,12 @@
import re
import sys
-from devserver import MakeLogHandler
+# TODO(ayatane): Fix cros lint pylint to work with virtualenv imports
+# pylint: disable=import-error
+from devserver_lib.devserver import MakeLogHandler
+# only import setup_chromite before chromite import.
+import setup_chromite # pylint: disable=unused-import
from chromite.lib import ts_mon_config
from chromite.lib import metrics
from chromite.lib import cros_logging as logging
@@ -188,7 +192,7 @@
"""Parses command line arguments."""
p = argparse.ArgumentParser(
description='Parses apache logs and emits metrics to Monarch')
- p.add_argument('--logfile')
+ p.add_argument('--logfile', required=True)
return p.parse_args()
@@ -196,6 +200,7 @@
"""Sets up logging and runs matchers against stdin"""
args = ParseArgs()
root = logging.getLogger()
+
root.addHandler(MakeLogHandler(args.logfile))
root.setLevel(logging.DEBUG)
ts_mon_config.SetupTsMonGlobalState('devserver_apache_log_metrics')