Documentation
¶
Index ¶
- Constants
- Variables
- func AuthError(err error) error
- func CategoryError(category string, err error) error
- func ConfigError(err error) error
- func DataError(err error) error
- func Error(err error) error
- func ErrorHelp(category string, err error)
- func ErrorHelpData(err error)
- func ErrorMsg(err error, msg string) error
- func NewDownloadTracker(totalSize int64) progress.Tracker
- func NewLineTracker() progress.Tracker
- func NewProblemsTracker() progress.Tracker
- func NewProgressWriter(nTrackers int) progress.Writer
- func NewRuleTracker() progress.Tracker
- func PrintCronJobTemplate(output, configDir, rulesPath string) error
- func PrintDeviceAuthUrl(url string)
- func PrintEmailVerifyNotice(email string)
- func PrintUsage()
- func PrintVersion(configDir, currRulesPath string, currRulesVer *semver.Version)
- func ProcessName() string
- func RootProgress(scrollbar bool) progress.Writer
- func RulesError(err error) error
- func WriteDataSourceTemplate(name string, ver *semver.Version, template []byte) (string, error)
- type ReportDocT
- type ReportT
- func (r *ReportT) AddCreHit(cre *parser.ParseCreT, hit time.Time, m matchz.HitsT) bool
- func (r *ReportT) AddRules(rules *parser.RulesT)
- func (r *ReportT) CreateReport() (ReportDocT, error)
- func (r *ReportT) DisplayCREs() error
- func (r *ReportT) GetCre(creId string) parser.ParseRuleT
- func (r *ReportT) PrintReport() error
- func (r *ReportT) Size() int
- func (r *ReportT) Write(path string) (string, error)
- type StatsT
- type UxCmdT
- func (u *UxCmdT) FinalStats() (StatsT, error)
- func (u *UxCmdT) IncrementLinesTracker(c int64)
- func (u *UxCmdT) IncrementProblemsTracker(c int64)
- func (u *UxCmdT) IncrementRuleTracker(c int64)
- func (u *UxCmdT) MarkBytesTrackerDone()
- func (u *UxCmdT) MarkLinesTrackerDone()
- func (u *UxCmdT) MarkProblemsTrackerDone()
- func (u *UxCmdT) MarkRuleTrackerDone()
- func (u *UxCmdT) NewBytesTracker(src string) (*progress.Tracker, error)
- func (u *UxCmdT) StartLinesTracker(lines *atomic.Int64, killCh chan struct{})
- func (u *UxCmdT) StartProblemsTracker()
- func (u *UxCmdT) StartRuleTracker()
- func (u *UxCmdT) UpdateBytesTotal(n int64)
- type UxEvalT
- func (u *UxEvalT) FinalStats() (StatsT, error)
- func (u *UxEvalT) IncrementLinesTracker(c int64)
- func (u *UxEvalT) IncrementProblemsTracker(c int64)
- func (u *UxEvalT) IncrementRuleTracker(c int64)
- func (u *UxEvalT) MarkBytesTrackerDone()
- func (u *UxEvalT) MarkLinesTrackerDone()
- func (u *UxEvalT) MarkProblemsTrackerDone()
- func (u *UxEvalT) MarkRuleTrackerDone()
- func (u *UxEvalT) NewBytesTracker(src string) (*progress.Tracker, error)
- func (u *UxEvalT) StartLinesTracker(lines *atomic.Int64, killCh chan struct{})
- func (u *UxEvalT) StartProblemsTracker()
- func (u *UxEvalT) StartRuleTracker()
- type UxFactoryI
Constants ¶
View Source
const ( AppDesc = "Prequel is the open and community-driven problem detector for Common Reliability Enumerations (CREs)." ErrorCategoryRules = "Rules" ErrorCategoryData = "Data" ErrorCategoryConfig = "Config" ErrorCategoryAuth = "Auth" ErrorHelpDataStr = "https://docs.prequel.dev/timestamps" )
View Source
const ( DownloadPreqLinkFmt = "https://github.com/prequel-dev/preq/releases/tag/v%s" DownloadPreqAvailableFmt = "A new release is available (%s)! Download at %s." DownloadPreqAvailablePromptFmt = "A new release is available (%s)! See %s for release notes.\nDo you want to update?" DownloadCreLinkFmt = "https://github.com/prequel-dev/cre/releases/tag/v%s" DownloadCreAvailablePromptFmt = "A new rules release is available (%s)! See %s for release notes.\nDo you want to update?" )
View Source
const ( KrewUsage = "kubectl preq POD [-c container]" KrewDescShort = "Use common reliability enumerations (CREs) to detect problems" KrewDescLong = `` /* 721-byte string literal not displayed */ KrewExamples = `` /* 139-byte string literal not displayed */ )
View Source
const (
OutputStdout = "-"
)
Variables ¶
View Source
var ( JobTemplate = `` /* 3912-byte string literal not displayed */ ConfigMapStdoutTemplate = `` /* 145-byte string literal not displayed */ )
View Source
var ( HelpAction = "Path to an automated action or runbook config file" HelpCron = "Generate Kubernetes cronjob template" HelpDisabled = "Do not run community CREs" HelpGenerate = "Generate data sources template" HelpLevel = "Print logs at this level to stderr" HelpName = "Output name for reports, data source templates, or notifications" HelpQuiet = "Quiet mode, do not print progress" HelpRules = "Path to a CRE rules file" HelpSource = "Path to a data source Yaml file" HelpVersion = "Print version and exit" HelpAcceptUpdates = "Accept updates to rules or new release" )
View Source
var (
ErrInvalidSeverity = errors.New("invalid severity")
)
View Source
var (
ErrNotImplemented = errors.New("not implemented")
)
Functions ¶
func CategoryError ¶
func ConfigError ¶
func ErrorHelpData ¶ added in v0.1.4
func ErrorHelpData(err error)
func NewDownloadTracker ¶
func NewLineTracker ¶
func NewProblemsTracker ¶
func NewProgressWriter ¶
func NewRuleTracker ¶
func PrintCronJobTemplate ¶ added in v0.1.10
func PrintDeviceAuthUrl ¶ added in v0.1.4
func PrintDeviceAuthUrl(url string)
func PrintEmailVerifyNotice ¶
func PrintEmailVerifyNotice(email string)
func PrintUsage ¶
func PrintUsage()
func PrintVersion ¶
func ProcessName ¶
func ProcessName() string
func RootProgress ¶
func RulesError ¶
Types ¶
type ReportDocT ¶ added in v0.1.13
type ReportT ¶
type ReportT struct {
CreHits map[string][]time.Time
Hits map[string]map[time.Time]matchz.HitsT
Rules map[string]parser.ParseRuleT
Pw progress.Writer
// contains filtered or unexported fields
}
func (*ReportT) CreateReport ¶
func (r *ReportT) CreateReport() (ReportDocT, error)
func (*ReportT) DisplayCREs ¶
func (*ReportT) PrintReport ¶
type UxCmdT ¶
type UxCmdT struct {
Pw progress.Writer
Rules progress.Tracker
Problems progress.Tracker
Lines progress.Tracker
Bytes progress.Tracker
}
func (*UxCmdT) FinalStats ¶
func (*UxCmdT) IncrementLinesTracker ¶
func (*UxCmdT) IncrementProblemsTracker ¶
func (*UxCmdT) IncrementRuleTracker ¶
func (*UxCmdT) MarkBytesTrackerDone ¶
func (u *UxCmdT) MarkBytesTrackerDone()
func (*UxCmdT) MarkLinesTrackerDone ¶
func (u *UxCmdT) MarkLinesTrackerDone()
func (*UxCmdT) MarkProblemsTrackerDone ¶
func (u *UxCmdT) MarkProblemsTrackerDone()
func (*UxCmdT) MarkRuleTrackerDone ¶
func (u *UxCmdT) MarkRuleTrackerDone()
func (*UxCmdT) NewBytesTracker ¶
func (*UxCmdT) StartLinesTracker ¶
func (*UxCmdT) StartProblemsTracker ¶
func (u *UxCmdT) StartProblemsTracker()
func (*UxCmdT) StartRuleTracker ¶
func (u *UxCmdT) StartRuleTracker()
func (*UxCmdT) UpdateBytesTotal ¶
type UxEvalT ¶ added in v0.1.13
type UxEvalT struct {
Rules uint32
Problems uint32
Lines atomic.Int64
Bytes progress.Tracker
// contains filtered or unexported fields
}
func (*UxEvalT) FinalStats ¶ added in v0.1.13
func (*UxEvalT) IncrementLinesTracker ¶ added in v0.1.13
func (*UxEvalT) IncrementProblemsTracker ¶ added in v0.1.13
func (*UxEvalT) IncrementRuleTracker ¶ added in v0.1.13
func (*UxEvalT) MarkBytesTrackerDone ¶ added in v0.1.13
func (u *UxEvalT) MarkBytesTrackerDone()
func (*UxEvalT) MarkLinesTrackerDone ¶ added in v0.1.13
func (u *UxEvalT) MarkLinesTrackerDone()
func (*UxEvalT) MarkProblemsTrackerDone ¶ added in v0.1.13
func (u *UxEvalT) MarkProblemsTrackerDone()
func (*UxEvalT) MarkRuleTrackerDone ¶ added in v0.1.13
func (u *UxEvalT) MarkRuleTrackerDone()
func (*UxEvalT) NewBytesTracker ¶ added in v0.1.13
func (*UxEvalT) StartLinesTracker ¶ added in v0.1.13
func (*UxEvalT) StartProblemsTracker ¶ added in v0.1.13
func (u *UxEvalT) StartProblemsTracker()
func (*UxEvalT) StartRuleTracker ¶ added in v0.1.13
func (u *UxEvalT) StartRuleTracker()
type UxFactoryI ¶
type UxFactoryI interface {
NewBytesTracker(src string) (*progress.Tracker, error)
StartRuleTracker()
StartProblemsTracker()
StartLinesTracker(lines *atomic.Int64, killCh chan struct{})
IncrementRuleTracker(c int64)
IncrementProblemsTracker(c int64)
IncrementLinesTracker(c int64)
MarkRuleTrackerDone()
MarkProblemsTrackerDone()
MarkLinesTrackerDone()
FinalStats() (StatsT, error)
}
Click to show internal directories.
Click to hide internal directories.