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
- func NewCmdDiagnostics(name string, fullName string, out io.Writer) *cobra.Command
- func NewCmdDiagnosticsAll(name string, fullName string, out io.Writer, available types.DiagnosticList) *cobra.Command
- func NewCmdDiagnosticsIndividual(name string, fullName string, out io.Writer, diagnostic types.Diagnostic) *cobra.Command
- func NewCommandNetworkPodDiagnostics(name string, out io.Writer) *cobra.Command
- func NewCommandPodDiagnostics(name string, out io.Writer) *cobra.Command
- type DiagnosticsOptions
- type NetworkPodDiagnosticsOptions
- type PodDiagnosticsOptions
Constants ¶
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" )
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 ¶
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 ¶
NewCommandNetworkPodDiagnostics is the command for running network 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.