zapadapter

package module
v0.0.0-...-34c8bb1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 26, 2021 License: MIT Imports: 3 Imported by: 0

README

zapadapter

Adapters for zap.

pgx

zap.Logger -> pgx.Logger

Usage:

dbURL := os.Getenv("DB_URL")
if strings.TrimSpace(dbURL) == "" {
        return nil, fmt.Errorf("Env var DB_URL must exist")
}
cfg, err := pgx.ParseConfig(dbURL)
if err != nil {
        return nil, fmt.Errorf("failed to parse config from DB_URL: %w", err)
}
cfg.Logger = zapadapter.NewPgxAdapater(logger)

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type PgxAdapter

type PgxAdapter struct {
	// contains filtered or unexported fields
}

PgxAdapater is an adapter between zap.Logger and pgx.Logger.

func NewPgxAdapter

func NewPgxAdapter(logger *zap.Logger) *PgxAdapter

NewPgxAdapater constructs a PgxAdapater for the given logger.

It adds a service=pgx fields to the logger, all records logged from this logger will have this field.

func (*PgxAdapter) Log

func (a *PgxAdapter) Log(ctx context.Context, level pgx.LogLevel, data map[string]interface{})

Log implements the pgx.Logger interface to PgxAdapter.

pgx lets us give it a logger to get logging from its internals. PgxAdapter allows us to use zap.Logger for this.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL