Skip to content

Latest commit

 

History

History
62 lines (34 loc) · 1.91 KB

README.md

File metadata and controls

62 lines (34 loc) · 1.91 KB

package pkg is a collection of Go packages that provide a layer of convenience over the stdlib.

Packages

Helps build http clients with standard functionality such as error handling, tracing, timeouts, request signatures, json encoding and decoding, etc.

Implements an a linear-time counting algorithm, also known as "linear counting".

A simple mock server implementation, useful for mocking external services in tests.

Defines the httpx.Handler interface, an httpx.Handler router, and a variety of middleware.

Defines a context aware structured leveled logger.

Defines an interface for metrics, with an implementation for Datadog.

Defines an interface for error reporting, with implementations for honeybadger, newrelic, and rollbar.

Provides the ability to retry a function call with exponential backoff and notification hooks.

Provides types that make it easier to perform streaming IO.

Provides tooling that integrates with all of the above packages to build http servers with logging, distributed tracing, error reporting and metrics out of the box.

Use instead of time.Now to allow easy stubbing in tests.

Lightweight convenience stuff around pprof and Google Cloud Profiler for visibility into all our apps.

Usage

For examples of usage, see the example directory.