Wim 4dd8bae5c9
Update dependencies (#1610)
* Update dependencies

* Update module to go 1.17
2021-10-17 00:47:22 +02:00
..
2021-10-17 00:47:22 +02:00
2021-10-17 00:47:22 +02:00
2021-10-17 00:47:22 +02:00
2021-10-17 00:47:22 +02:00
2021-10-17 00:47:22 +02:00
2021-10-17 00:47:22 +02:00
2021-10-17 00:47:22 +02:00
2021-10-17 00:47:22 +02:00
2021-10-17 00:47:22 +02:00
2021-10-17 00:47:22 +02:00
2021-10-17 00:47:22 +02:00
2021-10-17 00:47:22 +02:00
2021-10-17 00:47:22 +02:00
2021-10-17 00:47:22 +02:00

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

![Structured logging for golang](assets/title.png)

Package log implements a simple structured logging API inspired by Logrus, designed with centralization in mind. Read more on [Medium](https://medium.com/@tjholowaychuk/apex-log-e8d9627f4a9a#.rav8yhkud).

## Handlers

- __apexlogs__  handler for [Apex Logs](https://apex.sh/logs/)
- __cli__  human-friendly CLI output
- __discard__  discards all logs
- __es__  Elasticsearch handler
- __graylog__  Graylog handler
- __json__  JSON output handler
- __kinesis__  AWS Kinesis handler
- __level__  level filter handler
- __logfmt__  logfmt plain-text formatter
- __memory__  in-memory handler for tests
- __multi__  fan-out to multiple handlers
- __papertrail__  Papertrail handler
- __text__  human-friendly colored output
- __delta__  outputs the delta between log calls and spinner

## Example

Example using the [Apex Logs](https://apex.sh/logs/) handler.

```go
package main

import (
	"errors"
	"time"

	"github.com/apex/log"
)

func main() {
	ctx := log.WithFields(log.Fields{
		"file": "something.png",
		"type": "image/png",
		"user": "tobi",
	})

	for range time.Tick(time.Millisecond * 200) {
		ctx.Info("upload")
		ctx.Info("upload complete")
		ctx.Warn("upload retry")
		ctx.WithError(errors.New("unauthorized")).Error("upload failed")
		ctx.Errorf("failed to upload %s", "img.png")
	}
}
```

---

[![Build Status](https://semaphoreci.com/api/v1/projects/d8a8b1c0-45b0-4b89-b066-99d788d0b94c/642077/badge.svg)](https://semaphoreci.com/tj/log)
[![GoDoc](https://godoc.org/github.com/apex/log?status.svg)](https://godoc.org/github.com/apex/log)
![](https://img.shields.io/badge/license-MIT-blue.svg)
![](https://img.shields.io/badge/status-stable-green.svg)

<a href="https://apex.sh"><img src="http://tjholowaychuk.com:6000/svg/sponsor"></a>