package udp
import "github.com/influxdata/influxdb/services/udp"
Package udp provides the UDP input service for InfluxDB.
Index ¶
- Constants
- type Config
- type Configs
- type Service
- func NewService(c Config) *Service
- func (s *Service) Addr() net.Addr
- func (s *Service) Close() error
- func (s *Service) Closed() bool
- func (s *Service) Open() (err error)
- func (s *Service) Statistics(tags map[string]string) []models.Statistic
- func (s *Service) WithLogger(log *zap.Logger)
- type Statistics
Constants ¶
const ( // DefaultBindAddress is the default binding interface if none is specified. DefaultBindAddress = ":8089" // DefaultDatabase is the default database for UDP traffic. DefaultDatabase = "udp" // DefaultRetentionPolicy is the default retention policy used for writes. DefaultRetentionPolicy = "" // DefaultBatchSize is the default UDP batch size. DefaultBatchSize = 5000 // DefaultBatchPending is the default number of pending UDP batches. DefaultBatchPending = 10 // DefaultBatchTimeout is the default UDP batch timeout. DefaultBatchTimeout = time.Second // DefaultPrecision is the default time precision used for UDP services. DefaultPrecision = "n" // DefaultReadBuffer is the default buffer size for the UDP listener. // Sets the size of the operating system's receive buffer associated with // the UDP traffic. Keep in mind that the OS must be able // to handle the number set here or the UDP listener will error and exit. // // DefaultReadBuffer = 0 means to use the OS default, which is usually too // small for high UDP performance. // // Increasing OS buffer limits: // Linux: sudo sysctl -w net.core.rmem_max=<read-buffer> // BSD/Darwin: sudo sysctl -w kern.ipc.maxsockbuf=<read-buffer> DefaultReadBuffer = 0 // DefaultWriters is the default number of writers. DefaultWriters = 1 )
const ( // MaxUDPPayload is largest payload size the UDP service will accept. MaxUDPPayload = 64 * 1024 )
Types ¶
type Config ¶
type Config struct { Enabled bool `toml:"enabled"` BindAddress string `toml:"bind-address"` Database string `toml:"database"` RetentionPolicy string `toml:"retention-policy"` BatchSize int `toml:"batch-size"` BatchPending int `toml:"batch-pending"` ReadBuffer int `toml:"read-buffer"` BatchTimeout toml.Duration `toml:"batch-timeout"` Precision string `toml:"precision"` Writers int `toml:"writers"` }
Config holds various configuration settings for the UDP listener.
func NewConfig ¶
func NewConfig() Config
NewConfig returns a new instance of Config with defaults.
func (*Config) WithDefaults ¶
WithDefaults takes the given config and returns a new config with any required default values set.
type Configs ¶
type Configs []Config
Configs wraps a slice of Config to aggregate diagnostics.
func (Configs) Diagnostics ¶
func (c Configs) Diagnostics() (*diagnostics.Diagnostics, error)
Diagnostics returns one set of diagnostics for all of the Configs.
func (Configs) Enabled ¶
Enabled returns true if any underlying Config is Enabled.
type Service ¶
type Service struct { PointsWriter interface { WritePointsPrivileged(ctx tsdb.WriteContext, database, retentionPolicy string, consistencyLevel models.ConsistencyLevel, points []models.Point) error } MetaClient interface { CreateDatabase(name string) (*meta.DatabaseInfo, error) } Logger *zap.Logger // contains filtered or unexported fields }
Service is a UDP service that will listen for incoming packets of line protocol.
func NewService ¶
NewService returns a new instance of Service.
func (*Service) Addr ¶
Addr returns the listener's address.
func (*Service) Close ¶
Close closes the service and the underlying listener.
func (*Service) Closed ¶
Closed returns true if the service is currently closed.
func (*Service) Open ¶
Open starts the service.
func (*Service) Statistics ¶
Statistics returns statistics for periodic monitoring.
func (*Service) WithLogger ¶
WithLogger sets the logger on the service.
type Statistics ¶
type Statistics struct { PointsReceived int64 BytesReceived int64 PointsParseFail int64 ReadFail int64 BatchesTransmitted int64 PointsTransmitted int64 BatchesTransmitFail int64 }
Statistics maintains statistics for the UDP service.
Source Files ¶
- Version
- v1.12.0 (latest)
- Published
- Apr 8, 2025
- Platform
- linux/amd64
- Imports
- 12 packages
- Last checked
- 2 days ago –
Tools for package owners.