mirror of
https://github.com/grafana/grafana.git
synced 2025-07-29 23:52:19 +08:00
82 lines
2.4 KiB
Go
82 lines
2.4 KiB
Go
package pipeline
|
|
|
|
import (
|
|
"context"
|
|
"log/slog"
|
|
|
|
"dagger.io/dagger"
|
|
)
|
|
|
|
type StateLogger struct {
|
|
Log *slog.Logger
|
|
Handler StateHandler
|
|
}
|
|
|
|
func (s *StateLogger) String(ctx context.Context, arg Argument) (string, error) {
|
|
s.Log.Debug("Getting string from state", "arg", arg.Name)
|
|
val, err := s.Handler.String(ctx, arg)
|
|
if err != nil {
|
|
s.Log.Error("Error getting string from state", "arg", arg.Name, "error", err)
|
|
}
|
|
s.Log.Debug("Got string from state", "arg", arg.Name)
|
|
|
|
return val, err
|
|
}
|
|
func (s *StateLogger) Int64(ctx context.Context, arg Argument) (int64, error) {
|
|
s.Log.Debug("Getting int64 from state", "arg", arg.Name)
|
|
val, err := s.Handler.Int64(ctx, arg)
|
|
if err != nil {
|
|
s.Log.Error("Error getting int64 from state", "arg", arg.Name, "error", err)
|
|
}
|
|
s.Log.Debug("Got int64 from state", "arg", arg.Name)
|
|
|
|
return val, err
|
|
}
|
|
func (s *StateLogger) Bool(ctx context.Context, arg Argument) (bool, error) {
|
|
s.Log.Debug("Getting bool from state", "arg", arg.Name)
|
|
val, err := s.Handler.Bool(ctx, arg)
|
|
if err != nil {
|
|
s.Log.Error("Error getting bool from state", "arg", arg.Name, "error", err)
|
|
}
|
|
s.Log.Debug("Got bool from state", "arg", arg.Name)
|
|
|
|
return val, err
|
|
}
|
|
func (s *StateLogger) File(ctx context.Context, arg Argument) (*dagger.File, error) {
|
|
s.Log.Debug("Getting file from state", "arg", arg.Name)
|
|
val, err := s.Handler.File(ctx, arg)
|
|
if err != nil {
|
|
s.Log.Error("Error getting file from state", "arg", arg.Name, "error", err)
|
|
}
|
|
s.Log.Debug("Got file from state", "arg", arg.Name)
|
|
|
|
return val, err
|
|
}
|
|
func (s *StateLogger) Directory(ctx context.Context, arg Argument) (*dagger.Directory, error) {
|
|
s.Log.Debug("Getting directory from state", "arg", arg.Name)
|
|
val, err := s.Handler.Directory(ctx, arg)
|
|
if err != nil {
|
|
s.Log.Error("Error getting directory from state", "arg", arg.Name, "error", err)
|
|
}
|
|
s.Log.Debug("Got directory from state", "arg", arg.Name)
|
|
|
|
return val, err
|
|
}
|
|
func (s *StateLogger) CacheVolume(ctx context.Context, arg Argument) (*dagger.CacheVolume, error) {
|
|
s.Log.Debug("Getting cache volume from state", "arg", arg.Name)
|
|
val, err := s.Handler.CacheVolume(ctx, arg)
|
|
if err != nil {
|
|
s.Log.Error("Error getting cache volume from state", "arg", arg.Name, "error", err)
|
|
}
|
|
s.Log.Debug("Got cache volume from state", "arg", arg.Name)
|
|
|
|
return val, err
|
|
}
|
|
|
|
func StateWithLogger(log *slog.Logger, s StateHandler) StateHandler {
|
|
return &StateLogger{
|
|
Log: log,
|
|
Handler: s,
|
|
}
|
|
}
|