Use observability module. Signed-off-by: Dmitrii Stepanov <d.stepanov@yadro.com>
31 lines
841 B
Go
31 lines
841 B
Go
package tracing
|
|
|
|
import (
|
|
"git.frostfs.info/TrueCloudLab/frostfs-node/cmd/frostfs-node/config"
|
|
"git.frostfs.info/TrueCloudLab/frostfs-node/misc"
|
|
"git.frostfs.info/TrueCloudLab/frostfs-observability/tracing"
|
|
)
|
|
|
|
const (
|
|
subsection = "tracing"
|
|
)
|
|
|
|
// ToTracingConfig extracts tracing config.
|
|
func ToTracingConfig(c *config.Config) *tracing.Config {
|
|
return &tracing.Config{
|
|
Enabled: config.BoolSafe(c.Sub(subsection), "enabled"),
|
|
Exporter: tracing.Exporter(config.StringSafe(c.Sub(subsection), "exporter")),
|
|
Endpoint: config.StringSafe(c.Sub(subsection), "endpoint"),
|
|
Service: "frostfs-node",
|
|
InstanceID: getInstanceIDOrDefault(c),
|
|
Version: misc.Version,
|
|
}
|
|
}
|
|
|
|
func getInstanceIDOrDefault(c *config.Config) string {
|
|
s := config.StringSlice(c.Sub("node"), "addresses")
|
|
if len(s) > 0 {
|
|
return s[0]
|
|
}
|
|
return ""
|
|
}
|