本文整理匯總了Golang中github.com/BellerophonMobile/logberry.Task類的典型用法代碼示例。如果您正苦於以下問題:Golang Task類的具體用法?Golang Task怎麽用?Golang Task使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
在下文中一共展示了Task類的9個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: LogProcess
// ProcessEvent generates a configuration log event for the given Task
// reporting identifiers for the currently executing process.
func LogProcess(main *logberry.Task) error {
hostname, err := os.Hostname()
if err != nil {
return logberry.WrapError("Could not retrieve hostname", err)
}
wd, err := os.Getwd()
if err != nil {
return logberry.WrapError("Could not retrieve working dir", err)
}
u, err := user.Current()
if err != nil {
return logberry.WrapError("Could not retrieve user info", err)
}
d := logberry.D{
"Host": hostname,
"WD": wd,
"UID": u.Uid,
"User": u.Username,
"PID": os.Getpid(),
}
main.Event(logberry.CONFIGURATION, "Process", d)
return nil
}
示例2: LogCommandLine
// CommandLineEvent generates a configuration log event for the given
// Task reporting the command line used to execute the currently
// executing process.
func LogCommandLine(main *logberry.Task) error {
hostname, err := os.Hostname()
if err != nil {
return logberry.WrapError("Could not retrieve hostname", err)
}
u, err := user.Current()
if err != nil {
return logberry.WrapError("Could not retrieve user info", err)
}
dir, err := filepath.Abs(filepath.Dir(os.Args[0]))
if err != nil {
return logberry.WrapError("Could not retrieve program path", err)
}
prog := path.Base(os.Args[0])
d := logberry.D{
"Host": hostname,
"User": u.Username,
"Path": dir,
"Program": prog,
"Args": os.Args[1:],
}
main.Event(logberry.CONFIGURATION, "Command line", d)
return nil
}
示例3: LogEnvironment
// EnvironmentEvent generates a configuration log event for the given
// Task reporting the current operating system host environment
// variables of the currently executing process.
func LogEnvironment(main *logberry.Task) {
d := logberry.D{}
for _, e := range os.Environ() {
pair := strings.Split(e, "=")
d[pair[0]] = pair[1]
}
main.Event(logberry.CONFIGURATION, "Environment", d)
}
示例4: arbitraryfunc
func arbitraryfunc(component *logberry.Task) error {
// Start a long-running task, using Begin() to log start & begin timer
task := component.Task("Arbitrary computation")
// Report some intermediate progress
task.Info("Intermediate progress", logberry.D{"Best": 9})
// An error has occurred out of nowhere! Log & return an error
// noting that this task has failed, data associated with the error,
// wrapping the underlying cause, and noting this source location
return task.Failure("Random unrecoverable error",
logberry.D{"Bounds": "x-axis"})
}
示例5: somework
func somework(parent *logberry.Task) error {
task := parent.Task("Some work")
e := errors.New("inscrutable library error")
return task.WrapError("Mix-up in job order", e)
}
示例6: LogVersion
func LogVersion(main *logberry.Task, data ...interface{}) {
main.Event(logberry.CONFIGURATION, "Version", data...)
}
示例7: LogConfiguration
// ConfigurationEvent generates a configuration log event for the
// given Task reporting parameters or other initialization data. The
// variadic data parameter is aggregated as a D and reporting with the
// event, as is the data permanently associated with the Task. The
// given data is not associated to the Task permanently.
func LogConfiguration(main *logberry.Task, data ...interface{}) {
main.Event(logberry.CONFIGURATION, "Configuration", data...)
}
示例8: LogBuildSignature
// BuildSignatureEvent generates a configuration log event for the
// given Task reporting build configuration, as captured by the given
// string. A utility script to generate such metadata automatically
// is in the util/ folder of the Logberry repository. It can be
// useful to use this string rather than a BuildMetadata object so
// that it can be passed in through the standard go tools command
// line, i.e., via linker flags.
func LogBuildSignature(main *logberry.Task, build string) {
main.Event(logberry.CONFIGURATION, "Build signature", logberry.D{"Signature": build})
}
示例9: LogBuildMetadata
// BuildMetadataEvent generates a configuration log event for the
// given Task reporting the build configuration, as captured by the
// passed object. A utility script to generate such metadata
// automatically is in the util/ folder of the Logberry repository.
func LogBuildMetadata(main *logberry.Task, build *BuildMetadata) {
main.Event(logberry.CONFIGURATION, "Build metadata", build)
}