RRDTUNE(1)                          rrdtool                         RRDTUNE(1)

NAME
       rrdtune - Modify some basic properties of a Round Robin Database

SYNOPSIS
       rrdtool tune filename [--heartbeat|-h ds-name:heartbeat]
       [--minimum|-i ds-name:min] [--maximum|-a ds-name:max]
       [--data-source-type|-d ds-name:DST] [--data-source-rename|-r old-
       name:new-name] [--deltapos|-p scale-value] [--deltaneg|-n scale-value]
       [--failure-threshold|-f failure-threshold] [--window-length|-w window-
       length] [--alpha|-x adaption-parameter] [--beta|-y adaption-parameter]
       [--gamma|-z adaption-parameter] [--gamma-deviation|-v adaption-
       parameter] [--smoothing-window|-s fraction-of-season]
       [--smoothing-window-deviation|-S fraction-of-season]
       [--aberrant-reset|-b ds-name] [--step|-t newstep] [--daemon|-D address]
       [DEL:ds-name] [DS:ds-spec] [DELRRA:index] [RRA:rra-spec]
       [RRA#index:[+-=]<number]>

DESCRIPTION
       The tune option allows you to alter some of the basic configuration
       values stored in the header area of a Round Robin Database (RRD).

       One application of the tune function is to relax the validation rules
       on an RRD. This allows you to fill a new RRD with data available in
       larger intervals than what you would normally want to permit. Be very
       careful with tune operations for COMPUTE data sources.  Setting the
       min, max, and  heartbeat for a COMPUTE data source without changing the
       data source type to a non-COMPUTE DST WILL corrupt the data source
       header in the RRD.

       A second application of the tune function is to set or alter parameters
       used by the specialized function RRAs for aberrant behavior detection.

       Still another application is to add or remove data sources (DS) or add
       / remove or alter some aspects of round-robin archives (RRA). These
       operations are not really done in-place, but rather generate a new RRD
       file internally and move it over the original file. Data is kept intact
       during these operations.  For even more in-depth modifications you may
       review the --source and --template options of the create function which
       allow you to combine multiple RRD files into a new one and which is
       even more clever in what data it is able to keep or "regenerate".

       filename
               The name of the RRD you want to tune.

       --heartbeat|-h ds-name:heartbeat
               modify  the  heartbeat  of  a data source. By setting this to a
               high value the RRD will accept things like one value per day.

       --minimum|-i ds-name:min
               alter the minimum value  acceptable  as  input  from  the  data
               source.  Setting min to 'U' will disable this limit.

       --maximum|-a ds-name:max
               alter  the  maximum  value  acceptable  as  input from the data
               source.  Setting max to 'U' will disable this limit.

       --data-source-type|-d ds-name:DST
               alter the type DST of a data source.

       --data-source-rename|-r old-name:new-name
               rename a data source.

       --deltapos|-p scale-value
               Alter the deviation scaling factor for the upper bound  of  the
               confidence band used internally to calculate violations for the
               FAILURES  RRA. The default value is 2. Note that this parameter
               is not related to graphing  confidence  bounds  which  must  be
               specified   as  a  CDEF  argument  to  generate  a  graph  with
               confidence bounds. The graph scale factor  need  not  to  agree
               with the value used internally by the FAILURES RRA.

       --deltaneg|-n scale-value
               Alter  the  deviation scaling factor for the lower bound of the
               confidence band used internally to calculate violations for the
               FAILURES RRA. The default value is 2. As with --deltapos,  this
               argument  is unrelated to the scale factor chosen when graphing
               confidence bounds.

       --failure-threshold|-f failure-threshold
               Alter the number of confidence bound violations that constitute
               a failure for purposes of the FAILURES RRA.  This  must  be  an
               integer less than or equal to the window length of the FAILURES
               RRA.  This  restriction  is not verified by the tune option, so
               one   can    reset    failure-threshold    and    window-length
               simultaneously.  Setting  this  option  will reset the count of
               violations to 0.

       --window-length|-w window-length
               Alter the number of time points  in  the  temporal  window  for
               determining  failures.  This must be an integer greater than or
               equal to the window length of the FAILURES RRA and less than or
               equal to 28. Setting  this  option  will  reset  the  count  of
               violations to 0.

       --alpha|-x adaption-parameter
               Alter  the  intercept adaptation parameter for the Holt-Winters
               forecasting algorithm. This parameter must be between 0 and 1.

       --beta|-y adaption-parameter
               Alter the  slope  adaptation  parameter  for  the  Holt-Winters
               forecasting algorithm. This parameter must be between 0 and 1.

       --gamma|-z adaption-parameter
               Alter  the  seasonal  coefficient  adaptation parameter for the
               SEASONAL RRA. This parameter must be between 0 and 1.

       --gamma-deviation|-v adaption-parameter
               Alter the  seasonal  deviation  adaptation  parameter  for  the
               DEVSEASONAL RRA. This parameter must be between 0 and 1.

       --smoothing-window|-s fraction-of-season
               Alter  the  size  of the smoothing window for the SEASONAL RRA.
               This must be between 0 and 1.

       --smoothing-window-deviation|-S fraction-of-season
               Alter the size of the smoothing window for the DEVSEASONAL RRA.
               This must be between 0 and 1.

       --aberrant-reset|-b ds-name
               This option causes the aberrant behavior detection algorithm to
               reset for the specified data source; that is, forget all it  is
               has   learnt  so  far.   Specifically,  for  the  HWPREDICT  or
               MHWPREDICT RRA, it sets the intercept and slope coefficients to
               unknown.  For  the  SEASONAL  RRA,   it   sets   all   seasonal
               coefficients  to  unknown. For the DEVSEASONAL RRA, it sets all
               seasonal deviation coefficients to unknown.  For  the  FAILURES
               RRA,  it erases the violation history. Note that reset does not
               erase  past  predictions  (the  values  of  the  HWPREDICT   or
               MHWPREDICT  RRA),  predicted  deviations  (the  values  of  the
               DEVPREDICT RRA), or failure history (the values of the FAILURES
               RRA).  This option will function even if  not  all  the  listed
               RRAs are present.

               Due  to the implementation of this option, there is an indirect
               impact on other data sources in the RRD. A smoothing  algorithm
               is  applied  to  SEASONAL  and DEVSEASONAL values on a periodic
               basis.  During  bootstrap  initialization  this  smoothing   is
               deferred.  For  efficiency,  the implementation of smoothing is
               not data source specific. This means that utilizing  reset  for
               one  data source will delay running the smoothing algorithm for
               all data sources in the file. This is unlikely to have  serious
               consequences, unless the data being collected for the non-reset
               data  sources is unusually volatile during the reinitialization
               period of the reset data source.

               Use of this tuning option is advised when the behavior  of  the
               data  source  time  series  changes  in a drastic and permanent
               manner.

       --step|-t newstep
               Changes the step size of the RRD to newstep.

               TODO: add proper documentation

       --daemon|-D address
               NOTE: Because the -d (small  letter  'd')  option  was  already
               taken,  this  function  (unlike  most  other)  uses the capital
               letter 'D' for the one-letter option to name the cache daemon.

               If given, RRDtool will try to connect  to  the  caching  daemon
               rrdcached  at address and will fail if the connection cannot be
               established. If the connection is successfully established  the
               data  for  the  filename  will be flushed before performing the
               copy/modify  operation.  Afterwards  the   filename   will   be
               forgotten  by  the  cache daemon, so that the next access using
               the caching daemon will read the proper structure.

               This sequence of operations is designed to achieve a consistent
               overall result with respect to RRD  internal  file  consistency
               when  using  one of the DS or RRA changing operations (that is:
               the  resulting  file  should  always  be  a  valid  RRD   file,
               regardless  of  concurrent updates through the caching daemon).
               Regarding  data  consistency  such  guarantees  are  not  made:
               Without  external  synchronization  concurrent  updates  may be
               lost.

               For a list of accepted  formats,  see  the  -l  option  in  the
               rrdcached manual.

       DEL:ds-name
               Every  data  source  named  with  a  DEL  specification will be
               removed.  The resulting RRD will miss both the  definition  and
               the  data for that data source. Multiple DEL specifications are
               permitted.

       DS:ds-spec
               For every such data source definition (for the exact syntax see
               the create command), a new data source will  be  added  to  the
               RRD. Multiple DS specifications are permitted.

       DELRRA:index
               Removes the RRA with index index. The index is zero-based, that
               is the very first RRA has index 0.

       RRA:rra-spec
               For every such archive definition (for the exact syntax see the
               create  command),  a  new  RRA will be added to the output RRD.
               Multiple RRA specifications are permitted.

       RRA#index:[+-=]<number>
               Adds/removes or sets the given number of rows for the RRA  with
               index  <index>. The index is zero-based, that is the very first
               RRA has index 0.

EXAMPLE 1
       "rrdtool tune data.rrd -h in:100000 -h out:100000 -h through:100000"

       Set the minimum required heartbeat for data  sources  'in',  'out'  and
       'through'  to  100'000  seconds  which  is  a  little  over  one day in
       data.rrd.  This would allow to feed old data from MRTG-2.0  right  into
       RRDtool without generating *UNKNOWN* entries.

EXAMPLE 2
       "rrdtool tune monitor.rrd --window-length 5 --failure-threshold 3"

       If the FAILURES RRA is implicitly created, the default window-length is
       9  and  the  default failure-threshold is 7. This command now defines a
       failure as 3 or more violations in a temporal window of 5 time points.

EXAMPLE 3
       "rrdtool tune some.rrd DEL:a RRA#0:+10"

       Delete the data source named a and extend the very first archive by  10
       rows.   This  will in fact replace the input RRD with a new RRD keeping
       all existing data.  For most practical use cases this is identical to a
       real in-place modification.

AUTHORS
       Tobias Oetiker <tobi@oetiker.ch>, Peter Stamfest <peter@stamfest.at>

1.10.3                            2026-05-25                        RRDTUNE(1)
