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.9.0                             2024-07-29                        RRDTUNE(1)
