pkg: istio.io/pkg/ctrlz Index | Files | Directories

package ctrlz

import "istio.io/pkg/ctrlz"

Package ctrlz implements Istio's introspection facility. When components integrate with ControlZ, they automatically gain an IP port which allows operators to visualize and control a number of aspects of each process, including controlling logging scopes, viewing command-line options, memory use, etc. Additionally, the port implements a REST API allowing access and control over the same state.

ControlZ is designed around the idea of "topics". A topic corresponds to the different parts of the UI. There are a set of built-in topics representing the core introspection functionality, and each component that uses ControlZ can add new topics specialized for their purpose.

Index

Package Files

ctrlz.go home.go options.go

func RegisterTopic Uses

func RegisterTopic(t fw.Topic)

RegisterTopic registers a new Control-Z topic for the current process.

type Options Uses

type Options struct {
    // The IP port to use for ctrlz.
    Port uint16

    // The IP address to listen on for ctrlz.
    Address string
}

Options defines the set of options supported by Istio's ControlZ component introspection package.

func DefaultOptions Uses

func DefaultOptions() *Options

DefaultOptions returns a new set of options, initialized to the defaults

func (*Options) AttachCobraFlags Uses

func (o *Options) AttachCobraFlags(cmd *cobra.Command)

AttachCobraFlags attaches a set of Cobra flags to the given Cobra command.

Cobra is the command-line processor that Istio uses. This command attaches the necessary set of flags to expose a CLI to let the user control all introspection options.

type Server Uses

type Server struct {
    // contains filtered or unexported fields
}

Server represents a running ControlZ instance.

func Run Uses

func Run(o *Options, customTopics []fw.Topic) (*Server, error)

Run starts up the ControlZ listeners.

ControlZ uses the set of standard core topics, the supplied custom topics, as well as any topics registered via the RegisterTopic function.

func (*Server) Address Uses

func (s *Server) Address() string

func (*Server) Close Uses

func (s *Server) Close()

Close terminates ControlZ.

Close is not normally used by programs that expose ControlZ, it is primarily intended to be used by tests.

Directories

PathSynopsis
assetsCode generated for package assets by go-bindata DO NOT EDIT.
fw
topicsPackage topics defines several canonical ControlZ topics.
topics/assetsCode generated for package assets by go-bindata DO NOT EDIT.

Package ctrlz imports 16 packages (graph) and is imported by 12 packages. Updated 2020-07-11. Refresh now. Tools for package owners.