* Support 1.16
* Use 1.16 in mod file
* update go.sum
* update go.mod after updating to 1.16 locally
* Fix go vet
* Remove exit
* Use require.NoError
* Only run tidy explicitly in "dep" job
* install 1.16 for go
* typo
* update xcode
* specific version not working
* Get 1.16 go formula
* Change brew call
* brew update
* typo
* Resolve go.sum conflict
* go mod tidy
* [outputs.signalfx] Add output plugin for SignalFX
This output plugin converts the `telegraf.Metrics` into signalfx
`datapoint`s and then transmits them to the ingest servers using
signalfx golang client lib.
As of this commit, the client lib is allowed to pick sane defaults
and none of its fields are overridable via telegraf config. This
can be changed in the future if needed.
The unit tests only test for conversion of `telegraf.Metric`s to
the `datapoint` structs. All code that executes after that is
assumed to be tested in the signalfx client lib itself (and not
worth writing end-to-end tests for).
Further enhancements:
- Custom ingest urls
- Better batching
- More extensive tests
- Support for events, sent by whitelist only
Co-authored-by: Ben Keith <benkeith@splunk.com>
Co-authored-by: Akshay <akshay.moghe@gmail.com>
Co-authored-by: Jay Camp <jcamp@splunk.com>
* Replace exclamation mark with caret
* Update README and use table driven tests
* Use ReplaceAll instead
* Use doublestar package instead to glob filepath
* Add license
* Fix order of dependencies
* Doc improvement, maybe better then str replace?
* Forgot to remove nil from test
* Use regex instead of library
* Revert unnecessary change
* Go back to using library
replace string twice to handle edge case
* Use go-ping for "native" execution in Ping plugin
* Check for ipv6 and deadline out of go func
* ensure dns failure
* Move interval and timeout calc to init
Removed dns failure check, 3rd parties libary responsibility
* Rename timeout to avoid conflict
* Move native ping to interface
Update tests
* Check for zero length
1. Most importantly, this version runs on Dragonfly BSD, which might
be an issue that potential users would care about.
2. Re-issues syscall request after EINTR.
More resiliant on Go v1.14 and above, where syscall is more likely
to return syscall.EINTR.
Also, alongside the place where it would instead call
golang.org/x/sys/unix, but it is commented out, I include the
equivalent code for checking for unix.EINTR, to make it less likely
that I forget to change the EINTR check if I ever convert it to use
golang.org/x/sys/unix rather than syscall.
3. Performance improvements for unix and Windows.
Co-authored-by: Karrick S. McDermott <karrick@karrick.dev>
Extend snmp_trap input plugin to support SNMPv3 traps. MD5 and SHA1 authentication protocols are supported, and DES, AES, AES192, AES256, AES192c and AES256c privacy protocols are supported.