Documentation

Index

Constants

View Source
const (
	// EnvStreamServerPath is the path to the Butler's stream server endpoint.
	//
	// This can be used by applications to initiate a new Butler stream with an
	// existing Butler stream server process. If a subprocess is launched with a
	// stream server configuration, it will propagate this path to its child
	// processes.
	EnvStreamServerPath = "LOGDOG_STREAM_SERVER_PATH"

	// EnvStreamProject is the environment variable set to the configured stream
	// project name.
	EnvStreamProject = "LOGDOG_STREAM_PROJECT"

	// EnvStreamPrefix is the environment variable set to the configured
	// stream name prefix.
	EnvStreamPrefix = "LOGDOG_STREAM_PREFIX"

	// EnvCoordinatorHost is the environment variable set to the host name of
	// the upstream Coordinator service.
	EnvCoordinatorHost = "LOGDOG_COORDINATOR_HOST"

	// EnvNamespace is the environment variable set to the stream namespace that
	// all streams should be created within.
	EnvNamespace = "LOGDOG_NAMESPACE"
)

    Environment variable names

    Variables

    View Source
    var ErrNotBootstrapped = errors.New("not bootstrapped")

      ErrNotBootstrapped is returned by Get when the current process is not bootstrapped.

      Functions

      This section is empty.

      Types

      type Bootstrap

      type Bootstrap struct {
      	// CoordinatorHost is the name of the upstream Coordinator host.
      	//
      	// This is just the host name ("example.appspot.com"), not a full URL.
      	//
      	// If this instance is not configured using a production Coordinator Output,
      	// this will be empty.
      	CoordinatorHost string
      
      	// Project is the Butler instance project name.
      	Project string
      	// Prefix is the Butler instance prefix.
      	Prefix types.StreamName
      	// Namespace is prefix for stream names.
      	Namespace types.StreamName
      
      	// Client is the streamclient for this instance, or nil if the Butler has no
      	// streamserver.
      	Client *streamclient.Client
      }

        Bootstrap contains information about the configured bootstrap environment.

        The bootstrap environment is loaded by probing the local application environment for variables emitted by a bootstrapping Butler.

        func Get

        func Get() (*Bootstrap, error)

          Get is shorthand for `GetFromEnv(environ.System())`.

          func GetFromEnv

          func GetFromEnv(env environ.Env) (*Bootstrap, error)

            GetFromEnv loads a Bootstrap instance from the given environment.

            It will return an error if the bootstrap data is invalid, and will return ErrNotBootstrapped if the current process is not bootstrapped.

            func (*Bootstrap) GetViewerURL

            func (bs *Bootstrap) GetViewerURL(paths ...types.StreamPath) (string, error)

              GetViewerURL returns a log stream viewer URL to the aggregate set of supplied stream paths.

              If both the Project and CoordinatorHost values are not populated, an error will be returned.