ctrlz

package
v0.0.0-...-7635388 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 21, 2023 License: Apache-2.0 Imports: 16 Imported by: 2

Documentation

Overview

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

Constants

This section is empty.

Variables

This section is empty.

Functions

func RegisterTopic

func RegisterTopic(t fw.Topic)

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

Types

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.

Directories

Path Synopsis
Package topics defines several canonical ControlZ topics.
Package topics defines several canonical ControlZ topics.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL