Re: [Gluster-devel] New project on the Forge - gstatus

2014-05-25 Thread Vipul Nayyar
, 2014 5:06:27 AM

  Subject: Re: [Gluster-devel] New project on the Forge - gstatus


  Hi Paul,


  I'm really not sure, if this can be done in python(at least comfortably).
  Maybe we can tread on the same path as Justin's glusterflow in python. But
  I
  don't think, all the io-stats counters will be available with the way how
  Justin's used Jeff Darcy's previous work to build his tool. I can be 
  wrong.
  My knowledge is a bit incomplete and based on very less experience as a
  user
  and an amateur Gluster developer. Please do correct me, if I can be.


  Regards

  Vipul Nayyar

___
Gluster-devel mailing list
Gluster-devel@gluster.org
http://supercolony.gluster.org/mailman/listinfo/gluster-devel


___
Gluster-devel mailing list
Gluster-devel@gluster.org
http://supercolony.gluster.org/mailman/listinfo/gluster-devel

___
Gluster-devel mailing list
Gluster-devel@gluster.org
http://supercolony.gluster.org/mailman/listinfo/gluster-devel


Re: [Gluster-devel] New project on the Forge - gstatus

2014-05-25 Thread Joe Julian
-de...@nongnu.org

  Sent: Thursday, 20 February, 2014 5:06:27 AM

  Subject: Re: [Gluster-devel] New project on the Forge - gstatus


  Hi Paul,


  I'm really not sure, if this can be done in python(at least
comfortably).
  Maybe we can tread on the same path as Justin's glusterflow in
python. But
  I
  don't think, all the io-stats counters will be available with the
way how
  Justin's used Jeff Darcy's previous work to build his tool. I can
be wrong.
  My knowledge is a bit incomplete and based on very less
experience as a
  user
  and an amateur Gluster developer. Please do correct me, if I can
be.


  Regards

  Vipul Nayyar

___
Gluster-devel mailing list
Gluster-devel@gluster.org
http://supercolony.gluster.org/mailman/listinfo/gluster-devel


___
Gluster-devel mailing list
Gluster-devel@gluster.org
http://supercolony.gluster.org/mailman/listinfo/gluster-devel





___
Gluster-devel mailing list
Gluster-devel@gluster.org
http://supercolony.gluster.org/mailman/listinfo/gluster-devel

-- 
Sent from my Android device with K-9 Mail. Please excuse my brevity.___
Gluster-devel mailing list
Gluster-devel@gluster.org
http://supercolony.gluster.org/mailman/listinfo/gluster-devel


Re: [Gluster-devel] New project on the Forge - gstatus

2014-05-17 Thread Kaushal M
Avati that's awesome! I didn't know that the meta xlator could do that
already.


On Sat, May 17, 2014 at 9:30 AM, Anand Avati av...@gluster.org wrote:

 KP, Vipul,

 It will be awesome to get io-stats like instrumentation on the client
 side. Here are some further thoughts on how to implement that. If you have
 a recent git HEAD build, I would suggest that you explore the latency stats
 on the client side exposed through meta at
 $MNT/.meta/graphs/active/$xlator/profile. You can enable latency
 measurement with echo 1  $MNT/.meta/measure_latency. I would suggest
 extending these stats with the extra ones io-stats has, and make
 glusterfsiostats expose these stats.

 If you can compare libglusterfs/src/latency.c:gf_latency_begin(),
 gf_latency_end() and gf_latency_udpate() with the macros in io-stats.c 
 UPDATE_PROFILE_STATS()
 and START_FOP_LATENCY(), you will quickly realize how a lot of logic is
 duplicated between io-stats and latency.c. If you can enhance latency.c and
 make it capture the remaining stats what io-stats is capturing, the
 benefits of this approach would be:

 - stats are already getting captured at all xlator levels, and not just at
 the position where io-stats is inserted
 - file like interface makes the stats more easily inspectable and
 consumable, and updated on the fly
 - conforms with the way rest of the internals are exposed through
 $MNT/.meta

 In order to this, you might want to look into:

 - latency.c as of today captures fop count, mean latency, total time,
 whereas io-stats measures these along with min-time, max-time and
 block-size histogram.
 - extend gf_proc_dump_latency_info() to dump the new stats
 - either prettify that output like 'volume profile info' output, or
 JSONify it like xlators/meta/src/frames-file.c
 - add support for cumulative vs interval stats (store an extra copy of
 this-latencies[])

 etc..

 Thanks!


 On Fri, Apr 25, 2014 at 9:09 PM, Krishnan Parthasarathi 
 kpart...@redhat.com wrote:

 [Resending due to gluster-devel mailing list issue]

 Apologies for the late reply.

 glusterd uses its socket connection with brick processes (where io-stats
 xlator is loaded) to
 gather information from io-stats via an RPC request. This facility is
 restricted to brick processes
 as it stands today.

 Some background ...
 io-stats xlator is loaded, both in GlusterFS mounts and brick processes.
 So, we have the capabilities
 to monitor I/O statistics on both sides. To collect I/O statistics at the
 server side, we have

 # gluster volume profile VOLNAME [start | info | stop]
 AND
 #gluster volume top VOLNAME info [and other options]

 We don't have a usable way of gathering I/O statistics (not monitoring,
 though the counters could be enhanced)
 at the client-side, ie. for a given mount point. This is the gap
 glusterfsiostat aims to fill. We need to remember
 that the machines hosting GlusterFS mounts may not have glusterd
 installed on them.

 We are considering rrdtool as a possible statistics database because it
 seems like a natural choice for storing time-series
 data. rrdtool is capable of answering high-level statistical queries on
 statistics that were logged in it by io-stats xlator
 over and above printing running counters periodically.

 Hope this gives some more clarity on what we are thinking.

 thanks,
 Krish
 - Original Message -

  Probably me not understanding.

  the comment iostats making data available to glusterd over RPC - is
 what I
  latched on to. I wondered whether this meant that a socket could be
 opened
  that way to get at the iostats data flow.

  Cheers,

  PC

  - Original Message -

   From: Vipul Nayyar nayyar_vi...@yahoo.com
 
   To: Paul Cuzner pcuz...@redhat.com, Krishnan Parthasarathi
   kpart...@redhat.com
 
   Cc: Vijay Bellur vbel...@redhat.com, gluster-devel
   gluster-de...@nongnu.org
 
   Sent: Thursday, 20 February, 2014 5:06:27 AM
 
   Subject: Re: [Gluster-devel] New project on the Forge - gstatus
 

   Hi Paul,
 

   I'm really not sure, if this can be done in python(at least
 comfortably).
   Maybe we can tread on the same path as Justin's glusterflow in
 python. But
   I
   don't think, all the io-stats counters will be available with the way
 how
   Justin's used Jeff Darcy's previous work to build his tool. I can be
 wrong.
   My knowledge is a bit incomplete and based on very less experience as
 a
   user
   and an amateur Gluster developer. Please do correct me, if I can be.
 

   Regards
 
   Vipul Nayyar
 
 ___
 Gluster-devel mailing list
 Gluster-devel@gluster.org
 http://supercolony.gluster.org/mailman/listinfo/gluster-devel



 ___
 Gluster-devel mailing list
 Gluster-devel@gluster.org
 http://supercolony.gluster.org/mailman/listinfo/gluster-devel


___
Gluster-devel mailing list
Gluster-devel@gluster.org
http://supercolony.gluster.org/mailman/listinfo

Re: [Gluster-devel] New project on the Forge - gstatus

2014-05-16 Thread Anand Avati
KP, Vipul,

It will be awesome to get io-stats like instrumentation on the client side.
Here are some further thoughts on how to implement that. If you have a
recent git HEAD build, I would suggest that you explore the latency stats
on the client side exposed through meta at
$MNT/.meta/graphs/active/$xlator/profile. You can enable latency
measurement with echo 1  $MNT/.meta/measure_latency. I would suggest
extending these stats with the extra ones io-stats has, and make
glusterfsiostats expose these stats.

If you can compare libglusterfs/src/latency.c:gf_latency_begin(),
gf_latency_end() and gf_latency_udpate() with the macros in io-stats.c
UPDATE_PROFILE_STATS()
and START_FOP_LATENCY(), you will quickly realize how a lot of logic is
duplicated between io-stats and latency.c. If you can enhance latency.c and
make it capture the remaining stats what io-stats is capturing, the
benefits of this approach would be:

- stats are already getting captured at all xlator levels, and not just at
the position where io-stats is inserted
- file like interface makes the stats more easily inspectable and
consumable, and updated on the fly
- conforms with the way rest of the internals are exposed through $MNT/.meta

In order to this, you might want to look into:

- latency.c as of today captures fop count, mean latency, total time,
whereas io-stats measures these along with min-time, max-time and
block-size histogram.
- extend gf_proc_dump_latency_info() to dump the new stats
- either prettify that output like 'volume profile info' output, or JSONify
it like xlators/meta/src/frames-file.c
- add support for cumulative vs interval stats (store an extra copy of
this-latencies[])

etc..

Thanks!


On Fri, Apr 25, 2014 at 9:09 PM, Krishnan Parthasarathi kpart...@redhat.com
 wrote:

 [Resending due to gluster-devel mailing list issue]

 Apologies for the late reply.

 glusterd uses its socket connection with brick processes (where io-stats
 xlator is loaded) to
 gather information from io-stats via an RPC request. This facility is
 restricted to brick processes
 as it stands today.

 Some background ...
 io-stats xlator is loaded, both in GlusterFS mounts and brick processes.
 So, we have the capabilities
 to monitor I/O statistics on both sides. To collect I/O statistics at the
 server side, we have

 # gluster volume profile VOLNAME [start | info | stop]
 AND
 #gluster volume top VOLNAME info [and other options]

 We don't have a usable way of gathering I/O statistics (not monitoring,
 though the counters could be enhanced)
 at the client-side, ie. for a given mount point. This is the gap
 glusterfsiostat aims to fill. We need to remember
 that the machines hosting GlusterFS mounts may not have glusterd installed
 on them.

 We are considering rrdtool as a possible statistics database because it
 seems like a natural choice for storing time-series
 data. rrdtool is capable of answering high-level statistical queries on
 statistics that were logged in it by io-stats xlator
 over and above printing running counters periodically.

 Hope this gives some more clarity on what we are thinking.

 thanks,
 Krish
 - Original Message -

  Probably me not understanding.

  the comment iostats making data available to glusterd over RPC - is
 what I
  latched on to. I wondered whether this meant that a socket could be
 opened
  that way to get at the iostats data flow.

  Cheers,

  PC

  - Original Message -

   From: Vipul Nayyar nayyar_vi...@yahoo.com
 
   To: Paul Cuzner pcuz...@redhat.com, Krishnan Parthasarathi
   kpart...@redhat.com
 
   Cc: Vijay Bellur vbel...@redhat.com, gluster-devel
   gluster-de...@nongnu.org
 
   Sent: Thursday, 20 February, 2014 5:06:27 AM
 
   Subject: Re: [Gluster-devel] New project on the Forge - gstatus
 

   Hi Paul,
 

   I'm really not sure, if this can be done in python(at least
 comfortably).
   Maybe we can tread on the same path as Justin's glusterflow in python.
 But
   I
   don't think, all the io-stats counters will be available with the way
 how
   Justin's used Jeff Darcy's previous work to build his tool. I can be
 wrong.
   My knowledge is a bit incomplete and based on very less experience as a
   user
   and an amateur Gluster developer. Please do correct me, if I can be.
 

   Regards
 
   Vipul Nayyar
 
 ___
 Gluster-devel mailing list
 Gluster-devel@gluster.org
 http://supercolony.gluster.org/mailman/listinfo/gluster-devel

___
Gluster-devel mailing list
Gluster-devel@gluster.org
http://supercolony.gluster.org/mailman/listinfo/gluster-devel