diagnostics

package
v3.9.0-0.23.0+incompat... Latest Latest
Warning

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

Go to latest
Published: Jan 23, 2018 License: Apache-2.0 Imports: 40 Imported by: 0

Documentation

Overview

OpenShift v3 Diagnostics

This is a tool to help administrators and users resolve common problems that occur with OpenShift v3 deployments. It will likely remain under continuous development as the OpenShift Origin project progresses.

The goals of the diagnostics tool are summarized in the Trello card https://trello.com/c/LdUogKuN; Diagnostics are included as an `openshift` sub-command that analyzes OpenShift as it is able, whether from the perspective of an OpenShift client or on an OpenShift host.

View pkg/diagnostics/README.md for more details on developing diagnostics.

Index

Constants

View Source
const (
	// Command name
	DiagnosticsRecommendedName    = "diagnostics"
	AllDiagnosticsRecommendedName = "all"

	// Standard locations for the host config files OpenShift uses.
	StandardMasterConfigPath string = "/etc/origin/master/master-config.yaml"
	StandardNodeConfigPath   string = "/etc/origin/node/node-config.yaml"
)
View Source
const (
	// Standard locations for the secrets mounted in pods
	StandardMasterCaPath = "/var/run/secrets/kubernetes.io/serviceaccount/ca.crt"
	StandardTokenPath    = "/var/run/secrets/kubernetes.io/serviceaccount/token"
	StandardMasterUrl    = "https://kubernetes.default.svc.cluster.local"
)

Variables

This section is empty.

Functions

func NewCmdDiagnostics

func NewCmdDiagnostics(name string, fullName string, out io.Writer) *cobra.Command

NewCmdDiagnostics is the base command for running any diagnostics.

func NewCmdDiagnosticsAll

func NewCmdDiagnosticsAll(name string, fullName string, out io.Writer, available types.DiagnosticList) *cobra.Command

NewCmdDiagnosticsAll is the command for running ALL diagnostics and providing all flags.

func NewCmdDiagnosticsIndividual

func NewCmdDiagnosticsIndividual(name string, fullName string, out io.Writer, diagnostic types.Diagnostic) *cobra.Command

NewCmdDiagnosticsIndividual is a generic subcommand providing a single diagnostic and its flags.

func NewCommandNetworkPodDiagnostics

func NewCommandNetworkPodDiagnostics(name string, out io.Writer) *cobra.Command

NewCommandNetworkPodDiagnostics is the command for running network diagnostics.

func NewCommandPodDiagnostics

func NewCommandPodDiagnostics(name string, out io.Writer) *cobra.Command

NewCommandPodDiagnostics is the command for running pod diagnostics.

Types

type DiagnosticsOptions

type DiagnosticsOptions struct {
	// list of diagnostic name(s) to run
	RequestedDiagnostics sets.String
	// flag bindings for any diagnostics that require them
	ParameterizedDiagnostics types.ParameterizedDiagnosticMap

	// list available diagnostics and exit
	ListAll bool
	// specify locations of host config files
	MasterConfigLocation string
	NodeConfigLocation   string
	// indicate this is an openshift host despite lack of other indicators
	IsHost bool
	// When true, prevent diagnostics from changing API state (e.g. creating something)
	PreventModification bool
	// We need a factory for creating clients. Creating a factory
	// creates flags as a byproduct, most of which we don't want.
	// The command creates these and binds only the flags we want.
	ClientFlags *flag.FlagSet
	Factory     *osclientcmd.Factory
	// specify context name to be used for cluster-admin access
	ClientClusterContext string
	// LogOptions determine globally what the user wants to see and how.
	LogOptions *log.LoggerOptions
	// The Logger is built with the options and should be used for all diagnostic output.
	Logger *log.Logger
}

DiagnosticsOptions holds values received from command line flags as well as other objects generated for the command to operate.

func (*DiagnosticsOptions) Complete

func (o *DiagnosticsOptions) Complete(c *cobra.Command, args []string) error

Complete fills in DiagnosticsConfig needed if the command is actually invoked.

func (DiagnosticsOptions) Run

func (o DiagnosticsOptions) Run(diagnostics []types.Diagnostic) (bool, error, int, int)

Run performs the actual execution of diagnostics once they're built.

func (DiagnosticsOptions) RunDiagnostics

func (o DiagnosticsOptions) RunDiagnostics() (bool, error, int, int)

RunDiagnostics builds diagnostics based on the options and executes them, returning a summary. Returns: failure ("true" meaning there was not a clean diagnostic result), error (raised during construction or execution of diagnostics; may be an aggregate error object), number of warnings encountered in diagnostics results, number of errors encountered (diagnostic results plus errors previously raised).

type NetworkPodDiagnosticsOptions

type NetworkPodDiagnosticsOptions struct {
	// list of diagnostic names to limit what is run
	RequestedDiagnostics []string
	// LogOptions determine globally what the user wants to see and how.
	LogOptions *log.LoggerOptions
	// The Logger is built with the options and should be used for all diagnostic output.
	Logger *log.Logger
}

NetworkPodDiagnosticsOptions holds values received from environment variables for the command to operate.

func (NetworkPodDiagnosticsOptions) BuildAndRunDiagnostics

func (o NetworkPodDiagnosticsOptions) BuildAndRunDiagnostics() (failed bool, err error, numWarnings, numErrors int)

BuildAndRunDiagnostics builds diagnostics based on the options and executes them, returning a summary.

func (*NetworkPodDiagnosticsOptions) Complete

func (o *NetworkPodDiagnosticsOptions) Complete(args []string) (err error)

Complete fills in NetworkPodDiagnosticsOptions needed if the command is actually invoked.

type PodDiagnosticsOptions

type PodDiagnosticsOptions struct {
	// list of diagnostic names to limit what is run
	RequestedDiagnostics []string
	// LogOptions determine globally what the user wants to see and how.
	LogOptions *log.LoggerOptions
	// The Logger is built with the options and should be used for all diagnostic output.
	Logger *log.Logger
}

PodDiagnosticsOptions holds values received from environment variables for the command to operate.

func (PodDiagnosticsOptions) BuildAndRunDiagnostics

func (o PodDiagnosticsOptions) BuildAndRunDiagnostics() (bool, error, int, int)

BuildAndRunDiagnostics builds diagnostics based on the options and executes them, returning a summary.

func (*PodDiagnosticsOptions) Complete

func (o *PodDiagnosticsOptions) Complete(args []string) error

Complete fills in PodDiagnosticsOptions needed if the command is actually invoked.

Directories

Path Synopsis
diagnostics
log
pod

Jump to

Keyboard shortcuts

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