moul / chizap

⚡️ simple zap logging middleware for go-chi

Home Page:https://manfred.life/golang

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

chizap

😄 chizap

go.dev reference License GitHub release Docker Metrics Made by Manfred Touron

Go Release PR GolangCI codecov Go Report Card CodeFactor

Gitpod ready-to-code

Example

import (
	"github.com/go-chi/chi"
	"go.uber.org/zap"
	"moul.io/chizap"
)

func Example() {
	logger := zap.NewExample()
	r := chi.NewRouter()
	r.Use(chizap.New(logger, &chizap.Opts{
		WithReferer:   true,
		WithUserAgent: true,
	}))
}

Usage

FUNCTIONS

func New(logger *zap.Logger, opts *Opts) func(next http.Handler) http.Handler
    New returns a logger middleware for chi, that implements the http.Handler
    interface.


TYPES

type Opts struct {
	// WithReferer enables logging the "Referer" HTTP header value.
	WithReferer bool

	// WithUserAgent enables logging the "User-Agent" HTTP header value.
	WithUserAgent bool
}
    Opts contains the middleware configuration.

Install

Using go

go get moul.io/chizap

Releases

See https://github.com/moul/chizap/releases

Contribute

Contribute <3

I really welcome contributions. Your input is the most precious material. I'm well aware of that and I thank you in advance. Everyone is encouraged to look at what they can do on their own scale; no effort is too small.

Everything on contribution is sum up here: CONTRIBUTING.md

Dev helpers

Pre-commit script for install: https://pre-commit.com

Contributors ✨

All Contributors

Thanks goes to these wonderful people (emoji key):


Manfred Touron

🚧 📖 ⚠️ 💻

moul-bot

🚧

This project follows the all-contributors specification. Contributions of any kind welcome!

Stargazers over time

Stargazers over time

License

© 2021 Manfred Touron

Licensed under the Apache License, Version 2.0 (LICENSE-APACHE) or the MIT license (LICENSE-MIT), at your option. See the COPYRIGHT file for more details.

SPDX-License-Identifier: (Apache-2.0 OR MIT)

About

⚡️ simple zap logging middleware for go-chi

https://manfred.life/golang

License:Other


Languages

Language:Go 75.8%Language:Makefile 12.7%Language:Shell 11.5%