circonus

package
v0.0.21 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 30, 2021 License: MIT Imports: 19 Imported by: 0

README

Circonus Output Plugin

This plugin writes metrics data to the Circonus platform. In order to use this plugin, an HTTPTrap check must be configured on a Circonus broker. This check can be automatically created by the plugin or manually configured (see the plugin configuration information). For information about Circonus HTTPTrap check configuration click here.

Configuration

[[outputs.circonus]]
  ## Circonus API token must be provided to use this plugin:
  api_token = ""

  ## Circonus API application (associated with token):
  ## example:
  # api_app = "circonus-unified-agent"

  ## Circonus API URL:
  ## example:
  # api_url = "https://api.circonus.com/"

  ## Circonus API TLS CA file, optional, for internal deployments with private certificates: 
  ## example:
  # api_tls_ca = "/opt/circonus/unified-agent/etc/circonus_api_ca.pem"

  ## Check name prefix - unique prefix to use for all checks created by this instance
  ## default is the hostname from the OS. If set, "host" tag on metrics will be 
  ## overridden with this value. For containers, use omit_hostname=true in agent section
  ## and set this value, so that the plugin will be able to predictively find the check 
  ## for this instance. Otherwise, the container's os.Hostname() will be used
  ## (resulting in a new check being created every time the container starts).
  ## example:
  # check_name_prefix = "example"

  ## One check - all metrics go to a single check vs one check per input plugin
  ## NOTE: this effectively disables automatic dashboards for supported plugins
  # one_check = false
  
  ## Broker
  ## Optional: explicit broker id or blank (default blank, auto select)
  ## example:
  # broker = "/broker/35"
Configuration Options
Setting Description
api_token The authentication token to used when connecting to the Circonus API. It is recommended to create a token/application combination specifically for use with this plugin. This is required.
api_url The URL that can be used to connect to the Circonus API. This will default to the Circonus SaaS API URL if not provided.
api_app The API token application to use when connecting to the Circonus API. This will default to circonus-unified-agent if not provided.
api_tls_ca The certificate authority file to use when connecting to the Circonus API, if needed.
check_name_prefix Unique prefix to use for all checks created by this instance. Default is the host name from the OS.
one_check Send all metrics to one single check. Default is one check per active plugin.
broker The CID of a Circonus broker to use when automatically creating a check. If omitted, then a random eligible broker will be selected.

Documentation

Overview

Package circonus contains the output plugin used to output metric data to the Circonus platform.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Circonus

type Circonus struct {
	Broker          string `toml:"broker"`
	APIURL          string `toml:"api_url"`
	APIToken        string `toml:"api_token"`
	APIApp          string `toml:"api_app"`
	APITLSCA        string `toml:"api_tls_ca"`
	OneCheck        bool   `toml:"one_check"`
	CheckNamePrefix string `toml:"check_name_prefix"`
	CacheConfigs    bool   `toml:"cache_configs"` // cache check bundle configurations - efficient for large number of inputs
	CacheDir        string `toml:"cache_dir"`     // where to cache the check bundle configurations - must be read/write for user running cua
	PoolSize        int    `toml:"pool_size"`     // size of the processor pool for a given output instance - default 2
	// hidden troubleshooting/tuning parameters
	DebugCGM        bool              `toml:"debug_cgm"`        // debug cgm interactions with api and broker
	DumpCGMMetrics  bool              `toml:"dump_cgm_metrics"` // dump the actual JSON being sent to the broker by cgm
	DebugMetrics    bool              `toml:"debug_metrics"`    // output the metrics as they are being sent to cgm, use to verify proper parsing/tags/etc.
	SubOutput       bool              `toml:"sub_output"`       // a dedicated, special purpose, output, don't send internal cua version, etc.
	DynamicSubmit   bool              `toml:"dynamic_submit"`   // control cgm auto-submissions, or manually at end of batch processing
	DynamicInterval string            `toml:"dynamic_interval"` // on what interval should the dynamic cgm instances submit, default 10s
	DebugCGMCheck   map[string]string `toml:"debug_cgm_check"`  // circonus use only

	Log cua.Logger

	sync.RWMutex
	// contains filtered or unexported fields
}

Circonus values are used to output data to the Circonus platform.

func (*Circonus) Close

func (c *Circonus) Close() error

Close will close the Circonus client connection.

func (*Circonus) Connect

func (c *Circonus) Connect() error

Conenct creates the initial check the plugin will use

func (*Circonus) Description

func (c *Circonus) Description() string

Description returns a description of the Circonus plugin configuration.

func (*Circonus) Init

func (c *Circonus) Init() error

Init performs initialization of a Circonus client.

func (*Circonus) SampleConfig

func (c *Circonus) SampleConfig() string

SampleConfig returns the sample Circonus plugin configuration.

func (*Circonus) Write

func (c *Circonus) Write(metrics []cua.Metric) (int, error)

Write is used to write metric data to Circonus checks.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL