github.com/influxdata/influxdb/v2@v2.7.6/telemetry/store.go (about) 1 package telemetry 2 3 import ( 4 "context" 5 6 "go.uber.org/zap" 7 ) 8 9 // Store records usage data. 10 type Store interface { 11 // WriteMessage stores data into the store. 12 WriteMessage(ctx context.Context, data []byte) error 13 } 14 15 var _ Store = (*LogStore)(nil) 16 17 // LogStore logs data written to the store. 18 type LogStore struct { 19 log *zap.Logger 20 } 21 22 func NewLogStore(log *zap.Logger) *LogStore { 23 return &LogStore{ 24 log: log, 25 } 26 } 27 28 // WriteMessage logs data at Info level. 29 func (s *LogStore) WriteMessage(ctx context.Context, data []byte) error { 30 s.log.Info("Write", zap.String("data", string(data))) 31 return nil 32 }