summaryrefslogtreecommitdiff
path: root/tools/mountstats
diff options
context:
space:
mode:
authorScott Mayhew <smayhew@redhat.com>2015-12-11 11:16:38 -0500
committerSteve Dickson <steved@redhat.com>2015-12-11 11:22:25 -0500
commitb92f1b94b6a1cc8460a7f11b1b3f5f6f62701145 (patch)
treea4d92b24ce8f11458c2a745e5f48a015c573f9e9 /tools/mountstats
parent6c39d9946a6fbe9a65a1194d72268fc4b75b0c6c (diff)
downloadnfs-utils-b92f1b94b6a1cc8460a7f11b1b3f5f6f62701145.tar.gz
mountstats: handle KeyError in accumulate_iostats()
This will prevent a backtrace like this from occurring in 'mountstats nfsstat' if a new NFSv4 operation is added to the kernel but not to the Nfsv4ops list in mountstats.py: Traceback (most recent call last): File "/sbin/mountstats", line 988, in <module> res = main() File "/sbin/mountstats", line 977, in main return args.func(args) File "/sbin/mountstats", line 792, in nfsstat_command v4stats.accumulate_iostats(acc_stats) File "/sbin/mountstats", line 566, in accumulate_iostats self.__rpc_data[op] = list(map(add, self.__rpc_data[op], new_stats.__rpc_data[op])) KeyError: 'SEEK' Signed-off-by: Scott Mayhew <smayhew@redhat.com> Signed-off-by: Steve Dickson <steved@redhat.com>
Diffstat (limited to 'tools/mountstats')
-rw-r--r--tools/mountstats/mountstats.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/tools/mountstats/mountstats.py b/tools/mountstats/mountstats.py
index 011bb42..1e2811f 100644
--- a/tools/mountstats/mountstats.py
+++ b/tools/mountstats/mountstats.py
@@ -563,7 +563,10 @@ class DeviceData:
for the nfsstat command.
"""
for op in new_stats.__rpc_data['ops']:
- self.__rpc_data[op] = list(map(add, self.__rpc_data[op], new_stats.__rpc_data[op]))
+ try:
+ self.__rpc_data[op] = list(map(add, self.__rpc_data[op], new_stats.__rpc_data[op]))
+ except KeyError:
+ continue
def __print_rpc_op_stats(self, op, sample_time):
"""Print generic stats for one RPC op