diff options
author | wangyaoguang <sunshine.wang@huawei.com> | 2016-04-15 11:26:04 +0800 |
---|---|---|
committer | wangyaoguang <sunshine.wang@huawei.com> | 2016-04-15 11:43:20 +0800 |
commit | e2b73bf29779412d3b0ceb7742e6a4bdcecb7f74 (patch) | |
tree | 3acc602c41485bf570c8b2a5a277dabadd836ea7 /utils/dashboard/collector.py | |
parent | 7d25232df2f07b9bb3c2820a1e248a8a95cbee28 (diff) |
improve data processing script for rubbos
JIRA: BOTTLENECK-63
Change-Id: Iddcb8f354fcf916b3057f677a1f7b0149b727f33
Signed-off-by: wangyaoguang <sunshine.wang@huawei.com>
Diffstat (limited to 'utils/dashboard/collector.py')
-rwxr-xr-x | utils/dashboard/collector.py | 46 |
1 files changed, 0 insertions, 46 deletions
diff --git a/utils/dashboard/collector.py b/utils/dashboard/collector.py deleted file mode 100755 index 1687f80f..00000000 --- a/utils/dashboard/collector.py +++ /dev/null @@ -1,46 +0,0 @@ -############################################################################## -# Copyright (c) 2015 Huawei Technologies Co.,Ltd. and others -# -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Apache License, Version 2.0 -# which accompanies this distribution, and is available at -# http://www.apache.org/licenses/LICENSE-2.0 -############################################################################## - - -import subprocess as subp - -def exec_shell(cmd): - out,err = subp.Popen(cmd, stdout=subp.PIPE, shell=True).communicate() - return out.strip() - - -def get_onetime_data(dir_name): - cmd = "grep -in 'remote client nodes' %s/index.html|awk '{print $5}'|awk -F '<' '{print $1}'" % dir_name - client_node_num = int(exec_shell(cmd)) - cmd = "grep -n 'Number of clients' %s/index.html|awk '{print $5}'|awk -F '<' '{print $1}'" % dir_name - each_client_num = int(exec_shell(cmd)) - total_client = (client_node_num+1) * each_client_num - cmd = 'grep -n "throughput" %s/stat_client*.html |awk -F "<B>" \'FNR%%4==0 {printf "%%s\\n", $3 }\'|awk \'BEGIN{sum=0;}{sum=sum+$1;}END{print sum}\'' % dir_name - throughput = int(exec_shell(cmd)) - - return total_client, throughput - - -class Collector(object): - - - def __init__(self): - pass - - - def collect_data(self, data_home): - cmd = 'ls -l %s |grep ^d|awk \'{print $9}\'' % data_home - result = [] - for subdir in exec_shell(cmd).split('\n'): - total_client, throughput = get_onetime_data(data_home+'/'+subdir) - result.append({'client':total_client, 'throughput':throughput}) - result.sort(key=lambda x:x['client']) - - return result; - |