mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
Zanzana: Simple logger wrapper for openfga (#89396)
* Zanzana: Simple logger wrapper for openfga * don't export
This commit is contained in:
parent
d46df10d30
commit
b3907ca5ec
86
pkg/services/authz/zanzana/logger.go
Normal file
86
pkg/services/authz/zanzana/logger.go
Normal file
@ -0,0 +1,86 @@
|
||||
package zanzana
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"go.uber.org/zap"
|
||||
|
||||
"github.com/grafana/grafana/pkg/infra/log"
|
||||
)
|
||||
|
||||
// zanzanaLogger is a grafana logger wrapper compatible with OpenFGA logger interface
|
||||
type zanzanaLogger struct {
|
||||
logger *log.ConcreteLogger
|
||||
}
|
||||
|
||||
func newZanzanaLogger() *zanzanaLogger {
|
||||
logger := log.New("openfga-server")
|
||||
|
||||
return &zanzanaLogger{
|
||||
logger: logger,
|
||||
}
|
||||
}
|
||||
|
||||
// Simple converter for zap logger fields
|
||||
func zapFieldsToArgs(fields []zap.Field) []any {
|
||||
args := make([]any, 0)
|
||||
for _, f := range fields {
|
||||
args = append(args, f.Key)
|
||||
if f.Interface != nil {
|
||||
args = append(args, f.Interface)
|
||||
} else if f.String != "" {
|
||||
args = append(args, f.String)
|
||||
} else {
|
||||
args = append(args, f.Integer)
|
||||
}
|
||||
}
|
||||
return args
|
||||
}
|
||||
|
||||
func (l *zanzanaLogger) Debug(msg string, fields ...zap.Field) {
|
||||
l.logger.Debug(msg, zapFieldsToArgs(fields)...)
|
||||
}
|
||||
|
||||
func (l *zanzanaLogger) Info(msg string, fields ...zap.Field) {
|
||||
l.logger.Info(msg, zapFieldsToArgs(fields)...)
|
||||
}
|
||||
|
||||
func (l *zanzanaLogger) Warn(msg string, fields ...zap.Field) {
|
||||
l.logger.Warn(msg, zapFieldsToArgs(fields)...)
|
||||
}
|
||||
|
||||
func (l *zanzanaLogger) Error(msg string, fields ...zap.Field) {
|
||||
l.logger.Error(msg, zapFieldsToArgs(fields)...)
|
||||
}
|
||||
|
||||
func (l *zanzanaLogger) Panic(msg string, fields ...zap.Field) {
|
||||
l.logger.Error(msg, zapFieldsToArgs(fields)...)
|
||||
}
|
||||
|
||||
func (l *zanzanaLogger) Fatal(msg string, fields ...zap.Field) {
|
||||
l.logger.Error(msg, zapFieldsToArgs(fields)...)
|
||||
}
|
||||
|
||||
func (l *zanzanaLogger) DebugWithContext(ctx context.Context, msg string, fields ...zap.Field) {
|
||||
l.logger.Debug(msg, zapFieldsToArgs(fields)...)
|
||||
}
|
||||
|
||||
func (l *zanzanaLogger) InfoWithContext(ctx context.Context, msg string, fields ...zap.Field) {
|
||||
l.logger.Info(msg, zapFieldsToArgs(fields)...)
|
||||
}
|
||||
|
||||
func (l *zanzanaLogger) WarnWithContext(ctx context.Context, msg string, fields ...zap.Field) {
|
||||
l.logger.Warn(msg, zapFieldsToArgs(fields)...)
|
||||
}
|
||||
|
||||
func (l *zanzanaLogger) ErrorWithContext(ctx context.Context, msg string, fields ...zap.Field) {
|
||||
l.logger.Error(msg, zapFieldsToArgs(fields)...)
|
||||
}
|
||||
|
||||
func (l *zanzanaLogger) PanicWithContext(ctx context.Context, msg string, fields ...zap.Field) {
|
||||
l.logger.Error(msg, zapFieldsToArgs(fields)...)
|
||||
}
|
||||
|
||||
func (l *zanzanaLogger) FatalWithContext(ctx context.Context, msg string, fields ...zap.Field) {
|
||||
l.logger.Error(msg, zapFieldsToArgs(fields)...)
|
||||
}
|
@ -1,7 +1,6 @@
|
||||
package zanzana
|
||||
|
||||
import (
|
||||
"github.com/openfga/openfga/pkg/logger"
|
||||
"github.com/openfga/openfga/pkg/server"
|
||||
"github.com/openfga/openfga/pkg/storage"
|
||||
)
|
||||
@ -10,8 +9,7 @@ func NewServer(store storage.OpenFGADatastore) (*server.Server, error) {
|
||||
// FIXME(kalleep): add support for more options, configure logging, tracing etc
|
||||
opts := []server.OpenFGAServiceV1Option{
|
||||
server.WithDatastore(store),
|
||||
// FIXME(kalleep): Write and log adapter for open fga logging interface
|
||||
server.WithLogger(logger.NewNoopLogger()),
|
||||
server.WithLogger(newZanzanaLogger()),
|
||||
}
|
||||
|
||||
// FIXME(kalleep): Interceptors
|
||||
|
Loading…
Reference in New Issue
Block a user