Skip to content
This repository has been archived by the owner on Oct 18, 2023. It is now read-only.

Commit

Permalink
Log warning when wireless plugin is used on unsupported platform (inf…
Browse files Browse the repository at this point in the history
  • Loading branch information
danielnelson authored Nov 15, 2018
1 parent 46b340c commit 140387d
Show file tree
Hide file tree
Showing 4 changed files with 59 additions and 25 deletions.
8 changes: 6 additions & 2 deletions cmd/telegraf/telegraf.go
Original file line number Diff line number Diff line change
Expand Up @@ -110,6 +110,11 @@ func runAgent(ctx context.Context,
inputFilters []string,
outputFilters []string,
) error {
// Setup default logging. This may need to change after reading the config
// file, but we can configure it to use our logger implementation now.
logger.SetupLogging(false, false, "")
log.Printf("I! Starting Telegraf %s", version)

// If no other options are specified, load the config file and run.
c := config.NewConfig()
c.OutputFilters = outputFilters
Expand Down Expand Up @@ -147,7 +152,7 @@ func runAgent(ctx context.Context,
return err
}

// Setup logging
// Setup logging as configured.
logger.SetupLogging(
ag.Config.Agent.Debug || *fDebug,
ag.Config.Agent.Quiet || *fQuiet,
Expand All @@ -158,7 +163,6 @@ func runAgent(ctx context.Context,
return ag.Test(ctx)
}

log.Printf("I! Starting Telegraf %s\n", version)
log.Printf("I! Loaded inputs: %s", strings.Join(c.InputNames(), " "))
log.Printf("I! Loaded aggregators: %s", strings.Join(c.AggregatorNames(), " "))
log.Printf("I! Loaded processors: %s", strings.Join(c.ProcessorNames(), " "))
Expand Down
34 changes: 32 additions & 2 deletions plugins/inputs/wireless/wireless.go
Original file line number Diff line number Diff line change
@@ -1,3 +1,33 @@
// +build !linux

package wireless

import (
"github.com/influxdata/telegraf"
"github.com/influxdata/telegraf/plugins/inputs"
)

// Wireless is used to store configuration values.
type Wireless struct {
HostProc string `toml:"host_proc"`
}

var sampleConfig = `
## Sets 'proc' directory path
## If not specified, then default is /proc
# host_proc = "/proc"
`

// Description returns information about the plugin.
func (w *Wireless) Description() string {
return "Monitor wifi signal strength and quality"
}

// SampleConfig displays configuration instructions.
func (w *Wireless) SampleConfig() string {
return sampleConfig
}

func init() {
inputs.Add("wireless", func() telegraf.Input {
return &Wireless{}
})
}
21 changes: 0 additions & 21 deletions plugins/inputs/wireless/wireless_linux.go
Original file line number Diff line number Diff line change
Expand Up @@ -40,27 +40,6 @@ type wirelessInterface struct {
Beacon int64
}

// Wireless is used to store configuration values.
type Wireless struct {
HostProc string `toml:"host_proc"`
}

var sampleConfig = `
## Sets 'proc' directory path
## If not specified, then default is /proc
# host_proc = "/proc"
`

// Description returns information about the plugin.
func (w *Wireless) Description() string {
return "Monitor wifi signal strength and quality"
}

// SampleConfig displays configuration instructions.
func (w *Wireless) SampleConfig() string {
return sampleConfig
}

// Gather collects the wireless information.
func (w *Wireless) Gather(acc telegraf.Accumulator) error {
// load proc path, get default value if config value and env variable are empty
Expand Down
21 changes: 21 additions & 0 deletions plugins/inputs/wireless/wireless_nonlinux.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
// +build !linux

package wireless

import (
"log"

"github.com/influxdata/telegraf"
"github.com/influxdata/telegraf/plugins/inputs"
)

func (w *Wireless) Gather(acc telegraf.Accumulator) error {
return nil
}

func init() {
inputs.Add("wireless", func() telegraf.Input {
log.Print("W! [inputs.wireless] Current platform is not supported")
return &Wireless{}
})
}

0 comments on commit 140387d

Please sign in to comment.