diff --git a/changelogs/unreleased/jv-log-lsif-zip-cache.yml b/changelogs/unreleased/jv-log-lsif-zip-cache.yml new file mode 100644 index 0000000000000000000000000000000000000000..bedf3c1a4c25d87db6eaa9bbc4b04dde1d41b625 --- /dev/null +++ b/changelogs/unreleased/jv-log-lsif-zip-cache.yml @@ -0,0 +1,5 @@ +--- +title: Add logging for local LSIF ZIP caching +merge_request: 579 +author: +type: added diff --git a/internal/lsif_transformer/parser/parser.go b/internal/lsif_transformer/parser/parser.go index 44c1e8fe835e1a23f577e466222d3dc7e2f5d6e4..085e7a856aa16bfb50be433f76809b670e5569a7 100644 --- a/internal/lsif_transformer/parser/parser.go +++ b/internal/lsif_transformer/parser/parser.go @@ -2,11 +2,14 @@ package parser import ( "archive/zip" + "context" "errors" "fmt" "io" "io/ioutil" "os" + + "gitlab.com/gitlab-org/labkit/log" ) var ( @@ -23,7 +26,7 @@ type Config struct { TempPath string } -func NewParser(r io.Reader, config Config) (io.ReadCloser, error) { +func NewParser(ctx context.Context, r io.Reader, config Config) (io.ReadCloser, error) { docs, err := NewDocs(config) if err != nil { return nil, err @@ -45,6 +48,7 @@ func NewParser(r io.Reader, config Config) (io.ReadCloser, error) { if err != nil { return nil, err } + log.WithContextFields(ctx, log.Fields{"lsif_zip_cache_bytes": size}).Print("cached incoming LSIF zip on disk") zr, err := zip.NewReader(tempFile, size) if err != nil { diff --git a/internal/lsif_transformer/parser/parser_test.go b/internal/lsif_transformer/parser/parser_test.go index 314df02b1d10df5d72f81b67fae4d5eda8e98e01..3a4d72360e2ba460f8cc4ddd990a5477cdcac5b3 100644 --- a/internal/lsif_transformer/parser/parser_test.go +++ b/internal/lsif_transformer/parser/parser_test.go @@ -3,6 +3,7 @@ package parser import ( "archive/zip" "bytes" + "context" "encoding/json" "io" "io/ioutil" @@ -42,7 +43,7 @@ func createFiles(t *testing.T, filePath, tmpDir string) { file, err := os.Open(filePath) require.NoError(t, err) - parser, err := NewParser(file, Config{}) + parser, err := NewParser(context.Background(), file, Config{}) require.NoError(t, err) zipFileName := tmpDir + ".zip" diff --git a/internal/lsif_transformer/parser/performance_test.go b/internal/lsif_transformer/parser/performance_test.go index d3ecc1ed5c12da241b887a644ecf4f2b1775e740..5a12d90072f47bff175df222879c13986ab4a5f7 100644 --- a/internal/lsif_transformer/parser/performance_test.go +++ b/internal/lsif_transformer/parser/performance_test.go @@ -1,6 +1,7 @@ package parser import ( + "context" "io" "io/ioutil" "os" @@ -21,7 +22,7 @@ func BenchmarkGenerate(b *testing.B) { file, err := os.Open(filePath) require.NoError(b, err) - parser, err := NewParser(file, Config{}) + parser, err := NewParser(context.Background(), file, Config{}) require.NoError(b, err) _, err = io.Copy(ioutil.Discard, parser) diff --git a/internal/upload/rewrite.go b/internal/upload/rewrite.go index 80928d64cffa3dc5284e00e8ff6ea4937bdcad62..3da2991acb2422f24605dd0f2e0a23380d07d229 100644 --- a/internal/upload/rewrite.go +++ b/internal/upload/rewrite.go @@ -187,7 +187,7 @@ func handleLsifUpload(ctx context.Context, reader io.Reader, tempPath, filename TempPath: tempPath, } - return parser.NewParser(reader, parserConfig) + return parser.NewParser(ctx, reader, parserConfig) } func (rew *rewriter) copyPart(ctx context.Context, name string, p *multipart.Part) error {