func Debugf(ctx context.Context, format string, a ...interface{}) {
	std.output(ctx, "DEBUG", format, a...)
}
Debugf formats its arguments according to the format, analogous to fmt.Printf,
and records the text as log message at debug level.
The log message will be associated with the platform request linked with the context.
package aelog
import (
	"context"
	"encoding/json"
	"fmt"
	"log"
	"os"
	"sync"
	"github.com/DeNA/aelog/internal/spancontext"
)
type logger struct {
	mu  sync.Mutex
	out func(context.Context, string, string, ...interface{})
}
func (l *logger) output(ctx context.Context, severity, format string, a ...interface{}) {
	l.mu.Lock()
	defer l.mu.Unlock()
	l.out(ctx, severity, format, a...)
}
func SetOutput(f func(context.Context, string, string, ...interface{})) {
	std.mu.Lock()
	defer std.mu.Unlock()
	std.out = f
}
var std = &logger{out: OutputJSON}