telemetry: ensure events are not dropped

- Move chan sync code immediately after operation
- Fix git hashing when not in a git repo

Signed-off-by: Andrea Luzzardi <aluzzardi@gmail.com>
This commit is contained in:
Andrea Luzzardi 2022-03-08 23:04:58 -08:00
parent c2bf9a528c
commit c17ce97381
5 changed files with 16 additions and 19 deletions

View File

@ -19,15 +19,18 @@ func TrackCommand(ctx context.Context, cmd *cobra.Command, props ...*telemetry.P
Name: "command",
Value: commandName(cmd),
},
{
// Hash the repository URL for privacy
Name: "git_repository_hash",
Value: hash(gitRepoURL(".")),
},
}, props...)
projectDir, found := pkg.GetCueModParent()
if found {
if repo := gitRepoURL("."); repo != "" {
props = append(props, &telemetry.Property{
// Hash the repository URL for privacy
Name: "git_repository_hash",
Value: hash(repo),
})
}
if projectDir, found := pkg.GetCueModParent(); found {
// Hash the project path for privacy
props = append(props, &telemetry.Property{
Name: "project_path_hash",
Value: hash(projectDir),

View File

@ -70,10 +70,11 @@ var doCmd = &cobra.Command{
return p.Do(ctx, getTargetPath(args), s)
})
<-doneCh
if err != nil {
lg.Fatal().Err(err).Msg("failed to execute plan")
}
<-doneCh
},
}

View File

@ -36,13 +36,11 @@ var initCmd = &cobra.Command{
name := viper.GetString("name")
doneCh := common.TrackCommand(ctx, cmd)
err := pkg.CueModInit(ctx, dir, name)
<-doneCh
if err != nil {
lg.Fatal().Err(err).Msg("failed to initialize project")
}
<-doneCh
},
}

View File

@ -7,7 +7,6 @@ import (
"go.dagger.io/dagger/cmd/dagger/logger"
"go.dagger.io/dagger/mod"
"go.dagger.io/dagger/pkg"
"go.dagger.io/dagger/telemetry"
)
var updateCmd = &cobra.Command{
@ -41,6 +40,7 @@ var updateCmd = &cobra.Command{
var update = viper.GetBool("update")
doneCh := common.TrackCommand(ctx, cmd)
var processedRequires []*mod.Require
if update && len(args) == 0 {
@ -62,16 +62,12 @@ var updateCmd = &cobra.Command{
}
}
doneCh := common.TrackCommand(ctx, cmd, &telemetry.Property{
Name: "num_packages",
Value: len(processedRequires),
})
<-doneCh
if err != nil {
lg.Error().Err(err).Msg("error installing/updating packages")
}
<-doneCh
},
}

View File

@ -61,15 +61,14 @@ var upCmd = &cobra.Command{
}
doneCh := common.TrackCommand(ctx, cmd)
err = cl.Do(ctx, p.Context(), func(ctx context.Context, s solver.Solver) error {
return p.Do(ctx, cue.ParsePath(viper.GetString("target")), s)
})
<-doneCh
if err != nil {
lg.Fatal().Err(err).Msg("failed to up environment")
}
<-doneCh
},
}