forked from TrueCloudLab/neoneo-go
runtime: tune runtime.Log messages
Add transaction hash, print contract hash in LE (as all user-facing functions do) and don't double-quote the message, zap already does quoting of its own.
This commit is contained in:
parent
d33dcd557a
commit
453012ff16
2 changed files with 9 additions and 7 deletions
|
@ -82,10 +82,14 @@ func Log(ic *interop.Context) error {
|
||||||
if len(state) > MaxNotificationSize {
|
if len(state) > MaxNotificationSize {
|
||||||
return fmt.Errorf("message length shouldn't exceed %v", MaxNotificationSize)
|
return fmt.Errorf("message length shouldn't exceed %v", MaxNotificationSize)
|
||||||
}
|
}
|
||||||
msg := fmt.Sprintf("%q", state)
|
var txHash string
|
||||||
|
if ic.Tx != nil {
|
||||||
|
txHash = ic.Tx.Hash().StringLE()
|
||||||
|
}
|
||||||
ic.Log.Info("runtime log",
|
ic.Log.Info("runtime log",
|
||||||
zap.Stringer("script", ic.VM.GetCurrentScriptHash()),
|
zap.String("tx", txHash),
|
||||||
zap.String("logs", msg))
|
zap.String("script", ic.VM.GetCurrentScriptHash().StringLE()),
|
||||||
|
zap.String("msg", state))
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -125,10 +125,8 @@ func TestLog(t *testing.T) {
|
||||||
var logMsg map[string]interface{}
|
var logMsg map[string]interface{}
|
||||||
require.NoError(t, json.Unmarshal([]byte(ls[0]), &logMsg))
|
require.NoError(t, json.Unmarshal([]byte(ls[0]), &logMsg))
|
||||||
require.Equal(t, "info", logMsg["level"])
|
require.Equal(t, "info", logMsg["level"])
|
||||||
require.Equal(t, "runtime log", logMsg["msg"])
|
require.Equal(t, "hello", logMsg["msg"])
|
||||||
require.Equal(t, h.StringBE(), logMsg["script"])
|
require.Equal(t, h.StringLE(), logMsg["script"])
|
||||||
require.Equal(t, `"hello"`, logMsg["logs"])
|
|
||||||
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue