Documentation
¶
Index ¶
- Variables
- func Add(pathBase string) (subsystem string)
- func GetLoc(skip int, subsystem string) (output string)
- func IfErrNotNilPanic(err error)
- func Item(m *types.Metadata) (t types.Item)
- func List(items ...string) []string
- func SetLogLevel(l LogLevel)
- func SetTimeStampFormat(format string)
- func Version() string
- type BooT
- func (b BooT) Bool() bool
- func (b BooT) Duration() time.Duration
- func (b BooT) Float() float64
- func (b *BooT) FromString(s string) error
- func (b BooT) Int() int64
- func (b BooT) List() []string
- func (b BooT) Meta() *types.Metadata
- func (b *BooT) Set(bo bool)
- func (b BooT) String() string
- func (b BooT) Uint() uint64
- type Chk
- type Configs
- func (c *Configs) Get(name string) (t types.Item, err error)
- func (c *Configs) GetAllNames() (items []string)
- func (c *Configs) GetHelp(name, group string, detailed, markdown bool) (text string, err error)
- func (c *Configs) Load(filename string) (err error)
- func (c *Configs) MarshalJSON() ([]byte, error)
- func (c *Configs) Save(filename string) (err error)
- func (c *Configs) UnmarshalJSON(bytes []byte) error
- type DurT
- func (d DurT) Bool() bool
- func (d DurT) Duration() time.Duration
- func (d DurT) Float() float64
- func (d *DurT) FromString(s string) error
- func (d DurT) Int() int64
- func (d DurT) List() []string
- func (d DurT) Meta() *types.Metadata
- func (d *DurT) Set(du time.Duration)
- func (d DurT) String() string
- func (d DurT) Uint() uint64
- type FltT
- func (f FltT) Bool() bool
- func (f FltT) Duration() time.Duration
- func (f FltT) Float() float64
- func (f *FltT) FromString(s string) error
- func (f FltT) Int() int64
- func (f FltT) List() []string
- func (f FltT) Meta() *types.Metadata
- func (f *FltT) Set(fl float64)
- func (f FltT) String() string
- func (f FltT) Uint() uint64
- type IntT
- func (in IntT) Bool() bool
- func (in IntT) Duration() time.Duration
- func (in IntT) Float() float64
- func (in *IntT) FromString(s string) error
- func (in IntT) Int() int64
- func (in IntT) List() []string
- func (in IntT) Meta() *types.Metadata
- func (in *IntT) Set(i int64)
- func (in IntT) String() string
- func (in IntT) Uint() uint64
- type LevelPrinter
- type LevelSpec
- type LogLevel
- type Logger
- type LstT
- func (l LstT) Bool() bool
- func (l LstT) Duration() time.Duration
- func (l LstT) Float() float64
- func (l *LstT) FromString(s string) error
- func (l LstT) Int() int64
- func (l LstT) List() (li []string)
- func (l LstT) Meta() *types.Metadata
- func (l *LstT) Set(li ...string)
- func (l LstT) String() (o string)
- func (l LstT) Uint() uint64
- type Printc
- type Printf
- type Println
- type Prints
- type StrT
- func (s StrT) Bool() bool
- func (s StrT) Duration() time.Duration
- func (s StrT) Float() float64
- func (s *StrT) FromString(st string) error
- func (s StrT) Int() int64
- func (s StrT) List() []string
- func (s StrT) Meta() *types.Metadata
- func (s *StrT) Set(st string)
- func (s StrT) String() string
- func (s StrT) Uint() uint64
- type UinT
- func (u UinT) Bool() bool
- func (u UinT) Duration() time.Duration
- func (u UinT) Float() float64
- func (u *UinT) FromString(s string) error
- func (u UinT) Int() int64
- func (u UinT) List() []string
- func (u UinT) Meta() *types.Metadata
- func (u *UinT) Set(ui uint64)
- func (u UinT) String() string
- func (u UinT) Uint() uint64
Constants ¶
This section is empty.
Variables ¶
var ( // App is the name of the application. Change this at the beginning of // an application main. App = " main" // AllSubsystems stores all of the package subsystem names found in the current // application. AllSubsystems []string )
var ( // URL is the git URL for the repository URL = "github.com/cybriq/proc" // GitRef is the gitref, as in refs/heads/branchname GitRef = "refs/heads/master" // ParentGitCommit is the commit hash of the parent HEAD ParentGitCommit = "9a17a7a12d991bae71e3ad6d9f3145ef6c920384" // BuildTime stores the time when the current binary was built BuildTime = "2022-08-03T15:30:37+02:00" // SemVer lists the (latest) git tag on the build SemVer = "v0.1.6" // PathBase is the path base returned from runtime caller PathBase = "/home/davidvennik/src/github.com/cybriq/proc/" // Major is the major number from the tag Major = 0 // Minor is the minor number from the tag Minor = 1 // Patch is the patch version number from the tag Patch = 6 )
var LevelSpecs = map[LogLevel]LevelSpec{ Off: gLS(Off, 0, 0, 0), Fatal: gLS(Fatal, 255, 0, 0), Error: gLS(Error, 255, 128, 0), Check: gLS(Check, 255, 255, 0), Warn: gLS(Warn, 255, 255, 0), Info: gLS(Info, 0, 255, 0), Debug: gLS(Debug, 0, 128, 255), Trace: gLS(Trace, 128, 0, 255), }
LevelSpecs specifies the id, string name and color-printing function
var LvlStr = map[LogLevel]string{ Off: "off ", Fatal: "fatal", Error: "error", Warn: "warn ", Info: "info ", Check: "check", Debug: "debug", Trace: "trace", }
LvlStr is a map that provides the uniform width strings that are printed to identify the LogLevel of a log entry.
Functions ¶
func Add ¶ added in v0.0.30
Add adds a subsystem to the list of known subsystems and returns the string so it is nice and neat in the package logg.go file
func GetLoc ¶ added in v0.0.30
GetLoc calls runtime.Caller and formats as expected by source code editors for terminal hyperlinks
Regular expressions and the substitution texts to make these clickable in Tilix and other RE hyperlink configurable terminal emulators:
This matches the shortened paths generated in this command and printed at the very beginning of the line as this logger prints:
^((([\/a-zA-Z@0-9-_.]+/)+([a-zA-Z@0-9-_.]+)):([0-9]+)) /usr/local/bin/goland --line $5 $GOPATH/src/github.com/p9c/matrjoska/$2
I have used a shell variable there but tilix doesn't expand them, so put your GOPATH in manually, and obviously change the repo subpath.
func IfErrNotNilPanic ¶ added in v0.1.2
func IfErrNotNilPanic(err error)
IfErrNotNilPanic is a helper for functions that should never error as errors are purely programmer errors and not error conditions.
func List ¶ added in v0.0.30
List is a helper that uses variadic parameters to return a slice of strings.
func SetLogLevel ¶ added in v0.0.30
func SetLogLevel(l LogLevel)
func SetTimeStampFormat ¶ added in v0.0.30
func SetTimeStampFormat(format string)
SetTimeStampFormat sets a custom timeStampFormat for the logger
Types ¶
type BooT ¶ added in v0.1.2
BooT is a boolean item type
func (*BooT) FromString ¶ added in v0.1.2
type Configs ¶ added in v0.0.30
Configs are a concurrent safe key value store for configuration items
func (*Configs) GetAllNames ¶ added in v0.1.6
GetAllNames returns a lexicographically sorted list of all item names in the Configs.
func (*Configs) MarshalJSON ¶ added in v0.0.30
MarshalJSON returns the JSON for the current state of a Configs
func (*Configs) UnmarshalJSON ¶ added in v0.0.30
UnmarshalJSON loads a Configs with the values in a JSON string
type DurT ¶ added in v0.0.35
DurT is a duration item type
func NewDuration ¶ added in v0.0.30
NewDuration creates a new duration types.Item
func (*DurT) FromString ¶ added in v0.0.35
type FltT ¶ added in v0.0.35
FltT is a float64 item type
func (*FltT) FromString ¶ added in v0.0.35
type IntT ¶ added in v0.0.35
IntT is an int64 item type
func (*IntT) FromString ¶ added in v0.0.35
type LevelPrinter ¶
type LevelPrinter struct {
Ln Println
// F prints like fmt.Println surrounded by log details
F Printf
// S uses spew.dump to show the content of a variable
S Prints
// C accepts a function so that the extra computation can be avoided if
// it is not being viewed
C Printc
// Chk is a shortcut for printing if there is an error, or returning
// true
Chk Chk
}
LevelPrinter defines a set of terminal printing primitives that output with extra data, time, level, and code location
type LogLevel ¶
type LogLevel int32
LogLevel is a code representing a scale of importance and context for log entries.
type Logger ¶
type Logger struct {
F, E, W, I, D, T LevelPrinter
}
Logger is a set of log printers for the various LogLevel items.
type LstT ¶ added in v0.0.35
LstT is a []string item type
func (*LstT) FromString ¶ added in v0.0.35
type Printc ¶
type Printc func(closure func() string)
Printc accepts a function so that the extra computation can be avoided if it is not being viewed
type Printf ¶
type Printf func(format string, a ...interface{})
Printf prints like fmt.Println surrounded by log details
type Println ¶
type Println func(a ...interface{})
Println prints lists of interfaces with spaces in between
type StrT ¶ added in v0.0.35
StrT is a string item type