在审计日志的页面增加详情和访问协议

This commit is contained in:
lanrenwo
2022-07-15 11:27:54 +08:00
parent 8837a07fac
commit 6a69377568
3 changed files with 48 additions and 24 deletions

View File

@@ -1,7 +1,9 @@
package handler
import (
"crypto/md5"
"encoding/binary"
"encoding/hex"
"github.com/bjdgyc/anylink/base"
"github.com/bjdgyc/anylink/dbdata"
@@ -127,7 +129,7 @@ func logAudit(cSess *sessdata.ConnSession, pl *sessdata.Payload) {
ipDst := waterutil.IPv4Destination(pl.Data)
ipPort := waterutil.IPv4DestinationPort(pl.Data)
b := getByte290()
b := getByte51()
key := *b
copy(key[:16], ipSrc)
copy(key[16:32], ipDst)
@@ -139,9 +141,9 @@ func logAudit(cSess *sessdata.ConnSession, pl *sessdata.Payload) {
}
key[34] = byte(accessProto)
if info != "" {
copy(key[35:35+len(info)], info)
md5Sum := md5.Sum([]byte(info))
copy(key[35:51], hex.EncodeToString(md5Sum[:]))
}
s := utils.BytesToString(key)
nu := utils.NowSec().Unix()
@@ -149,7 +151,7 @@ func logAudit(cSess *sessdata.ConnSession, pl *sessdata.Payload) {
v, ok := cSess.IpAuditMap[s]
if ok && nu-v < int64(base.Cfg.AuditInterval) {
// 回收byte对象
putByte290(b)
putByte51(b)
return
}

View File

@@ -92,20 +92,20 @@ type BufferPool struct {
sync.Pool
}
// 长度 290 对象
var byte290Pool = sync.Pool{
// 长度 51 小对象
var byte51Pool = sync.Pool{
New: func() interface{} {
b := make([]byte, 290)
b := make([]byte, 51)
return &b
},
}
func getByte290() *[]byte {
b := byte290Pool.Get().(*[]byte)
func getByte51() *[]byte {
b := byte51Pool.Get().(*[]byte)
return b
}
func putByte290(b *[]byte) {
*b = (*b)[:290]
byte290Pool.Put(b)
func putByte51(b *[]byte) {
*b = (*b)[:51]
byte51Pool.Put(b)
}