From 71c667a446b997bb8e8bef2c77462e09c7cb9881 Mon Sep 17 00:00:00 2001 From: Tigran Mkrtchyan Date: Mon, 11 Nov 2013 17:16:01 +0100 Subject: [PATCH] nfs: add -c option to statics command to reset counters Acked-by: Gerd Behrmann Target: master Require-book: no Require-notes: no --- .../dcache/chimera/nfsv41/door/NFSv41Door.java | 12 +++++++++++- .../chimera/nfsv41/mover/NfsTransferService.java | 15 +++++++++++++-- 2 files changed, 24 insertions(+), 3 deletions(-) diff --git a/modules/dcache/src/main/java/org/dcache/chimera/nfsv41/door/NFSv41Door.java b/modules/dcache/src/main/java/org/dcache/chimera/nfsv41/door/NFSv41Door.java index 7912d87748a..1d8e0792c82 100644 --- a/modules/dcache/src/main/java/org/dcache/chimera/nfsv41/door/NFSv41Door.java +++ b/modules/dcache/src/main/java/org/dcache/chimera/nfsv41/door/NFSv41Door.java @@ -83,6 +83,7 @@ import org.dcache.nfs.vfs.Inode; import org.dcache.nfs.vfs.VirtualFileSystem; import org.dcache.chimera.nfsv41.mover.NFS4ProtocolInfo; +import org.dcache.commons.stats.RequestExecutionTimeGauges; import org.dcache.commons.util.NDC; import org.dcache.util.LoginBrokerHandler; import org.dcache.util.RedirectedTransfer; @@ -712,10 +713,19 @@ private static multipath_list4 toMultipath(InetSocketAddress[] addresses) return multipath; } + public final static String fh_stats = + "stats [-c] # show nfs requests statstics\n\n" + + " Print nfs operation statistics.\n" + + " -c clear current statistics values"; + public final static String hh_stats = " [-c] # show nfs requests statstics"; public String ac_stats(Args args) { + RequestExecutionTimeGauges gauges = _nfs4.getStatistics(); StringBuilder sb = new StringBuilder(); - sb.append("Stats:").append("\n").append(_nfs4.getStatistics()); + sb.append("Stats:").append("\n").append(gauges); + if (args.hasOption("c")) { + gauges.reset(); + } return sb.toString(); } } diff --git a/modules/dcache/src/main/java/org/dcache/chimera/nfsv41/mover/NfsTransferService.java b/modules/dcache/src/main/java/org/dcache/chimera/nfsv41/mover/NfsTransferService.java index 8f2afca12cb..d3ae38ec510 100644 --- a/modules/dcache/src/main/java/org/dcache/chimera/nfsv41/mover/NfsTransferService.java +++ b/modules/dcache/src/main/java/org/dcache/chimera/nfsv41/mover/NfsTransferService.java @@ -27,6 +27,7 @@ import org.dcache.nfs.v4.NFS4Client; import org.dcache.nfs.v4.NFSv41Session; import org.dcache.nfs.v4.xdr.stateid4; +import org.dcache.commons.stats.RequestExecutionTimeGauges; import org.dcache.pool.FaultAction; import org.dcache.pool.FaultEvent; import org.dcache.pool.FaultListener; @@ -145,10 +146,20 @@ private InetSocketAddress[] localSocketAddresses(List addresses, in return socketAddresses; } - public final static String hh_nfs_stats = " # show nfs mover statstics"; + public final static String fh_nfs_stats = + "nfs stats [-c] # show nfs requests statstics\n\n" + + " Print nfs operation statistics.\n" + + " -c clear current statistics values"; + public final static String hh_nfs_stats = " [-c] # show nfs mover statstics"; public String ac_nfs_stats(Args args) { + + RequestExecutionTimeGauges gauges = _nfsIO.getNFSServer().getStatistics(); StringBuilder sb = new StringBuilder(); - sb.append("Stats:").append("\n").append(_nfsIO.getNFSServer().getStatistics()); + sb.append("Stats:").append("\n").append(gauges); + + if (args.hasOption("c")) { + gauges.reset(); + } return sb.toString(); }