-#!/usr/bin/env python2
+#!/usr/bin/env python3
# Copyright (c) 2021 DataDirect Networks, Inc.
# All Rights Reserved.
# Author: flei@ddn.com
Manage all PCC devices and services
"""
-from __future__ import print_function
import argparse
import errno
cmdline = ['lctl', 'pcc', 'list', self.lpcc_mount]
try:
- output = subprocess.check_output(cmdline)
+ output = subprocess.check_output(cmdline).decode()
except subprocess.CalledProcessError as err:
result['status'] = "error"
result['error_msg'] = os.strerror(err.returncode)
result = {}
try:
- fsname = subprocess.check_output(['lfs', 'getname', mount]).split()[0]
+ fsname = subprocess.check_output(['lfs', 'getname', mount]).split()[0].decode()
except subprocess.CalledProcessError as err:
result['error_msg'] = os.strerror(err.returncode)
return result
cmdline = ['lctl', 'get_param', '-n', 'llite.%s.stats' % fsname]
- output = subprocess.check_output(cmdline)
+ output = subprocess.check_output(cmdline).decode()
for line in output.splitlines():
words = line.split()
if (words[0] == "open"):
groups = {}
for lpcc_status in status_list:
mount = lpcc_status['mount']
- if groups.has_key(mount):
+ if mount in groups:
groups[mount]['pcc'].append(lpcc_status)
else:
groups[mount] = {}
groups[mount]['pcc'] = [lpcc_status,]
- for mount in groups.keys():
+ for mount in groups:
fs_stats = self._get_fs_stats(mount)
groups[mount]['fs_stats'] = fs_stats
eprint("Response:", response)
try:
- conn.sendall(json.dumps(response))
+ conn.sendall(json.dumps(response).encode())
conn.shutdown(socket.SHUT_WR)
except Exception as ex:
eprint(ex)
"please check whether the monitor service started!")
sys.exit(1)
- sock.sendall(json.dumps(cmd))
+ sock.sendall(json.dumps(cmd).encode())
sock.shutdown(socket.SHUT_WR)
response = sock.makefile().readline()
sock.close()