func (t *Trace) Step(msg string, fields ...Field) {
	if t.traceItems == nil {
		// traces almost always have less than 6 steps, do this to avoid more than a single allocation
		t.traceItems = make([]traceItem, 0, 6)
	}
	t.traceItems = append(t.traceItems, traceStep{stepTime: time.Now(), msg: msg, fields: fields})
}
// Step adds a new step with a specific message. Call this at the end of an execution step to record
// how long it took. The Fields add key value pairs to provide additional details about the trace
// step.
Step adds a new step with a specific message. Call this at the end of an execution step to record
how long it took. The Fields add key value pairs to provide additional details about the trace
step.
// Step adds a new step with a specific message . Call this at the end of an execution step to record // how long it took . The Fields add key value pairs to provide additional details about the trace // step .
func (t *Trace) Step(msg string, fields ...Field) {
	if t.traceItems == nil {
		t.traceItems = make([]traceItem, 0, 6)
	}
	t.traceItems = append(t.traceItems, traceStep{stepTime: time.Now(), msg: msg, fields: fields})
}
func ( t * Trace ) Step ( msg string , fields ... Field ) { if t . traceItems == nil { t . traceItems = make ( [ ] traceItem , 0 , 6 ) } t . traceItems = append ( t . traceItems , traceStep { stepTime : time . Now ( ) , msg : msg , fields : fields } ) }
Step adds a new step with a specific message.
Step adds a new step with a specific message .
// traces almost always have less than 6 steps, do this to avoid more than a single allocation