Skip to content

Commit

Permalink
Merge pull request #902 from hashicorp/f-stats-prefix
Browse files Browse the repository at this point in the history
Allow configuring the stats prefix
  • Loading branch information
armon committed May 4, 2015
2 parents 0dc5814 + 5f140f1 commit b381cca
Show file tree
Hide file tree
Showing 4 changed files with 24 additions and 1 deletion.
2 changes: 1 addition & 1 deletion command/agent/command.go
Original file line number Diff line number Diff line change
Expand Up @@ -567,7 +567,7 @@ func (c *Command) Run(args []string) int {
*/
inm := metrics.NewInmemSink(10*time.Second, time.Minute)
metrics.DefaultInmemSignal(inm)
metricsConf := metrics.DefaultConfig("consul")
metricsConf := metrics.DefaultConfig(config.StatsitePrefix)

// Configure the statsite sink
var fanout metrics.FanoutSink
Expand Down
8 changes: 8 additions & 0 deletions command/agent/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -160,6 +160,10 @@ type Config struct {
// metrics will be streamed to that instance.
StatsiteAddr string `mapstructure:"statsite_addr"`

// StatsitePrefix is the prefix used to write stats values to. By
// default this is set to 'consul'.
StatsitePrefix string `mapstructure:"statsite_prefix"`

// StatsdAddr is the address of a statsd instance. If provided,
// metrics will be sent to that instance.
StatsdAddr string `mapstructure:"statsd_addr"`
Expand Down Expand Up @@ -429,6 +433,7 @@ func DefaultConfig() *Config {
DNSConfig: DNSConfig{
MaxStale: 5 * time.Second,
},
StatsitePrefix: "consul",
SyslogFacility: "LOCAL0",
Protocol: consul.ProtocolVersionMax,
CheckUpdateInterval: 5 * time.Minute,
Expand Down Expand Up @@ -811,6 +816,9 @@ func MergeConfig(a, b *Config) *Config {
if b.StatsiteAddr != "" {
result.StatsiteAddr = b.StatsiteAddr
}
if b.StatsitePrefix != "" {
result.StatsitePrefix = b.StatsitePrefix
}
if b.StatsdAddr != "" {
result.StatsdAddr = b.StatsdAddr
}
Expand Down
11 changes: 11 additions & 0 deletions command/agent/config_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -568,6 +568,16 @@ func TestDecodeConfig(t *testing.T) {
t.Fatalf("bad: %#v", config)
}

// Statsite prefix
input = `{"statsite_prefix": "my_prefix"}`
config, err = DecodeConfig(bytes.NewReader([]byte(input)))
if err != nil {
t.Fatalf("err: %s", err)
}
if config.StatsitePrefix != "my_prefix" {
t.Fatalf("bad: %#v", config)
}

// Address overrides
input = `{"addresses": {"dns": "0.0.0.0", "http": "127.0.0.1", "https": "127.0.0.1", "rpc": "127.0.0.1"}}`
config, err = DecodeConfig(bytes.NewReader([]byte(input)))
Expand Down Expand Up @@ -1114,6 +1124,7 @@ func TestMergeConfig(t *testing.T) {
},
DisableRemoteExec: true,
StatsiteAddr: "127.0.0.1:7250",
StatsitePrefix: "stats_prefix",
StatsdAddr: "127.0.0.1:7251",
DisableUpdateCheck: true,
DisableAnonymousSignature: true,
Expand Down
4 changes: 4 additions & 0 deletions website/source/docs/agent/options.html.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -526,6 +526,10 @@ definitions support being updated during a reload.
aggregation. This can be used to capture runtime information. This streams via
TCP and can only be used with statsite.
* <a name="statsite_prefix"></a><a href="#statsite_prefix">`statsite_prefix`</a>
The prefix used while writing all telemetry data to statsite. By default, this
is set to "consul".
* <a name="syslog_facility"></a><a href="#syslog_facility">`syslog_facility`</a> When
[`enable_syslog`](#enable_syslog) is provided, this controls to which
facility messages are sent. By default, `LOCAL0` will be used.
Expand Down

0 comments on commit b381cca

Please sign in to comment.