Skip to content
AlexMuliar edited this page Sep 30, 2022 · 24 revisions

Source config

  • Mysql connection string - connection string to access the cacti MySQL database
  • Path to the directory containing rrd files - this directory should contain all .rrd files that are used in cacti, you should provide this directory in order for the agent to be able to read data from rrd files.
> agent source create
Choose source (influx, kafka, mongo, ..., cacti): cacti
Enter a unique name for this source config: cacti_1
Mysql connection string in format `mysql://username:pass@host:port/database`: mysql://user@mysql:3306/cacti
Path to the directory containing rrd files: /home/rrd_files/
Source config created

Source file config

Property Type Description
type String Specify source type. Value - cacti
name String Unique source name
config Object Source configuration

All properties are required

config object properties:

Property Type Required
mysql_connection_string String Yes
rrd_dir String Yes

File config example:

[{
  "type": "cacti",
  "name": "cacti_file",
  "config": {
    "mysql_connection_string": "mysql://user@mysql:3306/cacti",
    "rrd_dir": "/home/rrd_dir"
  }
}]

Pipeline config

  • Pipeline ID - unique pipeline identifier (use a human-readable name so you could easily use it further)
  • Step in seconds - this is a step using which the data will be extracted from rrd files
  • Polling interval in seconds - how frequently the pipeline will read data from files and send it to Anodot
  • Collect since (days ago) - you can specify this field if you want to collect historical data. Be aware, usually, RRD files store historical data with a larger step. Imagine the step is 300 and the data with such step is kept for a week. If the collect since value is more than a week, say 14 days, data for the first 7 days will be skipped, and only data for the last 7 days will be collected and sent to Anodot.
  • Delay (in minutes) - if > 0 the pipeline will collect data until now -(minus) delay, this can be used in cases when data gets to cacti with a delay.
  • Static dimensions - dimensions with static values to pass to Anodot with every metric. Format - key1:value1 key2:value2
  • Tags - tags that will be passed to Anodot with every metric. Format - key1:value1 key2:value2
  • Transformations files paths - See transformations page
  • Dimensions to rename in format name1:alias1 name2:alias2 - if any dimension has the exact name you specified, it will be changed to the alias.
  • Convert bytes into bits where appropriate? - convert values into bits for graphs where this transformation is applied

Example:

> agent pipeline create -a
Choose source config [cacti]: 
Pipeline ID (must be unique): cacti_test
Step in seconds: 300
Polling interval in seconds: 3600
Collect since (days ago) [0]: 10
Delay (in minutes) [0]: 10
Static dimensions []: static_dimension
Tags []: USA traffic_in
Transformations files paths []: /home/cacti_transform.csv
Dimensions to rename in format name1:alias1 name2:alias2 [{}]: dsk:Disk if:Interface
Convert bytes into bits where appropriate? [y/N]: y
Created pipeline cacti_test

Pipeline File config

Properties list

Property Type Required Description
source String Yes Source name
pipeline_id String Yes Unique human-readable pipeline identifier
step Integer Yes RRD file step
interval Integer Yes How often to read the data from rrd files, unit - seconds
days_to_backfill Integer No Collect data starting N days ago
delay Integer No Amount of time to wait before fetching data, units - minutes
properties Object No Dimensions with static values to pass to Anodot.
tags Object No Metric tags
rename_dimensions_mapping Object No An object with original dimension names as keys and new dimension names as values
transform Object No To learn more about transformations visit this page
convert_bytes_into_bits Boolean No Should the pipeline convert data into bits from bytes
graph_ids List No Query only specified graph ids (local_graph_id in cacti database)
add_graph_name_dimension Bool No Add graph name as a dimension to metrics. Default false
notifications object No Configurate notifications cases

Example

[{
    "source": "cacti",
    "pipeline_id": "cacti_file",
    "step": 300,
    "interval": 300,
    "rename_dimensions_mapping": {
        "dimension_name": "dimension_alias"
    }
}]
Clone this wiki locally