package python import ( "bufio" "bytes" "context" "io" "github.com/databricks/cli/libs/log" ) type logWriter struct { ctx context.Context prefix string buf bytes.Buffer } // newLogWriter creates a new io.Writer that writes to log with specified prefix. func newLogWriter(ctx context.Context, prefix string) io.Writer { return &logWriter{ ctx: ctx, prefix: prefix, } } func (p *logWriter) Write(bytes []byte) (n int, err error) { p.buf.Write(bytes) scanner := bufio.NewScanner(&p.buf) for scanner.Scan() { line := scanner.Text() log.Debugf(p.ctx, "%s%s", p.prefix, line) } remaining := p.buf.Bytes() p.buf.Reset() p.buf.Write(remaining) return len(bytes), nil }