Back to / ctrlz

Package ctrlz

v0.0.0 (1f3e741)
Latest Go to latest
Published: 1 day ago | License: Apache-2.0 | Module:


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.


Package Files

func RegisterTopic

func RegisterTopic(t fw.Topic)

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

type Options

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

func DefaultOptions() *Options

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

func (*Options) AttachCobraFlags

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

type Server struct {
	// contains filtered or unexported fields

Server represents a running ControlZ instance.

func Run

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

func (s *Server) Address() string

func (*Server) Close

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.

Documentation was rendered with GOOS=linux and GOARCH=amd64.

Jump to identifier

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to identifier