Re: [PATCH v2] mountstats: Adding 'Day:Hour:Min:Sec' format along with 'age' to "mountstats --nfs" for ease of understanding.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Using the datetime module?

datetime.timedelta(seconds = n)
Should print in below format
0:11:05

On Thu, Jun 4, 2020 at 11:45 PM Chuck Lever <chuck.lever@xxxxxxxxxx> wrote:
>
>
>
> > On Jun 4, 2020, at 1:52 PM, Rohan Sable <rsable@xxxxxxxxxx> wrote:
> >
> > This patch adds printing of 'Age' in 'Sec' and 'Day:Hours:Min:Sec' like below to --nfs in mountstats :
> > NFS mount age: 9479; 0 Day(s) 2 Hour(s) 37 Min(s) 59 Sec(s)
> >
> > Signed-off-by: Rohan Sable <rsable@xxxxxxxxxx>
> > ---
> > tools/mountstats/mountstats.py | 12 ++++++++++++
> > 1 file changed, 12 insertions(+)
> >
> > diff --git a/tools/mountstats/mountstats.py b/tools/mountstats/mountstats.py
> > index d565385d..c4f4f9e6 100755
> > --- a/tools/mountstats/mountstats.py
> > +++ b/tools/mountstats/mountstats.py
> > @@ -233,6 +233,16 @@ Nfsv4ops = [
> >     'COPY_NOTIFY'
> > ]
> >
> > +# Function to convert sec from age to Day:Hours:Min:Sec.
> > +def sec_conv(rem):
> > +    day = int(rem / (24 * 3600))
> > +    rem %= (24 * 3600)
> > +    hrs = int(rem / 3600)
> > +    rem %= 3600
> > +    min = int(rem / 60)
> > +    sec = rem % 60
> > +    print(day, "Day(s)", hrs, "Hour(s)", min, "Min(s)", sec, "Sec(s)")
> > +
>
> Just wondering if there's a Python module that can do this for us?
>
>
> > class DeviceData:
> >     """DeviceData objects provide methods for parsing and displaying
> >     data for a single mount grabbed from /proc/self/mountstats
> > @@ -391,6 +401,8 @@ class DeviceData:
> >         """Pretty-print the NFS options
> >         """
> >         print('  NFS mount options: %s' % ','.join(self.__nfs_data['mountoptions']))
> > +        print('  NFS mount age: %d' % self.__nfs_data['age'], end="; ")
> > +        sec_conv(self.__nfs_data['age'])
> >         print('  NFS server capabilities: %s' % ','.join(self.__nfs_data['servercapabilities']))
> >         if 'nfsv4flags' in self.__nfs_data:
> >             print('  NFSv4 capability flags: %s' % ','.join(self.__nfs_data['nfsv4flags']))
> > --
> > 2.25.4
> >
>
> --
> Chuck Lever
>
>
>




[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux