func (c *Client) Increment(name string, count int, rate float64) error {
	return c.send(name, rate, "%d|c", count)
}
Increment increments the counter for the given bucket.
package statsd
import (
	"bufio"
	"fmt"
	. "github.com/visionmedia/go-debug"
	"io"
	"math/rand"
	"net"
	"sync"
	"time"
)
var debug = Debug("statsd")
const defaultBufSize = 512
type Client struct {
	conn   net.Conn
	buf    *bufio.Writer
	m      sync.Mutex
	prefix string
}
func millisecond(d time.Duration) int {
	return int(d.Seconds() * 1000)
}
func Dial(addr string) (*Client, error) {
	return DialSize(addr, 0)
}
func DialTCP(addr string) (*Client, error) {
	return DialTCPSize(addr, 0)
}
func NewClient(w io.Writer) *Client {
	return &Client{
		buf: bufio.NewWriterSize(w, defaultBufSize),
	}
}
func DialTimeout(addr string, timeout time.Duration) (*Client, error) {
	conn, err := net.DialTimeout("udp", addr, timeout)
	if err != nil {
		return nil, err
	}
	return newClient(conn, 0), nil
}
func DialTCPTimeout(addr string, timeout time.Duration) (*Client, error) {
	conn, err := net.DialTimeout("tcp", addr, timeout)
	if err != nil {
		return nil, err
	}
	return newClient(conn, 0), nil
}
func DialSize(addr string, size int) (*Client, error) {
	conn, err := net.Dial("udp", addr)
	if err != nil {
		return nil, err
	}
	return newClient(conn, size), nil
}
func DialTCPSize(addr string, size int) (*Client, error) {
	conn, err := net.Dial("tcp", addr)
	if err != nil {
		return nil, err
	}
	return newClient(conn, size), nil
}
func newClient(conn net.Conn, size int) *Client {
	if size <= 0 {
		size = defaultBufSize
	}
	return &Client{
		conn: conn,
		buf:  bufio.NewWriterSize(conn, size),
	}
}
func (c *Client) Prefix(s string) {
	c.prefix = s
}