From 1ba7144578b8371842d9f6ef4159ff8c97932842 Mon Sep 17 00:00:00 2001
From: yanghui <yanghui@aiotlink.com>
Date: 星期五, 23 四月 2021 10:59:58 +0800
Subject: [PATCH] add para
---
logc.go | 87 ++++++++++++++++++++++++++++++-------------
1 files changed, 60 insertions(+), 27 deletions(-)
diff --git a/logc.go b/logc.go
index 7b21d31..9a978df 100644
--- a/logc.go
+++ b/logc.go
@@ -2,6 +2,8 @@
import (
"basic.com/valib/bhomebus.git"
+ "bytes"
+ "net/url"
"encoding/json"
"fmt"
@@ -18,13 +20,13 @@
)
const (
- TypeManual = iota + 1
- TypeLoginOut
- TypePollInfo
- TypeStackInfo
- TypeWarnInfo
- TypeRunInfo
- TypeSysInfo
+ TypeManual = iota + 1 //浜哄伐鎿嶄綔鏃ュ織,绯荤粺鍗囩骇,鎽勫儚鏈轰慨鏀�,绠楁硶淇敼...
+ TypeLoginOut //鐧诲綍鐧诲嚭鏃ュ織
+ TypePollInfo //杞贰鎽勫儚鏈哄強鍏跺搴旂殑绠楁硶
+ TypeStackInfo //鏁版嵁鏍堝鐞嗘儏鍐�
+ TypeWarnInfo //鏁呴殰淇℃伅
+ TypeRunInfo //杩愯鎯呭喌,gpu,mem,cpu
+ TypeSysInfo //绯荤粺鍙傛暟鍙樻洿,ip,server name,寮�鍏虫満淇℃伅
)
type LogInfo struct {
@@ -42,35 +44,59 @@
var (
msgChan chan []byte
bhSock *bhomebus.Socket
+ pubFn func(nodes []bhomebus.NetNode, topic string, data []byte, milliseconds int) int
ProcName string
ProcID string
)
-func Init(sock *bhomebus.Socket, procId string, procName string) {
+func init() {
+
+}
+
+func InitBySock(sock *bhomebus.Socket, procId string, procName string) bool {
msgChan = make(chan []byte, 100)
ProcName = procName
ProcID = procId
bhSock = sock
+ if bhSock == nil {
+ return false
+ }
go saveLoop()
+
+ return true
}
-func Save(level int, logType int,template string, v ...interface{}) {
- cache(level, logType, "", "", template, v)
-}
-
-func SaveManual(level int, logType int, userID string, userName string, template string, v ...interface{}) {
- cache(level, logType, userID, userName, template, v)
-}
-
-func cache(level int, logType int, userID string, userName string, template string, fmtArgs []interface{}) {
- // Format with Sprint, Sprintf, or neither.
- msg := template
- if msg == "" && len(fmtArgs) > 0 {
- msg = fmt.Sprint(fmtArgs...)
- } else if msg != "" && len(fmtArgs) > 0 {
- msg = fmt.Sprintf(template, fmtArgs...)
+func InitByPubFn(fn func(nodes []bhomebus.NetNode, topic string, data []byte, milliseconds int) int,
+ procId string, procName string) bool {
+ msgChan = make(chan []byte, 100)
+ ProcName = procName
+ ProcID = procId
+ pubFn = fn
+ if pubFn == nil {
+ return false
}
+
+ go saveLoop()
+
+ return true
+}
+
+func Save(level int, logType int, v ...interface{}) {
+ cache(level, logType, "", "", v)
+}
+
+func SaveManual(level int, logType int, userID string, userName string, v ...interface{}) {
+ cache(level, logType, userID, userName, v)
+}
+
+func cache(level int, logType int, userID string, userName string, fmtArgs []interface{}) {
+ // Format with Sprint, Sprintf, or neither.
+ msg := ""
+ if len(fmtArgs) > 0 {
+ msg = fmt.Sprint(fmtArgs...)
+ }
+ fmt.Println(msg)
log := LogInfo {
ID: uuid.NewV4().String(),
@@ -102,14 +128,21 @@
select {
case data := <- msgChan:
var nodes []bhomebus.NetNode
- nodes = append(nodes, bhomebus.NetNode{
- Key: 8,
- })
- bhSock.PubTimeout(nodes, LogSaveTopic, data, 1000)
+ nodes = append(nodes, bhomebus.NetNode{})
+ if bhSock != nil {
+ bhSock.PubTimeout(nodes, LogSaveTopic, data, 1000)
+ } else if pubFn != nil {
+ pubFn(nodes, LogSaveTopic, data, 1000)
+ } else {
+ fmt.Println("bhSock nil and pubFn nil")
+ }
+
default:
time.Sleep(10*time.Millisecond)
}
}
}
+func Log(userName, method, path, contentType, module string, body *bytes.Buffer, values url.Values) {
+}
--
Gitblit v1.8.0