Skip to content

Commit b0930e4

Browse files
authored
fix!: Logger wasnt passed to source plugin resulting no errors (#49)
1 parent 314f3f3 commit b0930e4

File tree

4 files changed

+7
-11
lines changed

4 files changed

+7
-11
lines changed

plugins/source.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ import (
1212
"github.com/thoas/go-funk"
1313
)
1414

15-
type SourceNewExecutionClientFunc func(context.Context, *SourcePlugin, specs.Source) (schema.ClientMeta, error)
15+
type SourceNewExecutionClientFunc func(context.Context, zerolog.Logger, specs.Source) (schema.ClientMeta, error)
1616

1717
// SourcePlugin is the base structure required to pass to sdk.serve
1818
// We take a similar/declerative approach to API here similar to Cobra
@@ -121,7 +121,7 @@ func (p *SourcePlugin) SetLogger(log zerolog.Logger) {
121121

122122
// Sync data from source to the given channel
123123
func (p *SourcePlugin) Sync(ctx context.Context, spec specs.Source, res chan<- *schema.Resource) error {
124-
c, err := p.newExecutionClient(ctx, p, spec)
124+
c, err := p.newExecutionClient(ctx, p.logger, spec)
125125
if err != nil {
126126
return fmt.Errorf("failed to create execution client for source plugin %s: %w", p.name, err)
127127
}
@@ -138,7 +138,7 @@ func (p *SourcePlugin) Sync(ctx context.Context, spec specs.Source, res chan<- *
138138
w := sync.WaitGroup{}
139139
totalResources := 0
140140
startTime := time.Now()
141-
tableNames, err := p.interpolateAllResources(p.tables.TableNames())
141+
tableNames, err := p.interpolateAllResources(spec.Tables)
142142
if err != nil {
143143
return err
144144
}

plugins/source_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ func (c *testExecutionClient) Logger() *zerolog.Logger {
5353
return &c.logger
5454
}
5555

56-
func newTestExecutionClient(context.Context, *SourcePlugin, specs.Source) (schema.ClientMeta, error) {
56+
func newTestExecutionClient(context.Context, zerolog.Logger, specs.Source) (schema.ClientMeta, error) {
5757
return &testExecutionClient{}, nil
5858
}
5959

schema/table.go

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -154,10 +154,6 @@ func (t Table) ColumnIndex(name string) int {
154154
return -1
155155
}
156156

157-
// func (tco TableCreationOptions) signature() string {
158-
// return strings.Join(tco.PrimaryKeys, ";")
159-
// }
160-
161157
func (t Table) TableNames() []string {
162158
ret := []string{t.Name}
163159
for _, rel := range t.Relations {
@@ -172,9 +168,9 @@ func (t Table) Resolve(ctx context.Context, meta ClientMeta, syncTime time.Time,
172168
startTime := time.Now()
173169
go func() {
174170
defer func() {
175-
if r := recover(); r != nil {
171+
if err := recover(); err != nil {
176172
stack := string(debug.Stack())
177-
meta.Logger().Error().Str("table_name", t.Name).TimeDiff("duration", time.Now(), startTime).Str("stack", stack).Msg("table resolver finished with panic")
173+
meta.Logger().Error().Interface("error", err).Str("table_name", t.Name).TimeDiff("duration", time.Now(), startTime).Str("stack", stack).Msg("table resolver finished with panic")
178174
}
179175
close(res)
180176
}()

serve/serve_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ func (c *testExecutionClient) Logger() *zerolog.Logger {
6060
return &c.logger
6161
}
6262

63-
func newTestExecutionClient(context.Context, *plugins.SourcePlugin, specs.Source) (schema.ClientMeta, error) {
63+
func newTestExecutionClient(context.Context, zerolog.Logger, specs.Source) (schema.ClientMeta, error) {
6464
return &testExecutionClient{}, nil
6565
}
6666

0 commit comments

Comments
 (0)