Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Runtime ¶
type Runtime struct { Server Server ExitSignals []domain.ExitSignal }
Runtime is the app configuration and execution point
type Server ¶
type Server interface { // ListenAndServe starts the HTTP server in a blocking call. ListenAndServe() error // Shutdown stops the server from accepting new connections. // If the given context expires before shutdown is complete then // the context error is returned. Shutdown(ctx context.Context) error }
Server is an interface for starting/stopping an HTTP server
type Service ¶
type Service struct { // QueuerHTTPClient is the client to be used with the default Queuer module. // If no client is provided, the default client will be used. QueuerHTTPClient *http.Client // GrapherHTTPClient is the client to be used with the default Grapher module. // If no client is provided, the default client will be used. GrapherHTTPClient *http.Client // Middleware is a list of service middleware to install on the router. // The set of prepackaged middleware can be found in pkg/plugins. Middleware []func(http.Handler) http.Handler // Queuer is responsible for queuing graphing jobs which will eventually be consumed // by the Produce handler. The built in Queuer POSTs to an HTTP endpoint. Queuer domain.Queuer // Storage provides a mechanism to hook into a persistent store for the graphs. The // built in Storage uses S3 as the persistent storage for graph content. Storage domain.Storage // Marker is responsible for marking which graph jobs are inprogress. The built in // Marker uses S3 to hold this state. Marker domain.Marker // Grapher is responsible for creating a graph of VPC logs for a given time range. // The built in grapher calls out to a grapher service. Grapher domain.Grapher }
Service is a container for all of the pluggable modules used by the service
Directories ¶
Path | Synopsis |
---|---|
Package domain is a container of all of the domain types and interfaces that are used across multiple packages within the service.
|
Package domain is a container of all of the domain types and interfaces that are used across multiple packages within the service. |
Package handlers is a container of all HTTP API handlers which should be in the form of either http.HandlerFunc or http.Handler.
|
Package handlers is a container of all HTTP API handlers which should be in the form of either http.HandlerFunc or http.Handler. |
v1
Package v1 contains all handlers used to service the version 1.X.X API.
|
Package v1 contains all handlers used to service the version 1.X.X API. |
Package logs is a container of all structure logs that the service will emit.
|
Package logs is a container of all structure logs that the service will emit. |
Package plugins contains all of the built-in plugins supported by this project.
|
Package plugins contains all of the built-in plugins supported by this project. |
Click to show internal directories.
Click to hide internal directories.