Directories ¶
Path | Synopsis |
---|---|
config
|
|
o11y
Package o11y is the primary entrypoint for wiring up a standard configuration of the o11y observability system.
|
Package o11y is the primary entrypoint for wiring up a standard configuration of the o11y observability system. |
secret
Package secret contains a struct to store secrets in that won't accidentally let them be logged.
|
Package secret contains a struct to store secrets in that won't accidentally let them be logged. |
Package datadog contains a basic Datadog API client for retrieving metrics back from Datadog.
|
Package datadog contains a basic Datadog API client for retrieving metrics back from Datadog. |
Package db contains a variety of tools for working safely with databases.
|
Package db contains a variety of tools for working safely with databases. |
example
module
|
|
Package grpchelpers includes helpers to set up grpc connections.
|
Package grpchelpers includes helpers to set up grpc connections. |
Package httpclient provides an HTTP client instrumented with the ex/o11y package, it includes resiliency behaviour such as configurable timeouts, retries, authentication and connection pooling, with support for backing off when a 429 response code is seen.
|
Package httpclient provides an HTTP client instrumented with the ex/o11y package, it includes resiliency behaviour such as configurable timeouts, retries, authentication and connection pooling, with support for backing off when a 429 response code is seen. |
dnscache
Package dnscache contains a simple in-process cache for DNS lookups
|
Package dnscache contains a simple in-process cache for DNS lookups |
Package httpserver contains helpers for creating zero-downtime REST APIs.
|
Package httpserver contains helpers for creating zero-downtime REST APIs. |
ginrouter
Package ginrouter provides a common base for configuring a Gin router instance, wiring in the standard o11y wrappers.
|
Package ginrouter provides a common base for configuring a Gin router instance, wiring in the standard o11y wrappers. |
healthcheck
Package healthcheck contains a simple healthcheck handler.
|
Package healthcheck contains a simple healthcheck handler. |
internal
|
|
Package mongoex contains a variety of tools for working safely with MongoDB.
|
Package mongoex contains a variety of tools for working safely with MongoDB. |
Package o11y core of the ex observability system, currently backed by Honeycomb's libhoney.
|
Package o11y core of the ex observability system, currently backed by Honeycomb's libhoney. |
honeycomb
Package honeycomb implements o11y tracing.
|
Package honeycomb implements o11y tracing. |
wrappers/baggage
Package baggage contains the internal implementation of the o11y baggage.
|
Package baggage contains the internal implementation of the o11y baggage. |
wrappers/o11ygin
Package o11ygin contains middleware for the Gin router.
|
Package o11ygin contains middleware for the Gin router. |
wrappers/o11ynethttp
Package o11ynethttp contains middleware for the standard Go HTTP server.
|
Package o11ynethttp contains middleware for the standard Go HTTP server. |
Package rabbit contains an experimental RabbitMQ publishing client.
|
Package rabbit contains an experimental RabbitMQ publishing client. |
Package recontext provides means of obtaining a derived context which ignores parent's deadline, timeout, and cancellation.
|
Package recontext provides means of obtaining a derived context which ignores parent's deadline, timeout, and cancellation. |
Package redis contains wiring and observability for the go-redis Redis client.
|
Package redis contains wiring and observability for the go-redis Redis client. |
Package rootcerts exists to support creating Docker images `FROM scratch`.
|
Package rootcerts exists to support creating Docker images `FROM scratch`. |
Package system manages the startup, running, metrics and shutdown of a Go service.
|
Package system manages the startup, running, metrics and shutdown of a Go service. |
Package termination contains a simple handler for termination signals.
|
Package termination contains a simple handler for termination signals. |
Package testing contains various helpers in sub packages for writing high value tests.
|
Package testing contains various helpers in sub packages for writing high value tests. |
compiler
Package compiler helps efficiently compile and cleanup your services in acceptance tests.
|
Package compiler helps efficiently compile and cleanup your services in acceptance tests. |
dbfixture
Package dbfixture will setup a and reset a fresh database for each of your tests.
|
Package dbfixture will setup a and reset a fresh database for each of your tests. |
download
Package download helps download releases of binaries for using in end to end service testing.
|
Package download helps download releases of binaries for using in end to end service testing. |
fakemetrics
Package fakemetrics provides an implementation of the o11y metrics provider that will record all metrics you send it.
|
Package fakemetrics provides an implementation of the o11y metrics provider that will record all metrics you send it. |
fakestatsd
Package fakestatsd provides a recording statsd server that will listen on a local UDP port.
|
Package fakestatsd provides a recording statsd server that will listen on a local UDP port. |
httprecorder
Package httprecorder provides a simple way of recording and later retrieving all requests that are sent to an HTTP handler.
|
Package httprecorder provides a simple way of recording and later retrieving all requests that are sent to an HTTP handler. |
httprecorder/ginrecorder
Package ginrecorder provides a middleware to wire a httprecorder into Gin routers used in test fakes.
|
Package ginrecorder provides a middleware to wire a httprecorder into Gin routers used in test fakes. |
httprecorder/httpnetrecorder
Package httpnetrecorder provides a middleware to wire a httprecorder into test fakes.
|
Package httpnetrecorder provides a middleware to wire a httprecorder into test fakes. |
internal/types
Package types contains various interfaces for writing tests.
|
Package types contains various interfaces for writing tests. |
kongtest
Package kongtest helps write golden tests for your [Kong](https://github.com/alecthomas/kong) CLI parsing.
|
Package kongtest helps write golden tests for your [Kong](https://github.com/alecthomas/kong) CLI parsing. |
mongofixture
Package mongofixture will setup an isolated Mongo DB for your tests, so they don't interfere.
|
Package mongofixture will setup an isolated Mongo DB for your tests, so they don't interfere. |
rabbitfixture
Package rabbitfixture will setup isolated RabbitMQ VHost for your tests, so they don't interfere.
|
Package rabbitfixture will setup isolated RabbitMQ VHost for your tests, so they don't interfere. |
redisfixture
Package redisfixture will setup an isolated Redis DB for your tests, so they don't interfere.
|
Package redisfixture will setup an isolated Redis DB for your tests, so they don't interfere. |
releases
Package releases is a helper to determine which binaries to download for end to end tests.
|
Package releases is a helper to determine which binaries to download for end to end tests. |
runner
Package runner allows you to run a binary in an acceptance test (scan output for ports, wait for start).
|
Package runner allows you to run a binary in an acceptance test (scan output for ports, wait for start). |
testcontext
Package testcontext provides a context with o11y wired in, setup for coloured logging and no-op metrics.
|
Package testcontext provides a context with o11y wired in, setup for coloured logging and no-op metrics. |
Package worker runs a service worker loop with observability and back-off for no work found.
|
Package worker runs a service worker loop with observability and back-off for no work found. |
Click to show internal directories.
Click to hide internal directories.