Bug 1262092

Summary: RFE : Feature: Tunable FOP sampling for v3.6.x/v3.7.x
Product: [Community] GlusterFS Reporter: rwareing
Component: coreAssignee: rwareing
Status: CLOSED NEXTRELEASE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 3.6.6CC: bugs, sshreyas
Target Milestone: ---Keywords: FutureFeature, Triaged
Target Release: ---   
Hardware: All   
OS: All   
Whiteboard:
Fixed In Version: Doc Type: Enhancement
Doc Text:
Story Points: ---
Clone Of:
: 1271310 (view as bug list) Environment:
Last Closed: 2016-08-23 12:32:28 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1271310    
Attachments:
Description Flags
Clean patch for v3.6.6 of GlusterFS, requires FOP stats dump (bug 1261700) patch none

Description rwareing 2015-09-10 19:26:43 UTC
Created attachment 1072355 [details]
Clean patch for v3.6.6 of GlusterFS, requires FOP stats dump (bug 1261700) patch

Description of problem:

debug/io-stats: FOP sampling feature

- Using sampling feature you can record details about every Nth FOP.
  The fields in each sample are: FOP type, hostname, uid, gid, FOP priority,
  port and time taken (latency) to fufill the request.
- Implemented using a ring buffer which is not (m/c) allocated in the IO path,
  this should make the sampling process pretty cheap.
- DNS resolution done @ dump time not @ sample time for performance w/
  cache
- Metrics can be used for both diagnostics, traffic/IO profiling as well
  as P95/P99 calculations
- To control this feature there are two new volume options:
  diagnostics.fop-sample-interval - The sampling interval, e.g. 1 means
  sample every FOP, 100 means sample every 100th FOP
  diagnostics.fop-sample-buf-size - The size (in bytes) of the ring
  buffer used to store the samples.  In the even more samples
  are collected in the stats dump interval than can be held in this buffer,
  the oldest samples shall be discarded.  Samples are stored in the log
  directory under /var/log/glusterfs/samples.
- Uses DNS cache written by sshreyas (Thank-you!), the DNS cache
  TTL is controlled by the diagnostics.stats-dnscache-ttl-sec option
  and defaults to 24hrs.

Pre-requisite: Requires stats dump patch from bug 1261700 to function.

Version-Release number of selected component (if applicable):
3.6.x, 3.7.x

How reproducible:
100%

Steps to Reproduce:
n/a

Actual results:
n/a

Expected results:
n/a

Additional info:
n/a

Comment 1 Vijay Bellur 2015-10-09 18:17:24 UTC
REVIEW: http://review.gluster.org/12210 (debug/io-stats: Add FOP sampling feature) posted (#3) for review on master by Vijay Bellur (vbellur)

Comment 2 Niels de Vos 2016-08-23 12:32:28 UTC
This bug is being closed as GlusterFS-3.6 is nearing its End-Of-Life and only important security bugs will be fixed. This bug has been fixed in more recent GlusterFS releases. If you still face this bug with the newer GlusterFS versions, please open a new bug.