You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
121 lines
2.2 KiB
121 lines
2.2 KiB
package main
|
|
|
|
import (
|
|
"alogs"
|
|
"errs"
|
|
"fmt"
|
|
"mems"
|
|
"os"
|
|
"vals/flds"
|
|
)
|
|
|
|
|
|
func Print (err error) {
|
|
if err != nil {
|
|
fmt.Print(errs.Encode(err,nil))
|
|
}
|
|
}
|
|
|
|
|
|
func Append (entry *alogs.Entry) error {
|
|
|
|
b := mems.NewABuffer()
|
|
b.WriteString("---------------------------------------------------\n")
|
|
b.WriteString(entry.Level.String())
|
|
b.WriteByte('\n')
|
|
|
|
b.WriteString("Logger : ")
|
|
b.WriteString(entry.Logger.Name())
|
|
b.WriteByte('\n')
|
|
|
|
b.WriteString("Entrada : ")
|
|
b.WriteUIntStr(entry.Id,10)
|
|
b.WriteByte('\n')
|
|
|
|
b.WriteString("Mensage : ")
|
|
b.WriteString(entry.Message)
|
|
b.WriteByte('\n')
|
|
|
|
if entry.Error != nil {
|
|
b.WriteString("error :")
|
|
b.WriteString(entry.Error.Error())
|
|
b.WriteByte('\n')
|
|
}
|
|
|
|
|
|
fmt.Fprint(os.Stderr,b.String())
|
|
return nil
|
|
}
|
|
|
|
|
|
func Append2 (_ *alogs.Entry) error {
|
|
return errs.NewErrMessage(errs.ErrCode("UnError"),"Esto es el mensaje del error")
|
|
}
|
|
|
|
|
|
|
|
func main() {
|
|
|
|
|
|
var fs flds.SFields
|
|
|
|
fs = fs.AddField(flds.NewSFieldSigned("Z",1))
|
|
fs = fs.AddField(flds.NewSFieldSigned("a",1))
|
|
fs = fs.AddField(flds.NewSFieldSigned("m",1))
|
|
fs = fs.AddField(flds.NewSFieldSigned("b",1))
|
|
|
|
fs.Sort()
|
|
|
|
for i:= 0; i<len(fs); i++ {
|
|
fmt.Printf("%s\n",fs[i].Name())
|
|
}
|
|
|
|
/*
|
|
|
|
cx,cl := context.WithCancel(context.Background())
|
|
//cl()
|
|
|
|
|
|
l,er := alogs.NewActiveLogger(alogs.LevelAll,
|
|
alogs.ActiveLoggerWithContext(cx,true),
|
|
|
|
alogs.ActiveLoggerWithOnError(func(a *alogs.ActiveLogger,err error, s alogs.Logger){
|
|
if s != nil {
|
|
//fmt.Printf("Error producido en logger [%s] se procede a su paro\n", s.Name())
|
|
//fmt.Println(errs.Encode(err,nil))
|
|
fmt.Print(errs.Encode(s.Stop(),nil))
|
|
}
|
|
}),
|
|
|
|
)
|
|
|
|
if er != nil {
|
|
fmt.Print(errs.Encode(er,nil))
|
|
time.Sleep(500*time.Millisecond)
|
|
return
|
|
}
|
|
|
|
l1,_:= alogs.NewLoggerCore("MiLogger",alogs.LevelAll,alogs.LoggerCoreWithAppender(alogs.AppendEntryFnc(Append)))
|
|
l2,_:=alogs.NewLoggerCore("LoggerProblematico",alogs.LevelAll,alogs.LoggerCoreWithAppender(alogs.AppendEntryFnc(Append2)))
|
|
|
|
l.AddLogger(l1)
|
|
l.AddLogger(l2)
|
|
|
|
|
|
if er := l.Start(); er != nil {
|
|
e := errs.Encode(er,nil)
|
|
fmt.Printf("\n %s\n%s\n",e,er.Error())
|
|
return
|
|
}
|
|
|
|
for i:=0; i<3; i++ {
|
|
|
|
l.Warn("Esto es un mensage")
|
|
|
|
}
|
|
|
|
//time.Sleep(1000 * time.Millisecond)
|
|
cl()
|
|
*/
|
|
}
|