Documentation ¶
Index ¶
- Constants
- Variables
- func CreateCollector(ctx context.Context, client *kubernetes.Clientset, scheme *runtime.Scheme, ...) (*corev1.ConfigMap, *corev1.Pod, error)
- func DedupCollectors(allCollectors []*troubleshootv1beta2.Collect) []*troubleshootv1beta2.Collect
- func DeterministicIDForCollector(collector *troubleshootv1beta2.Collect) string
- func EnsureClusterResourcesFirst(list []*troubleshootv1beta2.Collect) []*troubleshootv1beta2.Collect
- func EnsureCollectorInList(list []*troubleshootv1beta2.Collect, collector troubleshootv1beta2.Collect) []*troubleshootv1beta2.Collect
- func GetCephCollectorFilepath(name, namespace string) string
- func GetCollector(collector *troubleshootv1beta2.Collect, bundlePath string, namespace string, ...) (interface{}, bool)
- func GetConfigMapErrorsFileName(configMapCollector *troubleshootv1beta2.ConfigMap) string
- func GetConfigMapFileName(configMapCollector *troubleshootv1beta2.ConfigMap, name string) string
- func GetContainerLogs(ctx context.Context, client kubernetes.Interface, namespace string, ...) (string, error)
- func GetLonghornBackingImageManagersDirectory(namespace string) string
- func GetLonghornBackingImagesDirectory(namespace string) string
- func GetLonghornEngineImagesDirectory(namespace string) string
- func GetLonghornEnginesDirectory(namespace string) string
- func GetLonghornInstanceManagersDirectory(namespace string) string
- func GetLonghornLogsDirectory(namespace string) string
- func GetLonghornNodesDirectory(namespace string) string
- func GetLonghornReplicaChecksum(clientConfig *rest.Config, replica longhornv1beta1types.Replica, ...) (string, error)
- func GetLonghornReplicasDirectory(namespace string) string
- func GetLonghornSettingsFile(namespace string) string
- func GetLonghornShareManagersDirectory(namespace string) string
- func GetLonghornVolumesDirectory(namespace string) string
- func GetSecretErrorsFileName(secretCollector *troubleshootv1beta2.Secret) string
- func GetSecretFileName(secretCollector *troubleshootv1beta2.Secret, name string) string
- func IsRBACError(err error) bool
- func ListInstanceManagerReplicaPods(ctx context.Context, clientConfig *rest.Config, namespace string) (map[string]string, error)
- func ParseCollectorFromDoc(doc []byte) (*troubleshootv1beta2.Collector, error)
- func ParseHostCollectorFromDoc(doc []byte) (*troubleshootv1beta2.HostCollector, error)
- func ParseRemoteCollectorFromDoc(doc []byte) (*troubleshootv1beta2.RemoteCollector, error)
- func ParseReplicaChecksum(data []byte) (map[string]string, error)
- func RedactResult(bundlePath string, input CollectorResult, ...) error
- func RunPodLogs(ctx context.Context, client v1.CoreV1Interface, podSpec *corev1.Pod) ([]byte, error)
- func RunPodsReadyNodes(ctx context.Context, client v1.CoreV1Interface, opts RunPodOptions) (map[string][]byte, error)
- func TarSupportBundleDir(bundlePath string, input CollectorResult, outputFilename string) error
- func WaitForPodCompleted(ctx context.Context, client kubernetes.Interface, namespace string, ...) error
- func WaitForPodCondition(ctx context.Context, client kubernetes.Interface, namespace string, ...) error
- type BlockDeviceInfo
- type CPUInfo
- type CephCommand
- type CertCollection
- type CertificateSource
- type ClusterVersion
- type CollectCeph
- type CollectCertificates
- type CollectClusterInfo
- type CollectClusterResources
- type CollectCollectd
- type CollectConfigMap
- type CollectCopy
- type CollectCopyFromHost
- type CollectData
- type CollectExec
- type CollectGoldpinger
- type CollectHTTP
- type CollectHelm
- type CollectHostBlockDevices
- type CollectHostCPU
- type CollectHostCertificate
- type CollectHostCertificatesCollection
- type CollectHostCopy
- type CollectHostDiskUsage
- type CollectHostFilesystemPerformance
- type CollectHostHTTP
- type CollectHostHTTPLoadBalancer
- type CollectHostIPV4Interfaces
- type CollectHostKernelModules
- type CollectHostMemory
- type CollectHostOS
- type CollectHostRun
- type CollectHostServices
- type CollectHostSubnetAvailable
- type CollectHostSystemPackages
- type CollectHostTCPConnect
- type CollectHostTCPLoadBalancer
- type CollectHostTCPPortStatus
- type CollectHostTime
- type CollectHostUDPPortStatus
- type CollectLogs
- func (c *CollectLogs) Collect(progressChan chan<- interface{}) (CollectorResult, error)
- func (c *CollectLogs) CollectWithClient(progressChan chan<- interface{}, client kubernetes.Interface) (CollectorResult, error)
- func (c *CollectLogs) IsExcluded() (bool, error)
- func (c *CollectLogs) Title() string
- type CollectLonghorn
- type CollectMetrics
- type CollectMssql
- type CollectMysql
- type CollectPostgres
- type CollectProgress
- type CollectRedis
- type CollectRegistry
- type CollectRun
- type CollectRunPod
- type CollectSecret
- type CollectSysctl
- type Collector
- type CollectorResult
- func (r CollectorResult) AddResult(other CollectorResult)
- func (r CollectorResult) ArchiveSupportBundle(bundlePath string, outputFilename string) error
- func (r CollectorResult) CloseWriter(bundlePath string, relativePath string, writer interface{}) error
- func (r CollectorResult) GetReader(bundlePath string, relativePath string) (io.ReadCloser, error)
- func (r CollectorResult) GetWriter(bundlePath string, relativePath string) (io.Writer, error)
- func (r CollectorResult) ReplaceResult(bundlePath string, relativePath string, reader io.Reader) error
- func (r CollectorResult) SaveResult(bundlePath string, relativePath string, reader io.Reader) error
- func (r CollectorResult) SaveResults(bundlePath, relativePath, targetDir string) error
- func (r CollectorResult) SymLinkResult(bundlePath, relativeLinkPath, relativeFilePath string) error
- type CollectorRunOpts
- type ConfigMapOutput
- type DatabaseConnection
- type DiskUsageInfo
- type Durations
- type FSPerfResults
- type FioDepth
- type FioDiskUtil
- type FioGlobalOptions
- type FioJobOptions
- type FioJobs
- type FioLatency
- type FioNS
- type FioPercentile
- type FioResult
- type FioStats
- type HTTPError
- type HTTPResponse
- type HostCertificatesCollection
- type HostCollectResult
- type HostCollector
- type HostOSInfo
- type HostRunInfo
- type ImageRunner
- type KernelModuleInfo
- type KernelModuleStatus
- type MemoryInfo
- type MergeableCollector
- type NTPStatus
- type NetworkStatus
- type NetworkStatusResult
- type ParsedCertificate
- type PodSpecRunner
- type RBACError
- type RBACErrors
- type RegistryImage
- type RegistryInfo
- type ReleaseInfo
- type RemoteCollectResult
- type RemoteCollector
- func (c *RemoteCollector) CheckRBAC(ctx context.Context) error
- func (c *RemoteCollector) GetDisplayName() string
- func (c *RemoteCollector) IsExcluded() bool
- func (c *RemoteCollector) RunCollectorSync(globalRedactors []*troubleshootv1beta2.Redact) (CollectorResult, error)
- func (c *RemoteCollector) RunRemote(ctx context.Context, runner runner, nodes []string, ...) (map[string][]byte, error)
- type RemoteCollectors
- type RunPodOptions
- type SecretOutput
- type ServiceInfo
- type SubnetAvailableResult
- type SubnetStatus
- type SystemPackage
- type SystemPackagesInfo
- type TimeInfo
- type VersionInfo
Constants ¶
const ( KernelModuleUnknown = "unknown" KernelModuleLoaded = "loaded" KernelModuleLoadable = "loadable" KernelModuleLoading = "loading" KernelModuleUnloading = "unloading" )
const ( NetworkStatusAddressInUse = "address-in-use" NetworkStatusConnectionRefused = "connection-refused" NetworkStatusConnectionTimeout = "connection-timeout" NetworkStatusConnected = "connected" NetworkStatusErrorOther = "error" NetworkStatusBindPermissionDenied = "bind-permission-denied" NetworkStatusInvalidAddress = "invalid-address" )
const ( SubnetStatusAvailable = "a-subnet-is-available" SubnetStatusNoneAvailable = "no-subnet-available" )
const CertInvalid = "cert-invalid"
const CertMissing = "cert-missing"
const CertValid = "cert-valid"
const (
DefaultCephNamespace = "rook-ceph"
)
const (
DefaultLonghornNamespace = "longhorn-system"
)
const HostBlockDevicesPath = `host-collectors/system/block_devices.json`
const HostCPUPath = `host-collectors/system/cpu.json`
const HostIPV4InterfacesPath = `host-collectors/system/ipv4Interfaces.json`
const HostKernelModulesPath = `host-collectors/system/kernel_modules.json`
const HostMemoryPath = `host-collectors/system/memory.json`
const HostOSInfoPath = `host-collectors/system/hostos_info.json`
const HostServicesPath = `host-collectors/system/systemctl_services.json`
const HostTimePath = `host-collectors/system/time.json`
const KeyPairEncrypted = "key-pair-encrypted"
const KeyPairInvalid = "key-pair-invalid"
const KeyPairMismatch = "key-pair-mismatch"
const KeyPairMissing = "key-pair-missing"
const KeyPairSwitched = "key-pair-switched"
const KeyPairValid = "key-pair-valid"
const MAX_CONCURRENT_REDACTORS = 10
Max number of concurrent redactors to run Ensure the number is low enough since each of the redactors also spawns goroutines to redact files in tar archives and other goroutines for each redactor spec.
Variables ¶
var ( // ErrCollectorNotFound is returned when an undefined host collector is // specified by the user. ErrHostCollectorNotFound = errors.New("unrecognized host collector") ErrInsufficientPermissionsToRun = errors.New("insufficient permissions to run all collectors") )
var CephCommands = []CephCommand{ { ID: "status", Command: []string{"ceph", "status"}, Args: []string{"-f", "json-pretty"}, Format: "json", DefaultTimeout: "30s", }, { ID: "fs", Command: []string{"ceph", "fs", "status"}, Args: []string{"-f", "json-pretty"}, Format: "json", DefaultTimeout: "30s", }, { ID: "fs-ls", Command: []string{"ceph", "fs", "ls"}, Args: []string{"-f", "json-pretty"}, Format: "json", DefaultTimeout: "30s", }, { ID: "osd-status", Command: []string{"ceph", "osd", "status"}, Args: []string{"-f", "json-pretty"}, Format: "txt", DefaultTimeout: "30s", }, { ID: "osd-tree", Command: []string{"ceph", "osd", "tree"}, Args: []string{"-f", "json-pretty"}, Format: "json", DefaultTimeout: "30s", }, { ID: "osd-pool", Command: []string{"ceph", "osd", "pool", "ls", "detail"}, Args: []string{"-f", "json-pretty"}, Format: "json", DefaultTimeout: "30s", }, { ID: "health", Command: []string{"ceph", "health", "detail"}, Args: []string{"-f", "json-pretty"}, Format: "json", DefaultTimeout: "30s", }, { ID: "auth", Command: []string{"ceph", "auth", "ls"}, Args: []string{"-f", "json-pretty"}, Format: "json", DefaultTimeout: "30s", }, { ID: "rgw-stats", Command: []string{"radosgw-admin", "bucket", "stats"}, Args: []string{"--rgw-cache-enabled=false"}, Format: "txt", DefaultTimeout: "30s", }, { ID: "rbd-du", Command: []string{"rbd", "du"}, Args: []string{"--pool=replicapool"}, Format: "txt", DefaultTimeout: "30s", }, { ID: "df", Command: []string{"ceph", "df"}, Args: []string{"-f", "json-pretty"}, Format: "json", DefaultTimeout: "30s", }, { ID: "osd-df", Command: []string{"ceph", "osd", "df"}, Args: []string{"-f", "json-pretty"}, Format: "json", DefaultTimeout: "30s", }, }
Functions ¶
func CreateCollector ¶
func CreateCollector(ctx context.Context, client *kubernetes.Clientset, scheme *runtime.Scheme, ownerRef metav1.Object, name string, namespace string, nodeName string, serviceAccountName string, jobType string, collect *troubleshootv1beta2.HostCollect, image string, pullPolicy string) (*corev1.ConfigMap, *corev1.Pod, error)
func DedupCollectors ¶ added in v0.56.0
func DedupCollectors(allCollectors []*troubleshootv1beta2.Collect) []*troubleshootv1beta2.Collect
deduplicates a list of troubleshootv1beta2.Collect objects marshals object to json and then uses its string value to check for uniqueness there is no sorting of the keys in the collect object's spec so if the spec isn't an exact match line for line as written, no dedup will occur
func DeterministicIDForCollector ¶
func DeterministicIDForCollector(collector *troubleshootv1beta2.Collect) string
func EnsureClusterResourcesFirst ¶ added in v0.46.0
func EnsureClusterResourcesFirst(list []*troubleshootv1beta2.Collect) []*troubleshootv1beta2.Collect
collect ClusterResources earliest in the list so the pod list does not include pods started by collectors
func EnsureCollectorInList ¶ added in v0.46.0
func EnsureCollectorInList(list []*troubleshootv1beta2.Collect, collector troubleshootv1beta2.Collect) []*troubleshootv1beta2.Collect
Ensure that the specified collector is in the list of collectors
func GetCephCollectorFilepath ¶ added in v0.9.50
func GetCollector ¶ added in v0.44.0
func GetConfigMapErrorsFileName ¶ added in v0.13.3
func GetConfigMapErrorsFileName(configMapCollector *troubleshootv1beta2.ConfigMap) string
func GetConfigMapFileName ¶ added in v0.13.3
func GetConfigMapFileName(configMapCollector *troubleshootv1beta2.ConfigMap, name string) string
func GetContainerLogs ¶ added in v0.15.0
func GetLonghornBackingImageManagersDirectory ¶ added in v0.11.0
func GetLonghornBackingImagesDirectory ¶ added in v0.11.0
func GetLonghornEngineImagesDirectory ¶ added in v0.11.0
func GetLonghornEnginesDirectory ¶ added in v0.11.0
func GetLonghornInstanceManagersDirectory ¶ added in v0.11.0
func GetLonghornLogsDirectory ¶ added in v0.11.0
func GetLonghornNodesDirectory ¶ added in v0.11.0
func GetLonghornReplicaChecksum ¶ added in v0.12.0
func GetLonghornReplicasDirectory ¶ added in v0.11.0
func GetLonghornSettingsFile ¶ added in v0.11.0
func GetLonghornShareManagersDirectory ¶ added in v0.11.0
func GetLonghornVolumesDirectory ¶ added in v0.11.0
func GetSecretErrorsFileName ¶ added in v0.13.3
func GetSecretErrorsFileName(secretCollector *troubleshootv1beta2.Secret) string
func GetSecretFileName ¶ added in v0.13.3
func GetSecretFileName(secretCollector *troubleshootv1beta2.Secret, name string) string
func IsRBACError ¶ added in v0.9.15
func ListInstanceManagerReplicaPods ¶ added in v0.12.0
func ListInstanceManagerReplicaPods(ctx context.Context, clientConfig *rest.Config, namespace string) (map[string]string, error)
Returns a map of nodeName:podName
func ParseCollectorFromDoc ¶ added in v0.15.0
func ParseCollectorFromDoc(doc []byte) (*troubleshootv1beta2.Collector, error)
func ParseHostCollectorFromDoc ¶ added in v0.15.0
func ParseHostCollectorFromDoc(doc []byte) (*troubleshootv1beta2.HostCollector, error)
func ParseRemoteCollectorFromDoc ¶ added in v0.15.0
func ParseRemoteCollectorFromDoc(doc []byte) (*troubleshootv1beta2.RemoteCollector, error)
func ParseReplicaChecksum ¶ added in v0.12.0
func RedactResult ¶ added in v0.38.0
func RedactResult(bundlePath string, input CollectorResult, additionalRedactors []*troubleshootv1beta2.Redact) error
func RunPodLogs ¶ added in v0.14.0
func RunPodLogs(ctx context.Context, client v1.CoreV1Interface, podSpec *corev1.Pod) ([]byte, error)
RunPodLogs runs a pod to completion on a node and returns its logs
func RunPodsReadyNodes ¶ added in v0.14.0
func RunPodsReadyNodes(ctx context.Context, client v1.CoreV1Interface, opts RunPodOptions) (map[string][]byte, error)
func TarSupportBundleDir ¶ added in v0.13.15
func TarSupportBundleDir(bundlePath string, input CollectorResult, outputFilename string) error
TarSupportBundleDir wraps ArchiveSupportBundle for backwards compatibility Deprecated: Remove in a future version (v1.0)
Types ¶
type BlockDeviceInfo ¶ added in v0.10.2
type BlockDeviceInfo struct { Name string `json:"name"` KernelName string `json:"kernel_name"` ParentKernelName string `json:"parent_kernel_name"` Type string `json:"type"` Major int `json:"major"` Minor int `json:"minor"` Size uint64 `json:"size"` FilesystemType string `json:"filesystem_type"` Mountpoint string `json:"mountpoint"` Serial string `json:"serial"` ReadOnly bool `json:"read_only"` Removable bool `json:"removable"` }
type CephCommand ¶ added in v0.9.50
type CertCollection ¶ added in v0.62.0
type CertCollection struct { Source *CertificateSource `json:"source"` Errors []string `json:"errors,omitempty"` CertificateChain []ParsedCertificate `json:"certificateChain,omitempty"` }
Certificate collection struct
type CertificateSource ¶ added in v0.62.0
type CertificateSource struct { SecretName string `json:"secret,omitempty"` ConfigMapName string `json:"configMap,omitempty"` Namespace string `json:"namespace,omitempty"` }
Certificate source
type ClusterVersion ¶
type CollectCeph ¶ added in v0.44.0
type CollectCeph struct { Collector *troubleshootv1beta2.Ceph BundlePath string Namespace string ClientConfig *rest.Config Client kubernetes.Interface Context context.Context RBACErrors }
func (*CollectCeph) Collect ¶ added in v0.44.0
func (c *CollectCeph) Collect(progressChan chan<- interface{}) (CollectorResult, error)
func (*CollectCeph) IsExcluded ¶ added in v0.44.0
func (c *CollectCeph) IsExcluded() (bool, error)
func (*CollectCeph) Title ¶ added in v0.44.0
func (c *CollectCeph) Title() string
type CollectCertificates ¶ added in v0.62.0
type CollectCertificates struct { Collector *troubleshootv1beta2.Certificates BundlePath string Namespace string ClientConfig *rest.Config Client kubernetes.Interface Context context.Context RBACErrors }
func (*CollectCertificates) Collect ¶ added in v0.62.0
func (c *CollectCertificates) Collect(progressChan chan<- interface{}) (CollectorResult, error)
func (*CollectCertificates) IsExcluded ¶ added in v0.62.0
func (c *CollectCertificates) IsExcluded() (bool, error)
func (*CollectCertificates) Title ¶ added in v0.62.0
func (c *CollectCertificates) Title() string
type CollectClusterInfo ¶ added in v0.44.0
type CollectClusterInfo struct { Collector *troubleshootv1beta2.ClusterInfo BundlePath string Namespace string ClientConfig *rest.Config RBACErrors }
func (*CollectClusterInfo) Collect ¶ added in v0.44.0
func (c *CollectClusterInfo) Collect(progressChan chan<- interface{}) (CollectorResult, error)
func (*CollectClusterInfo) IsExcluded ¶ added in v0.44.0
func (c *CollectClusterInfo) IsExcluded() (bool, error)
func (*CollectClusterInfo) Title ¶ added in v0.44.0
func (c *CollectClusterInfo) Title() string
type CollectClusterResources ¶ added in v0.44.0
type CollectClusterResources struct { Collector *troubleshootv1beta2.ClusterResources BundlePath string Namespace string ClientConfig *rest.Config RBACErrors }
func (*CollectClusterResources) Collect ¶ added in v0.44.0
func (c *CollectClusterResources) Collect(progressChan chan<- interface{}) (CollectorResult, error)
func (*CollectClusterResources) IsExcluded ¶ added in v0.44.0
func (c *CollectClusterResources) IsExcluded() (bool, error)
func (*CollectClusterResources) Merge ¶ added in v0.44.0
func (c *CollectClusterResources) Merge(allCollectors []Collector) ([]Collector, error)
func (*CollectClusterResources) Title ¶ added in v0.44.0
func (c *CollectClusterResources) Title() string
type CollectCollectd ¶ added in v0.44.0
type CollectCollectd struct { Collector *troubleshootv1beta2.Collectd BundlePath string Namespace string ClientConfig *rest.Config Client kubernetes.Interface Context context.Context RBACErrors }
func (*CollectCollectd) Collect ¶ added in v0.44.0
func (c *CollectCollectd) Collect(progressChan chan<- interface{}) (CollectorResult, error)
func (*CollectCollectd) IsExcluded ¶ added in v0.44.0
func (c *CollectCollectd) IsExcluded() (bool, error)
func (*CollectCollectd) Title ¶ added in v0.44.0
func (c *CollectCollectd) Title() string
type CollectConfigMap ¶ added in v0.44.0
type CollectConfigMap struct { Collector *troubleshootv1beta2.ConfigMap BundlePath string Namespace string ClientConfig *rest.Config Client kubernetes.Interface Context context.Context RBACErrors }
func (*CollectConfigMap) Collect ¶ added in v0.44.0
func (c *CollectConfigMap) Collect(progressChan chan<- interface{}) (CollectorResult, error)
func (*CollectConfigMap) IsExcluded ¶ added in v0.44.0
func (c *CollectConfigMap) IsExcluded() (bool, error)
func (*CollectConfigMap) Title ¶ added in v0.44.0
func (c *CollectConfigMap) Title() string
type CollectCopy ¶ added in v0.44.0
type CollectCopy struct { Collector *troubleshootv1beta2.Copy BundlePath string Namespace string ClientConfig *rest.Config Client kubernetes.Interface Context context.Context RBACErrors }
func (*CollectCopy) Collect ¶ added in v0.44.0
func (c *CollectCopy) Collect(progressChan chan<- interface{}) (CollectorResult, error)
Copy function gets a file or folder from a container specified in the specs.
func (*CollectCopy) IsExcluded ¶ added in v0.44.0
func (c *CollectCopy) IsExcluded() (bool, error)
func (*CollectCopy) Title ¶ added in v0.44.0
func (c *CollectCopy) Title() string
type CollectCopyFromHost ¶ added in v0.44.0
type CollectCopyFromHost struct { Collector *troubleshootv1beta2.CopyFromHost BundlePath string Namespace string ClientConfig *rest.Config Client kubernetes.Interface Context context.Context RetryFailedMount bool RBACErrors }
func (*CollectCopyFromHost) Collect ¶ added in v0.44.0
func (c *CollectCopyFromHost) Collect(progressChan chan<- interface{}) (CollectorResult, error)
copies a file or directory from a host or hosts to include in the bundle.
func (*CollectCopyFromHost) IsExcluded ¶ added in v0.44.0
func (c *CollectCopyFromHost) IsExcluded() (bool, error)
func (*CollectCopyFromHost) Title ¶ added in v0.44.0
func (c *CollectCopyFromHost) Title() string
type CollectData ¶ added in v0.44.0
type CollectData struct { Collector *troubleshootv1beta2.Data BundlePath string Namespace string ClientConfig *rest.Config Client kubernetes.Interface Context context.Context RBACErrors }
func (*CollectData) Collect ¶ added in v0.44.0
func (c *CollectData) Collect(progressChan chan<- interface{}) (CollectorResult, error)
func (*CollectData) IsExcluded ¶ added in v0.44.0
func (c *CollectData) IsExcluded() (bool, error)
func (*CollectData) Title ¶ added in v0.44.0
func (c *CollectData) Title() string
type CollectExec ¶ added in v0.44.0
type CollectExec struct { Collector *troubleshootv1beta2.Exec BundlePath string Namespace string ClientConfig *rest.Config Client kubernetes.Interface Context context.Context RBACErrors }
func (*CollectExec) Collect ¶ added in v0.44.0
func (c *CollectExec) Collect(progressChan chan<- interface{}) (CollectorResult, error)
func (*CollectExec) IsExcluded ¶ added in v0.44.0
func (c *CollectExec) IsExcluded() (bool, error)
func (*CollectExec) Title ¶ added in v0.44.0
func (c *CollectExec) Title() string
type CollectGoldpinger ¶ added in v0.79.0
type CollectGoldpinger struct { Collector *troubleshootv1beta2.Goldpinger BundlePath string Namespace string ClientConfig *rest.Config Client kubernetes.Interface Context context.Context RBACErrors }
Collect goldpinger results from goldpinger service running in a cluster The results are stored in goldpinger/check_all.json since we use the /check_all endpoint
func (*CollectGoldpinger) Collect ¶ added in v0.79.0
func (c *CollectGoldpinger) Collect(progressChan chan<- interface{}) (CollectorResult, error)
func (*CollectGoldpinger) IsExcluded ¶ added in v0.79.0
func (c *CollectGoldpinger) IsExcluded() (bool, error)
func (*CollectGoldpinger) Title ¶ added in v0.79.0
func (c *CollectGoldpinger) Title() string
type CollectHTTP ¶ added in v0.44.0
type CollectHTTP struct { Collector *troubleshootv1beta2.HTTP BundlePath string Namespace string ClientConfig *rest.Config Client kubernetes.Interface RBACErrors }
func (*CollectHTTP) Collect ¶ added in v0.44.0
func (c *CollectHTTP) Collect(progressChan chan<- interface{}) (CollectorResult, error)
func (*CollectHTTP) IsExcluded ¶ added in v0.44.0
func (c *CollectHTTP) IsExcluded() (bool, error)
func (*CollectHTTP) Title ¶ added in v0.44.0
func (c *CollectHTTP) Title() string
type CollectHelm ¶ added in v0.71.1
type CollectHelm struct { Collector *troubleshootv1beta2.Helm BundlePath string Namespace string ClientConfig *rest.Config Client kubernetes.Interface Context context.Context RBACErrors }
func (*CollectHelm) Collect ¶ added in v0.71.1
func (c *CollectHelm) Collect(progressChan chan<- interface{}) (CollectorResult, error)
func (*CollectHelm) IsExcluded ¶ added in v0.71.1
func (c *CollectHelm) IsExcluded() (bool, error)
func (*CollectHelm) Title ¶ added in v0.71.1
func (c *CollectHelm) Title() string
type CollectHostBlockDevices ¶ added in v0.10.8
type CollectHostBlockDevices struct { BundlePath string // contains filtered or unexported fields }
func (*CollectHostBlockDevices) Collect ¶ added in v0.10.8
func (c *CollectHostBlockDevices) Collect(progressChan chan<- interface{}) (map[string][]byte, error)
func (*CollectHostBlockDevices) IsExcluded ¶ added in v0.10.8
func (c *CollectHostBlockDevices) IsExcluded() (bool, error)
func (*CollectHostBlockDevices) Title ¶ added in v0.10.8
func (c *CollectHostBlockDevices) Title() string
type CollectHostCPU ¶ added in v0.10.8
type CollectHostCPU struct { BundlePath string // contains filtered or unexported fields }
func (*CollectHostCPU) Collect ¶ added in v0.10.8
func (c *CollectHostCPU) Collect(progressChan chan<- interface{}) (map[string][]byte, error)
func (*CollectHostCPU) IsExcluded ¶ added in v0.10.8
func (c *CollectHostCPU) IsExcluded() (bool, error)
func (*CollectHostCPU) Title ¶ added in v0.10.8
func (c *CollectHostCPU) Title() string
type CollectHostCertificate ¶ added in v0.10.8
type CollectHostCertificate struct { BundlePath string // contains filtered or unexported fields }
func (*CollectHostCertificate) Collect ¶ added in v0.10.8
func (c *CollectHostCertificate) Collect(progressChan chan<- interface{}) (map[string][]byte, error)
func (*CollectHostCertificate) IsExcluded ¶ added in v0.10.8
func (c *CollectHostCertificate) IsExcluded() (bool, error)
func (*CollectHostCertificate) Title ¶ added in v0.10.8
func (c *CollectHostCertificate) Title() string
type CollectHostCertificatesCollection ¶ added in v0.70.0
type CollectHostCertificatesCollection struct { BundlePath string // contains filtered or unexported fields }
func (*CollectHostCertificatesCollection) Collect ¶ added in v0.70.0
func (c *CollectHostCertificatesCollection) Collect(progressChan chan<- interface{}) (map[string][]byte, error)
func (*CollectHostCertificatesCollection) IsExcluded ¶ added in v0.70.0
func (c *CollectHostCertificatesCollection) IsExcluded() (bool, error)
func (*CollectHostCertificatesCollection) Title ¶ added in v0.70.0
func (c *CollectHostCertificatesCollection) Title() string
type CollectHostCopy ¶ added in v0.61.0
type CollectHostCopy struct { BundlePath string // contains filtered or unexported fields }
func (*CollectHostCopy) Collect ¶ added in v0.61.0
func (c *CollectHostCopy) Collect(progressChan chan<- interface{}) (map[string][]byte, error)
func (*CollectHostCopy) IsExcluded ¶ added in v0.61.0
func (c *CollectHostCopy) IsExcluded() (bool, error)
func (*CollectHostCopy) Title ¶ added in v0.61.0
func (c *CollectHostCopy) Title() string
type CollectHostDiskUsage ¶ added in v0.10.8
type CollectHostDiskUsage struct { BundlePath string // contains filtered or unexported fields }
func (*CollectHostDiskUsage) Collect ¶ added in v0.10.8
func (c *CollectHostDiskUsage) Collect(progressChan chan<- interface{}) (map[string][]byte, error)
func (*CollectHostDiskUsage) IsExcluded ¶ added in v0.10.8
func (c *CollectHostDiskUsage) IsExcluded() (bool, error)
func (*CollectHostDiskUsage) Title ¶ added in v0.10.8
func (c *CollectHostDiskUsage) Title() string
type CollectHostFilesystemPerformance ¶ added in v0.10.8
type CollectHostFilesystemPerformance struct { BundlePath string // contains filtered or unexported fields }
func (*CollectHostFilesystemPerformance) Collect ¶ added in v0.10.8
func (c *CollectHostFilesystemPerformance) Collect(progressChan chan<- interface{}) (map[string][]byte, error)
func (*CollectHostFilesystemPerformance) IsExcluded ¶ added in v0.10.8
func (c *CollectHostFilesystemPerformance) IsExcluded() (bool, error)
func (*CollectHostFilesystemPerformance) Title ¶ added in v0.10.8
func (c *CollectHostFilesystemPerformance) Title() string
type CollectHostHTTP ¶ added in v0.10.8
type CollectHostHTTP struct { BundlePath string // contains filtered or unexported fields }
func (*CollectHostHTTP) Collect ¶ added in v0.10.8
func (c *CollectHostHTTP) Collect(progressChan chan<- interface{}) (map[string][]byte, error)
func (*CollectHostHTTP) IsExcluded ¶ added in v0.10.8
func (c *CollectHostHTTP) IsExcluded() (bool, error)
func (*CollectHostHTTP) Title ¶ added in v0.10.8
func (c *CollectHostHTTP) Title() string
type CollectHostHTTPLoadBalancer ¶ added in v0.10.8
type CollectHostHTTPLoadBalancer struct { BundlePath string // contains filtered or unexported fields }
func (*CollectHostHTTPLoadBalancer) Collect ¶ added in v0.10.8
func (c *CollectHostHTTPLoadBalancer) Collect(progressChan chan<- interface{}) (map[string][]byte, error)
func (*CollectHostHTTPLoadBalancer) IsExcluded ¶ added in v0.10.8
func (c *CollectHostHTTPLoadBalancer) IsExcluded() (bool, error)
func (*CollectHostHTTPLoadBalancer) Title ¶ added in v0.10.8
func (c *CollectHostHTTPLoadBalancer) Title() string
type CollectHostIPV4Interfaces ¶ added in v0.10.8
type CollectHostIPV4Interfaces struct { BundlePath string // contains filtered or unexported fields }
func (*CollectHostIPV4Interfaces) Collect ¶ added in v0.10.8
func (c *CollectHostIPV4Interfaces) Collect(progressChan chan<- interface{}) (map[string][]byte, error)
func (*CollectHostIPV4Interfaces) IsExcluded ¶ added in v0.10.8
func (c *CollectHostIPV4Interfaces) IsExcluded() (bool, error)
func (*CollectHostIPV4Interfaces) Title ¶ added in v0.10.8
func (c *CollectHostIPV4Interfaces) Title() string
type CollectHostKernelModules ¶ added in v0.15.0
type CollectHostKernelModules struct { BundlePath string // contains filtered or unexported fields }
CollectHostKernelModules is responsible for collecting kernel module status from the host.
func (*CollectHostKernelModules) Collect ¶ added in v0.15.0
func (c *CollectHostKernelModules) Collect(progressChan chan<- interface{}) (map[string][]byte, error)
Collect the kernel module status from the host. Modules are returned as a map keyed on the module name used by the kernel, e.g:
{ "system/kernel_modules.json": { ... "dm_snapshot": { "instances": 8, "size": 45056, "status": "loaded" }, ... }, }
Module status may be: loaded, loadable, loading, unloading or unknown. When a module is loaded, it may have one or more instances. The size represents the amount of memory (in bytes) that the module is using.
func (*CollectHostKernelModules) IsExcluded ¶ added in v0.15.0
func (c *CollectHostKernelModules) IsExcluded() (bool, error)
IsExcluded returns true if the collector has been excluded from the results.
func (*CollectHostKernelModules) Title ¶ added in v0.15.0
func (c *CollectHostKernelModules) Title() string
Title is the name of the collector.
type CollectHostMemory ¶ added in v0.10.8
type CollectHostMemory struct { BundlePath string // contains filtered or unexported fields }
func (*CollectHostMemory) Collect ¶ added in v0.10.8
func (c *CollectHostMemory) Collect(progressChan chan<- interface{}) (map[string][]byte, error)
func (*CollectHostMemory) IsExcluded ¶ added in v0.10.8
func (c *CollectHostMemory) IsExcluded() (bool, error)
func (*CollectHostMemory) Title ¶ added in v0.10.8
func (c *CollectHostMemory) Title() string
type CollectHostOS ¶ added in v0.16.0
type CollectHostOS struct { BundlePath string // contains filtered or unexported fields }
func (*CollectHostOS) Collect ¶ added in v0.16.0
func (c *CollectHostOS) Collect(progressChan chan<- interface{}) (map[string][]byte, error)
func (*CollectHostOS) IsExcluded ¶ added in v0.16.0
func (c *CollectHostOS) IsExcluded() (bool, error)
func (*CollectHostOS) Title ¶ added in v0.16.0
func (c *CollectHostOS) Title() string
type CollectHostRun ¶ added in v0.37.0
type CollectHostRun struct { BundlePath string // contains filtered or unexported fields }
func (*CollectHostRun) Collect ¶ added in v0.37.0
func (c *CollectHostRun) Collect(progressChan chan<- interface{}) (map[string][]byte, error)
func (*CollectHostRun) IsExcluded ¶ added in v0.37.0
func (c *CollectHostRun) IsExcluded() (bool, error)
func (*CollectHostRun) Title ¶ added in v0.37.0
func (c *CollectHostRun) Title() string
type CollectHostServices ¶ added in v0.10.15
type CollectHostServices struct { BundlePath string // contains filtered or unexported fields }
func (*CollectHostServices) Collect ¶ added in v0.10.15
func (c *CollectHostServices) Collect(progressChan chan<- interface{}) (map[string][]byte, error)
func (*CollectHostServices) IsExcluded ¶ added in v0.10.15
func (c *CollectHostServices) IsExcluded() (bool, error)
func (*CollectHostServices) Title ¶ added in v0.10.15
func (c *CollectHostServices) Title() string
type CollectHostSubnetAvailable ¶ added in v0.59.0
type CollectHostSubnetAvailable struct { BundlePath string // contains filtered or unexported fields }
func (*CollectHostSubnetAvailable) Collect ¶ added in v0.59.0
func (c *CollectHostSubnetAvailable) Collect(progressChan chan<- interface{}) (map[string][]byte, error)
func (*CollectHostSubnetAvailable) IsExcluded ¶ added in v0.59.0
func (c *CollectHostSubnetAvailable) IsExcluded() (bool, error)
func (*CollectHostSubnetAvailable) Title ¶ added in v0.59.0
func (c *CollectHostSubnetAvailable) Title() string
type CollectHostSystemPackages ¶ added in v0.24.0
type CollectHostSystemPackages struct { BundlePath string // contains filtered or unexported fields }
func (*CollectHostSystemPackages) Collect ¶ added in v0.24.0
func (c *CollectHostSystemPackages) Collect(progressChan chan<- interface{}) (map[string][]byte, error)
func (*CollectHostSystemPackages) IsExcluded ¶ added in v0.24.0
func (c *CollectHostSystemPackages) IsExcluded() (bool, error)
func (*CollectHostSystemPackages) Title ¶ added in v0.24.0
func (c *CollectHostSystemPackages) Title() string
type CollectHostTCPConnect ¶ added in v0.10.8
type CollectHostTCPConnect struct { BundlePath string // contains filtered or unexported fields }
func (*CollectHostTCPConnect) Collect ¶ added in v0.10.8
func (c *CollectHostTCPConnect) Collect(progressChan chan<- interface{}) (map[string][]byte, error)
func (*CollectHostTCPConnect) IsExcluded ¶ added in v0.10.8
func (c *CollectHostTCPConnect) IsExcluded() (bool, error)
func (*CollectHostTCPConnect) Title ¶ added in v0.10.8
func (c *CollectHostTCPConnect) Title() string
type CollectHostTCPLoadBalancer ¶ added in v0.10.8
type CollectHostTCPLoadBalancer struct { BundlePath string // contains filtered or unexported fields }
func (*CollectHostTCPLoadBalancer) Collect ¶ added in v0.10.8
func (c *CollectHostTCPLoadBalancer) Collect(progressChan chan<- interface{}) (map[string][]byte, error)
func (*CollectHostTCPLoadBalancer) IsExcluded ¶ added in v0.10.8
func (c *CollectHostTCPLoadBalancer) IsExcluded() (bool, error)
func (*CollectHostTCPLoadBalancer) Title ¶ added in v0.10.8
func (c *CollectHostTCPLoadBalancer) Title() string
type CollectHostTCPPortStatus ¶ added in v0.10.8
type CollectHostTCPPortStatus struct { BundlePath string // contains filtered or unexported fields }
func (*CollectHostTCPPortStatus) Collect ¶ added in v0.10.8
func (c *CollectHostTCPPortStatus) Collect(progressChan chan<- interface{}) (map[string][]byte, error)
func (*CollectHostTCPPortStatus) IsExcluded ¶ added in v0.10.8
func (c *CollectHostTCPPortStatus) IsExcluded() (bool, error)
func (*CollectHostTCPPortStatus) Title ¶ added in v0.10.8
func (c *CollectHostTCPPortStatus) Title() string
type CollectHostTime ¶ added in v0.10.8
type CollectHostTime struct { BundlePath string // contains filtered or unexported fields }
func (*CollectHostTime) Collect ¶ added in v0.10.8
func (c *CollectHostTime) Collect(progressChan chan<- interface{}) (map[string][]byte, error)
func (*CollectHostTime) IsExcluded ¶ added in v0.10.8
func (c *CollectHostTime) IsExcluded() (bool, error)
func (*CollectHostTime) Title ¶ added in v0.10.8
func (c *CollectHostTime) Title() string
type CollectHostUDPPortStatus ¶ added in v0.55.0
type CollectHostUDPPortStatus struct { BundlePath string // contains filtered or unexported fields }
func (*CollectHostUDPPortStatus) Collect ¶ added in v0.55.0
func (c *CollectHostUDPPortStatus) Collect(progressChan chan<- interface{}) (map[string][]byte, error)
func (*CollectHostUDPPortStatus) IsExcluded ¶ added in v0.55.0
func (c *CollectHostUDPPortStatus) IsExcluded() (bool, error)
func (*CollectHostUDPPortStatus) Title ¶ added in v0.55.0
func (c *CollectHostUDPPortStatus) Title() string
type CollectLogs ¶ added in v0.44.0
type CollectLogs struct { Collector *troubleshootv1beta2.Logs BundlePath string Namespace string // TODO: There is a Namespace parameter in troubleshootv1beta2.Logs. Should we remove this? ClientConfig *rest.Config Client kubernetes.Interface Context context.Context SinceTime *time.Time RBACErrors }
func (*CollectLogs) Collect ¶ added in v0.44.0
func (c *CollectLogs) Collect(progressChan chan<- interface{}) (CollectorResult, error)
func (*CollectLogs) CollectWithClient ¶ added in v0.54.0
func (c *CollectLogs) CollectWithClient(progressChan chan<- interface{}, client kubernetes.Interface) (CollectorResult, error)
CollectWithClient is a helper function that allows passing in a kubernetes client It's a stopgap implementation before it's decided whether to either always use a single client for collectors or leave the implementation as is. Ref: https://github.com/replicatedhq/troubleshoot/pull/821#discussion_r1026258904
func (*CollectLogs) IsExcluded ¶ added in v0.44.0
func (c *CollectLogs) IsExcluded() (bool, error)
func (*CollectLogs) Title ¶ added in v0.44.0
func (c *CollectLogs) Title() string
type CollectLonghorn ¶ added in v0.44.0
type CollectLonghorn struct { Collector *troubleshootv1beta2.Longhorn BundlePath string Namespace string ClientConfig *rest.Config Client kubernetes.Interface Context context.Context RBACErrors }
func (*CollectLonghorn) Collect ¶ added in v0.44.0
func (c *CollectLonghorn) Collect(progressChan chan<- interface{}) (CollectorResult, error)
func (*CollectLonghorn) IsExcluded ¶ added in v0.44.0
func (c *CollectLonghorn) IsExcluded() (bool, error)
func (*CollectLonghorn) Title ¶ added in v0.44.0
func (c *CollectLonghorn) Title() string
type CollectMetrics ¶ added in v0.69.0
type CollectMetrics struct { Collector *troubleshootv1beta2.CustomMetrics BundlePath string ClientConfig *rest.Config Client kubernetes.Interface Context context.Context RBACErrors }
func (*CollectMetrics) Collect ¶ added in v0.69.0
func (c *CollectMetrics) Collect(progressChan chan<- interface{}) (CollectorResult, error)
func (*CollectMetrics) IsExcluded ¶ added in v0.69.0
func (c *CollectMetrics) IsExcluded() (bool, error)
func (*CollectMetrics) Title ¶ added in v0.69.0
func (c *CollectMetrics) Title() string
type CollectMssql ¶ added in v0.60.0
type CollectMssql struct { Collector *troubleshootv1beta2.Database BundlePath string Namespace string ClientConfig *rest.Config Client kubernetes.Interface Context context.Context RBACErrors }
func (*CollectMssql) Collect ¶ added in v0.60.0
func (c *CollectMssql) Collect(progressChan chan<- interface{}) (CollectorResult, error)
func (*CollectMssql) IsExcluded ¶ added in v0.60.0
func (c *CollectMssql) IsExcluded() (bool, error)
func (*CollectMssql) Title ¶ added in v0.60.0
func (c *CollectMssql) Title() string
type CollectMysql ¶ added in v0.44.0
type CollectMysql struct { Collector *troubleshootv1beta2.Database BundlePath string Namespace string ClientConfig *rest.Config Client kubernetes.Interface Context context.Context RBACErrors }
func (*CollectMysql) Collect ¶ added in v0.44.0
func (c *CollectMysql) Collect(progressChan chan<- interface{}) (CollectorResult, error)
func (*CollectMysql) IsExcluded ¶ added in v0.44.0
func (c *CollectMysql) IsExcluded() (bool, error)
func (*CollectMysql) Title ¶ added in v0.44.0
func (c *CollectMysql) Title() string
type CollectPostgres ¶ added in v0.44.0
type CollectPostgres struct { Collector *troubleshootv1beta2.Database BundlePath string Namespace string ClientConfig *rest.Config Client kubernetes.Interface Context context.Context RBACErrors }
func (*CollectPostgres) Collect ¶ added in v0.44.0
func (c *CollectPostgres) Collect(progressChan chan<- interface{}) (CollectorResult, error)
func (*CollectPostgres) IsExcluded ¶ added in v0.44.0
func (c *CollectPostgres) IsExcluded() (bool, error)
func (*CollectPostgres) Title ¶ added in v0.44.0
func (c *CollectPostgres) Title() string
type CollectProgress ¶ added in v0.15.0
type CollectRedis ¶ added in v0.44.0
type CollectRedis struct { Collector *troubleshootv1beta2.Database BundlePath string Namespace string ClientConfig *rest.Config Client kubernetes.Interface Context context.Context RBACErrors }
func (*CollectRedis) Collect ¶ added in v0.44.0
func (c *CollectRedis) Collect(progressChan chan<- interface{}) (CollectorResult, error)
func (*CollectRedis) IsExcluded ¶ added in v0.44.0
func (c *CollectRedis) IsExcluded() (bool, error)
func (*CollectRedis) Title ¶ added in v0.44.0
func (c *CollectRedis) Title() string
type CollectRegistry ¶ added in v0.44.0
type CollectRegistry struct { Collector *troubleshootv1beta2.RegistryImages BundlePath string Namespace string ClientConfig *rest.Config Client kubernetes.Interface Context context.Context RBACErrors }
func (*CollectRegistry) Collect ¶ added in v0.44.0
func (c *CollectRegistry) Collect(progressChan chan<- interface{}) (CollectorResult, error)
func (*CollectRegistry) IsExcluded ¶ added in v0.44.0
func (c *CollectRegistry) IsExcluded() (bool, error)
func (*CollectRegistry) Title ¶ added in v0.44.0
func (c *CollectRegistry) Title() string
type CollectRun ¶ added in v0.44.0
type CollectRun struct { Collector *troubleshootv1beta2.Run BundlePath string Namespace string ClientConfig *rest.Config Client kubernetes.Interface Context context.Context RBACErrors }
func (*CollectRun) Collect ¶ added in v0.44.0
func (c *CollectRun) Collect(progressChan chan<- interface{}) (CollectorResult, error)
func (*CollectRun) IsExcluded ¶ added in v0.44.0
func (c *CollectRun) IsExcluded() (bool, error)
func (*CollectRun) Title ¶ added in v0.44.0
func (c *CollectRun) Title() string
type CollectRunPod ¶ added in v0.44.0
type CollectRunPod struct { Collector *troubleshootv1beta2.RunPod BundlePath string Namespace string ClientConfig *rest.Config Client kubernetes.Interface Context context.Context RBACErrors }
func (*CollectRunPod) Collect ¶ added in v0.44.0
func (c *CollectRunPod) Collect(progressChan chan<- interface{}) (result CollectorResult, err error)
func (*CollectRunPod) IsExcluded ¶ added in v0.44.0
func (c *CollectRunPod) IsExcluded() (bool, error)
func (*CollectRunPod) Title ¶ added in v0.44.0
func (c *CollectRunPod) Title() string
type CollectSecret ¶ added in v0.44.0
type CollectSecret struct { Collector *troubleshootv1beta2.Secret BundlePath string Namespace string ClientConfig *rest.Config Client kubernetes.Interface Context context.Context RBACErrors }
func (*CollectSecret) Collect ¶ added in v0.44.0
func (c *CollectSecret) Collect(progressChan chan<- interface{}) (CollectorResult, error)
func (*CollectSecret) IsExcluded ¶ added in v0.44.0
func (c *CollectSecret) IsExcluded() (bool, error)
func (*CollectSecret) Title ¶ added in v0.44.0
func (c *CollectSecret) Title() string
type CollectSysctl ¶ added in v0.44.0
type CollectSysctl struct { Collector *troubleshootv1beta2.Sysctl BundlePath string Namespace string ClientConfig *rest.Config Client kubernetes.Interface Context context.Context RBACErrors }
func (*CollectSysctl) Collect ¶ added in v0.44.0
func (c *CollectSysctl) Collect(progressChan chan<- interface{}) (CollectorResult, error)
func (*CollectSysctl) IsExcluded ¶ added in v0.44.0
func (c *CollectSysctl) IsExcluded() (bool, error)
func (*CollectSysctl) Title ¶ added in v0.44.0
func (c *CollectSysctl) Title() string
type Collector ¶
type Collector interface { Title() string IsExcluded() (bool, error) GetRBACErrors() []error HasRBACErrors() bool CheckRBAC(ctx context.Context, c Collector, collector *troubleshootv1beta2.Collect, clientConfig *rest.Config, namespace string) error Collect(progressChan chan<- interface{}) (CollectorResult, error) }
type CollectorResult ¶ added in v0.13.15
func CollectorResultFromBundle ¶ added in v0.53.0
func CollectorResultFromBundle(bundleDir string) (CollectorResult, error)
CollectorResultFromBundle creates a CollectorResult from a bundle directory The bundle directory is not necessarily a support bundle, it can be any directory of collected files as part of other operations or files that are already on disk.
func NewResult ¶ added in v0.13.15
func NewResult() CollectorResult
func (CollectorResult) AddResult ¶ added in v0.49.1
func (r CollectorResult) AddResult(other CollectorResult)
AddResult combines another results object into this collector result. This ensures when archiving a bundle from the result, all files are included. It also ensures that when operating on the results in memory (e.g preflights), all files are included.
func (CollectorResult) ArchiveSupportBundle ¶ added in v0.53.0
func (r CollectorResult) ArchiveSupportBundle(bundlePath string, outputFilename string) error
func (CollectorResult) CloseWriter ¶ added in v0.13.17
func (r CollectorResult) CloseWriter(bundlePath string, relativePath string, writer interface{}) error
func (CollectorResult) GetReader ¶ added in v0.13.15
func (r CollectorResult) GetReader(bundlePath string, relativePath string) (io.ReadCloser, error)
func (CollectorResult) ReplaceResult ¶ added in v0.13.15
func (CollectorResult) SaveResult ¶ added in v0.13.15
SaveResult saves the collector result to relativePath file on disk. If bundlePath is empty, no file is created on disk. The relativePath is always saved in the result map.
func (CollectorResult) SaveResults ¶ added in v0.78.0
func (r CollectorResult) SaveResults(bundlePath, relativePath, targetDir string) error
SaveResults walk a target directory and call SaveResult on all files retrieved from the walk.
func (CollectorResult) SymLinkResult ¶ added in v0.48.0
func (r CollectorResult) SymLinkResult(bundlePath, relativeLinkPath, relativeFilePath string) error
SymLinkResult creates a symlink (relativeLinkPath) of relativeFilePath in the bundle. If bundlePath is empty, no symlink is created. The relativeLinkPath is always saved in the result map.
type CollectorRunOpts ¶ added in v0.15.0
type ConfigMapOutput ¶ added in v0.13.3
type DatabaseConnection ¶ added in v0.9.27
type DiskUsageInfo ¶ added in v0.10.0
type FSPerfResults ¶ added in v0.10.4
type FSPerfResults struct { Min time.Duration Max time.Duration Average time.Duration P1 time.Duration P5 time.Duration P10 time.Duration P20 time.Duration P30 time.Duration P40 time.Duration P50 time.Duration P60 time.Duration P70 time.Duration P80 time.Duration P90 time.Duration P95 time.Duration P99 time.Duration P995 time.Duration P999 time.Duration P9995 time.Duration P9999 time.Duration }
func (FSPerfResults) String ¶ added in v0.10.18
func (f FSPerfResults) String() string
type FioDepth ¶ added in v0.73.0
type FioDepth struct { FioDepth0 float32 `json:"0,omitempty"` FioDepth1 float32 `json:"1,omitempty"` FioDepth2 float32 `json:"2,omitempty"` FioDepth4 float32 `json:"4,omitempty"` FioDepth8 float32 `json:"8,omitempty"` FioDepth16 float32 `json:"16,omitempty"` FioDepth32 float32 `json:"32,omitempty"` FioDepth64 float32 `json:"64,omitempty"` FioDepthGE64 float32 `json:">=64,omitempty"` }
type FioDiskUtil ¶ added in v0.73.0
type FioDiskUtil struct { Name string `json:"name,omitempty"` ReadIos int64 `json:"read_ios,omitempty"` WriteIos int64 `json:"write_ios,omitempty"` ReadMerges int64 `json:"read_merges,omitempty"` WriteMerges int64 `json:"write_merges,omitempty"` ReadTicks int64 `json:"read_ticks,omitempty"` WriteTicks int64 `json:"write_ticks,omitempty"` InQueue int64 `json:"in_queue,omitempty"` Util float32 `json:"util,omitempty"` }
func (FioDiskUtil) String ¶ added in v0.73.0
func (d FioDiskUtil) String() string
type FioGlobalOptions ¶ added in v0.73.0
type FioGlobalOptions struct { Directory string `json:"directory,omitempty"` RandRepeat string `json:"randrepeat,omitempty"` Verify string `json:"verify,omitempty"` IOEngine string `json:"ioengine,omitempty"` Direct string `json:"direct,omitempty"` GtodReduce string `json:"gtod_reduce,omitempty"` }
func (FioGlobalOptions) String ¶ added in v0.73.0
func (g FioGlobalOptions) String() string
type FioJobOptions ¶ added in v0.73.0
type FioJobOptions struct { Name string `json:"name,omitempty"` BS string `json:"bs,omitempty"` Directory string `json:"directory,omitempty"` RW string `json:"rw,omitempty"` IOEngine string `json:"ioengine,omitempty"` FDataSync string `json:"fdatasync,omitempty"` Size string `json:"size,omitempty"` RunTime string `json:"runtime,omitempty"` }
func (FioJobOptions) String ¶ added in v0.73.0
func (o FioJobOptions) String() string
type FioJobs ¶ added in v0.73.0
type FioJobs struct { JobName string `json:"jobname,omitempty"` GroupID int `json:"groupid,omitempty"` Error int `json:"error,omitempty"` Eta int `json:"eta,omitempty"` Elapsed int `json:"elapsed,omitempty"` JobOptions FioJobOptions `json:"job options,omitempty"` Read FioStats `json:"read,omitempty"` Write FioStats `json:"write,omitempty"` Trim FioStats `json:"trim,omitempty"` Sync FioStats `json:"sync,omitempty"` JobRuntime int32 `json:"job_runtime,omitempty"` UsrCpu float32 `json:"usr_cpu,omitempty"` SysCpu float32 `json:"sys_cpu,omitempty"` Ctx int32 `json:"ctx,omitempty"` MajF int32 `json:"majf,omitempty"` MinF int32 `json:"minf,omitempty"` IoDepthLevel FioDepth `json:"iodepth_level,omitempty"` IoDepthSubmit FioDepth `json:"iodepth_submit,omitempty"` IoDepthComplete FioDepth `json:"iodepth_complete,omitempty"` LatencyNs FioLatency `json:"latency_ns,omitempty"` LatencyUs FioLatency `json:"latency_us,omitempty"` LatencyMs FioLatency `json:"latency_ms,omitempty"` LatencyDepth int32 `json:"latency_depth,omitempty"` LatencyTarget int32 `json:"latency_target,omitempty"` LatencyPercentile float32 `json:"latency_percentile,omitempty"` LatencyWindow int32 `json:"latency_window,omitempty"` }
type FioLatency ¶ added in v0.73.0
type FioLatency struct { FioLat2 float32 `json:"2,omitempty"` FioLat4 float32 `json:"4,omitempty"` FioLat10 float32 `json:"10,omitempty"` FioLat20 float32 `json:"20,omitempty"` FioLat50 float32 `json:"50,omitempty"` FioLat100 float32 `json:"100,omitempty"` FioLat250 float32 `json:"250,omitempty"` FioLat500 float32 `json:"500,omitempty"` FioLat750 float32 `json:"750,omitempty"` FioLat1000 float32 `json:"1000,omitempty"` FioLat2000 float32 `json:"2000,omitempty"` FioLatGE2000 float32 `json:">=2000,omitempty"` }
type FioPercentile ¶ added in v0.73.0
type FioPercentile struct { P1 int `json:"1.000000,omitempty"` P5 int `json:"5.000000,omitempty"` P10 int `json:"10.000000,omitempty"` P20 int `json:"20.000000,omitempty"` P30 int `json:"30.000000,omitempty"` P40 int `json:"40.000000,omitempty"` P50 int `json:"50.000000,omitempty"` P60 int `json:"60.000000,omitempty"` P70 int `json:"70.000000,omitempty"` P80 int `json:"80.000000,omitempty"` P90 int `json:"90.000000,omitempty"` P95 int `json:"95.000000,omitempty"` P99 int `json:"99.000000,omitempty"` P995 int `json:"99.500000,omitempty"` P999 int `json:"99.900000,omitempty"` P9995 int `json:"99.950000,omitempty"` P9999 int `json:"99.990000,omitempty"` }
type FioResult ¶ added in v0.73.0
type FioResult struct { FioVersion string `json:"fio version,omitempty"` Timestamp int64 `json:"timestamp,omitempty"` TimestampMS int64 `json:"timestamp_ms,omitempty"` Time string `json:"time,omitempty"` GlobalOptions FioGlobalOptions `json:"global options,omitempty"` Jobs []FioJobs `json:"jobs,omitempty"` DiskUtil []FioDiskUtil `json:"disk_util,omitempty"` }
type FioStats ¶ added in v0.73.0
type FioStats struct { IOBytes int64 `json:"io_bytes,omitempty"` IOKBytes int64 `json:"io_kbytes,omitempty"` BWBytes int64 `json:"bw_bytes,omitempty"` BW int64 `json:"bw,omitempty"` Iops float32 `json:"iops,omitempty"` Runtime int64 `json:"runtime,omitempty"` TotalIos int64 `json:"total_ios,omitempty"` ShortIos int64 `json:"short_ios,omitempty"` DropIos int64 `json:"drop_ios,omitempty"` SlatNs FioNS `json:"slat_ns,omitempty"` ClatNs FioNS `json:"clat_ns,omitempty"` LatNs FioNS `json:"lat_ns,omitempty"` Percentile FioPercentile `json:"percentile,omitempty"` BwMin int64 `json:"bw_min,omitempty"` BwMax int64 `json:"bw_max,omitempty"` BwAgg float32 `json:"bw_agg,omitempty"` BwMean float32 `json:"bw_mean,omitempty"` BwDev float32 `json:"bw_dev,omitempty"` BwSamples int32 `json:"bw_samples,omitempty"` IopsMin int32 `json:"iops_min,omitempty"` IopsMax int32 `json:"iops_max,omitempty"` IopsMean float32 `json:"iops_mean,omitempty"` IopsStdDev float32 `json:"iops_stddev,omitempty"` IopsSamples int32 `json:"iops_samples,omitempty"` }
func (FioStats) FSPerfResults ¶ added in v0.73.0
func (s FioStats) FSPerfResults() FSPerfResults
type HTTPResponse ¶ added in v0.10.2
type HostCertificatesCollection ¶ added in v0.70.0
type HostCertificatesCollection struct { CertificatePath string `json:"certificatePath,omitempty"` CertificateChain []ParsedCertificate `json:"certificateChain,omitempty"` Message string `json:"message,omitempty"` }
func HostCertsParser ¶ added in v0.70.0
func HostCertsParser(certPath string) HostCertificatesCollection
type HostCollectResult ¶ added in v0.15.0
type HostCollectResult struct { AllCollectedData map[string][]byte Collectors []HostCollector Spec *troubleshootv1beta2.HostCollector }
func CollectHost ¶ added in v0.15.0
func CollectHost(c *troubleshootv1beta2.HostCollector, additionalRedactors *troubleshootv1beta2.Redactor, opts CollectorRunOpts) (*HostCollectResult, error)
CollectHost runs the collection phase for a local collector.
type HostCollector ¶ added in v0.10.0
type HostCollector interface { Title() string IsExcluded() (bool, error) Collect(progressChan chan<- interface{}) (map[string][]byte, error) }
func GetHostCollector ¶ added in v0.10.8
func GetHostCollector(collector *troubleshootv1beta2.HostCollect, bundlePath string) (HostCollector, bool)
type HostOSInfo ¶ added in v0.16.0
type HostRunInfo ¶ added in v0.37.0
type ImageRunner ¶ added in v0.38.0
type ImageRunner interface { GetImage() string SetImage(string) GetImagePullSecret() *v1beta2.ImagePullSecrets SetImagePullSecret(*v1beta2.ImagePullSecrets) GetNamespace() string }
type KernelModuleInfo ¶ added in v0.15.0
type KernelModuleInfo struct { Size uint64 `json:"size"` Instances uint `json:"instances"` Status KernelModuleStatus `json:"status"` }
type KernelModuleStatus ¶ added in v0.15.0
type KernelModuleStatus string
type MemoryInfo ¶ added in v0.10.0
type MemoryInfo struct {
Total uint64 `json:"total"`
}
type MergeableCollector ¶ added in v0.44.0
type NetworkStatus ¶ added in v0.10.0
type NetworkStatus string
type NetworkStatusResult ¶ added in v0.10.0
type NetworkStatusResult struct { Status NetworkStatus `json:"status"` Message string `json:"message"` }
type ParsedCertificate ¶ added in v0.62.0
type ParsedCertificate struct { CertName string `json:"certificate"` Subject string `json:"subject"` SubjectAlternativeNames []string `json:"subjectAlternativeNames"` Issuer string `json:"issuer"` NotAfter time.Time `json:"notAfter"` NotBefore time.Time `json:"notBefore"` IsValid bool `json:"isValid"` IsCA bool `json:"isCA"` }
Certificate Struct
func CertParser ¶ added in v0.62.0
func CertParser(certName string, certs []byte, currentTime time.Time) ([]ParsedCertificate, []string)
Certificate parser
type PodSpecRunner ¶ added in v0.38.0
type PodSpecRunner interface { GetPodSpec() corev1.PodSpec SetPodSpec(corev1.PodSpec) GetImagePullSecret() *v1beta2.ImagePullSecrets SetImagePullSecret(*v1beta2.ImagePullSecrets) GetNamespace() string }
type RBACErrors ¶ added in v0.44.0
type RBACErrors []error
func (*RBACErrors) CheckRBAC ¶ added in v0.44.0
func (e *RBACErrors) CheckRBAC(ctx context.Context, c Collector, collector *troubleshootv1beta2.Collect, clientConfig *rest.Config, namespace string) error
func (RBACErrors) GetRBACErrors ¶ added in v0.44.0
func (e RBACErrors) GetRBACErrors() []error
func (RBACErrors) HasRBACErrors ¶ added in v0.44.0
func (e RBACErrors) HasRBACErrors() bool
type RegistryImage ¶ added in v0.10.16
type RegistryInfo ¶ added in v0.10.16
type RegistryInfo struct {
Images map[string]RegistryImage `json:"images"`
}
type ReleaseInfo ¶ added in v0.71.1
type ReleaseInfo struct { ReleaseName string `json:"releaseName"` Chart string `json:"chart,omitempty"` ChartVersion string `json:"chartVersion,omitempty"` AppVersion string `json:"appVersion,omitempty"` Namespace string `json:"namespace,omitempty"` VersionInfo []VersionInfo `json:"releaseHistory,omitempty"` }
Helm release information struct
type RemoteCollectResult ¶ added in v0.15.0
type RemoteCollectResult struct { AllCollectedData map[string][]byte Collectors RemoteCollectors Spec *troubleshootv1beta2.RemoteCollector // contains filtered or unexported fields }
func CollectRemote ¶ added in v0.15.0
func CollectRemote(c *troubleshootv1beta2.RemoteCollector, additionalRedactors *troubleshootv1beta2.Redactor, opts CollectorRunOpts) (*RemoteCollectResult, error)
CollectRemote runs the collection phase for a remote collector.
type RemoteCollector ¶ added in v0.15.0
type RemoteCollector struct { Collect *troubleshootv1beta2.RemoteCollect Redact bool RBACErrors []error ClientConfig *rest.Config Image string PullPolicy string LabelSelector string Namespace string BundlePath string Timeout time.Duration }
func (*RemoteCollector) CheckRBAC ¶ added in v0.15.0
func (c *RemoteCollector) CheckRBAC(ctx context.Context) error
func (*RemoteCollector) GetDisplayName ¶ added in v0.15.0
func (c *RemoteCollector) GetDisplayName() string
func (*RemoteCollector) IsExcluded ¶ added in v0.15.0
func (c *RemoteCollector) IsExcluded() bool
checks if a given collector has a spec with 'exclude' that evaluates to true.
func (*RemoteCollector) RunCollectorSync ¶ added in v0.15.0
func (c *RemoteCollector) RunCollectorSync(globalRedactors []*troubleshootv1beta2.Redact) (CollectorResult, error)
func (*RemoteCollector) RunRemote ¶ added in v0.15.0
func (c *RemoteCollector) RunRemote(ctx context.Context, runner runner, nodes []string, collector *troubleshootv1beta2.HostCollect, nameGenerator names.NameGenerator, namePrefix string) (map[string][]byte, error)
type RemoteCollectors ¶ added in v0.15.0
type RemoteCollectors []*RemoteCollector
type RunPodOptions ¶ added in v0.14.0
type RunPodOptions struct { Image string ImagePullPolicy string Namespace string Command []string ImagePullSecretName string HostNetwork bool }
RunPodOptions and RunPodReadyNodes currently only used for the Sysctl collector TODO: refactor sysctl collector and runPod collector to share the same code
type SecretOutput ¶
type ServiceInfo ¶ added in v0.10.15
type SubnetAvailableResult ¶ added in v0.59.0
type SubnetAvailableResult struct { CIDRRangeAlloc string `json:"CIDRRangeAlloc"` DesiredCIDR int `json:"desiredCIDR"` // If subnet-available, at least 1 of the DesiredCIDR size is available within CIDRRangeAlloc Status SubnetStatus `json:"status"` }
type SubnetStatus ¶ added in v0.59.0
type SubnetStatus string
type SystemPackage ¶ added in v0.24.0
type SystemPackagesInfo ¶ added in v0.24.0
type SystemPackagesInfo struct { OS string `json:"os"` OSVersion string `json:"osVersion"` Packages []SystemPackage `json:"packages"` }
Source Files ¶
- ceph.go
- certificates.go
- cluster_info.go
- cluster_resources.go
- collect.go
- collectd.go
- collector.go
- configmap.go
- copy.go
- copy_from_host.go
- data.go
- database_shared.go
- exec.go
- goldpinger.go
- helm.go
- host_block_device.go
- host_certificate.go
- host_certificates_collection.go
- host_collector.go
- host_copy.go
- host_cpu.go
- host_disk_usage.go
- host_filesystem_performance.go
- host_filesystem_performance_linux.go
- host_http.go
- host_httploadbalancer.go
- host_ipv4interfaces.go
- host_kernel_modules.go
- host_memory.go
- host_network.go
- host_os_info.go
- host_run.go
- host_services.go
- host_subnetavailable.go
- host_system_package.go
- host_tcp_connect.go
- host_tcploadbalancer.go
- host_tcpportstatus.go
- host_time.go
- host_udpportstatus.go
- http.go
- interfaces.go
- k8s_metrics.go
- load.go
- logs.go
- longhorn.go
- mssql.go
- mysql.go
- postgres.go
- rbac.go
- redact.go
- redis.go
- registry.go
- remote_collector.go
- result.go
- run.go
- run_pod.go
- runner.go
- secret.go
- sysctl.go
- util.go