mirror of
https://github.com/nspcc-dev/neo-go.git
synced 2024-11-23 13:38:35 +00:00
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 {
|
||||
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",
|
||||
zap.Stringer("script", ic.VM.GetCurrentScriptHash()),
|
||||
zap.String("logs", msg))
|
||||
zap.String("tx", txHash),
|
||||
zap.String("script", ic.VM.GetCurrentScriptHash().StringLE()),
|
||||
zap.String("msg", state))
|
||||
return nil
|
||||
}
|
||||
|
||||
|
|
|
@ -125,10 +125,8 @@ func TestLog(t *testing.T) {
|
|||
var logMsg map[string]interface{}
|
||||
require.NoError(t, json.Unmarshal([]byte(ls[0]), &logMsg))
|
||||
require.Equal(t, "info", logMsg["level"])
|
||||
require.Equal(t, "runtime log", logMsg["msg"])
|
||||
require.Equal(t, h.StringBE(), logMsg["script"])
|
||||
require.Equal(t, `"hello"`, logMsg["logs"])
|
||||
|
||||
require.Equal(t, "hello", logMsg["msg"])
|
||||
require.Equal(t, h.StringLE(), logMsg["script"])
|
||||
})
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue