github.com/blend/go-sdk@v1.20240719.1/statsd/new_listener.go (about)

     1  /*
     2  
     3  Copyright (c) 2024 - Present. Blend Labs, Inc. All rights reserved
     4  Use of this source code is governed by a MIT license that can be found in the LICENSE file.
     5  
     6  */
     7  
     8  package statsd
     9  
    10  import (
    11  	"net"
    12  	"strings"
    13  )
    14  
    15  // NewUDPListener returns a new UDP listener for a given address.
    16  func NewUDPListener(addr string) (net.PacketConn, error) {
    17  	listener, err := net.ListenPacket("udp", addr)
    18  	if err != nil {
    19  		return nil, err
    20  	}
    21  	return listener, nil
    22  }
    23  
    24  // NewUnixgramListener returns a new unixgram listener for a given path.
    25  func NewUnixgramListener(path string) (net.PacketConn, error) {
    26  	path = strings.TrimPrefix(path, "unix://")
    27  	listener, err := net.ListenPacket("unixgram", path)
    28  	if err != nil {
    29  		return nil, err
    30  	}
    31  	return listener, nil
    32  }