in agent/envoy_bootstrap/envoy_bootstrap.go [1167:1206]
func appendDogStatsDSinks(b *boot.Bootstrap) error {
var packedCfg *anypb.Any
var err error
if udsPath := env.Get("STATSD_SOCKET_PATH"); udsPath != "" {
packedCfg, err = anypb.New(&metrics.DogStatsdSink{
DogStatsdSpecifier: &metrics.DogStatsdSink_Address{
Address: buildSocketPipe(udsPath),
},
})
if err != nil {
return err
}
} else {
addr := env.Or("STATSD_ADDRESS", "127.0.0.1")
port, err := env.OrInt("STATSD_PORT", 8125)
if err != nil {
return err
}
packedCfg, err = anypb.New(&metrics.DogStatsdSink{
DogStatsdSpecifier: &metrics.DogStatsdSink_Address{
Address: buildUdpSocketAddr(addr, port),
},
})
if err != nil {
return err
}
}
bt := &boot.Bootstrap{
StatsSinks: []*metrics.StatsSink{
&metrics.StatsSink{
Name: "envoy.stat_sinks.dog_statsd",
ConfigType: &metrics.StatsSink_TypedConfig{
TypedConfig: packedCfg,
},
},
},
}
return mergeBootstrap(b, bt)
}