diff options
author | Scott Mayhew <smayhew@redhat.com> | 2015-12-11 11:16:38 -0500 |
---|---|---|
committer | Steve Dickson <steved@redhat.com> | 2015-12-11 11:22:25 -0500 |
commit | b92f1b94b6a1cc8460a7f11b1b3f5f6f62701145 (patch) | |
tree | a4d92b24ce8f11458c2a745e5f48a015c573f9e9 /tools/mountstats | |
parent | 6c39d9946a6fbe9a65a1194d72268fc4b75b0c6c (diff) | |
download | nfs-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.py | 5 |
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 |