in entrypoint.go [61:89]
func generateOtelConfig(ctx context.Context, userConfigFile string) error {
// Pick up RunMonitoring configuration from mounted volume that is tied to
// secret manager. Translate it from RunMonitoring to OTel.
c, err := confgenerator.ReadConfigFromFile(ctx, userConfigFile)
if err != nil {
log.Fatal(err)
}
if selfMetricsPort == 0 {
selfMetricsPort, err = confgenerator.GetFreePort()
if err != nil {
return err
}
}
// Create the OTel config and write it to disk
otel, err := c.GenerateOtelConfig(ctx, selfMetricsPort)
if err != nil {
return err
}
if err := os.MkdirAll(filepath.Dir(otelConfigFile), 0755); err != nil {
return fmt.Errorf("failed to create directory for %q: %v", otelConfigFile, err)
}
if err := ioutil.WriteFile(otelConfigFile, []byte(otel), 0644); err != nil {
return fmt.Errorf("failed to write file to %q: %v", otelConfigFile, err)
}
return nil
}