lang: funcs: Add better logging to the function engine
This commit is contained in:
@@ -165,8 +165,9 @@ func (obj *Engine) Init() error {
|
|||||||
|
|
||||||
obj.state[vertex] = &State{Expr: expr} // store some state!
|
obj.state[vertex] = &State{Expr: expr} // store some state!
|
||||||
|
|
||||||
e := obj.state[vertex].Init()
|
e1 := obj.state[vertex].Init()
|
||||||
err = errwrap.Append(err, e) // list of errors
|
e2 := errwrap.Wrapf(e1, "error loading func `%s`", vertex)
|
||||||
|
err = errwrap.Append(err, e2) // list of errors
|
||||||
}
|
}
|
||||||
if err != nil { // usually due to `not found` errors
|
if err != nil { // usually due to `not found` errors
|
||||||
return errwrap.Wrapf(err, "could not load requested funcs")
|
return errwrap.Wrapf(err, "could not load requested funcs")
|
||||||
@@ -217,6 +218,10 @@ func (obj *Engine) Validate() error {
|
|||||||
node := obj.state[vertex]
|
node := obj.state[vertex]
|
||||||
if exp := len(node.handle.Info().Sig.Ord); exp != count {
|
if exp := len(node.handle.Info().Sig.Ord); exp != count {
|
||||||
e := fmt.Errorf("expected %d inputs to `%s`, got %d", exp, node, count)
|
e := fmt.Errorf("expected %d inputs to `%s`, got %d", exp, node, count)
|
||||||
|
if obj.Debug {
|
||||||
|
obj.Logf("expected %d inputs to `%s`, got %d", exp, node, count)
|
||||||
|
obj.Logf("expected: %+v for `%s`", node.handle.Info().Sig.Ord, node)
|
||||||
|
}
|
||||||
err = errwrap.Append(err, e)
|
err = errwrap.Append(err, e)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -520,6 +525,10 @@ func (obj *Engine) Run() error {
|
|||||||
node.mutex.RUnlock()
|
node.mutex.RUnlock()
|
||||||
if !nodeLoaded {
|
if !nodeLoaded {
|
||||||
loaded = false // we were wrong
|
loaded = false // we were wrong
|
||||||
|
// TODO: add better "not loaded" reporting
|
||||||
|
if obj.Debug {
|
||||||
|
obj.Logf("not yet loaded: %s", node)
|
||||||
|
}
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user