forked from elastic/beats
-
Notifications
You must be signed in to change notification settings - Fork 0
/
hostparsers.go
24 lines (20 loc) · 868 Bytes
/
hostparsers.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
package parse
import (
"github.com/elastic/beats/metricbeat/mb"
"github.com/pkg/errors"
)
// PassThruHostParser is a HostParser that sets the HostData URI, SanitizedURI,
// and Host to the configured 'host' value. This should only be used by
// MetricSets that do not require host parsing (e.g. host is only addr:port).
// Do not use this if the host value can contain credentials.
func PassThruHostParser(module mb.Module, host string) (mb.HostData, error) {
return mb.HostData{URI: host, SanitizedURI: host, Host: host}, nil
}
// EmptyHostParser simply returns a zero value HostData. It asserts that host
// value is empty and returns an error if not.
func EmptyHostParser(module mb.Module, host string) (mb.HostData, error) {
if host != "" {
return mb.HostData{}, errors.Errorf("hosts must be empty for %v", module.Name())
}
return mb.HostData{}, nil
}