mirror of
https://github.com/zr-hebo/sniffer-agent.git
synced 2025-08-07 14:39:02 +08:00
从proxy获取client ip地址
This commit is contained in:
@@ -15,9 +15,10 @@ type MysqlSession struct {
|
||||
connectionID *string
|
||||
visitUser *string
|
||||
visitDB *string
|
||||
clientAlias *string
|
||||
clientHost *string
|
||||
clientIP *string
|
||||
clientPort int
|
||||
srcIP *string
|
||||
srcPort int
|
||||
serverIP *string
|
||||
serverPort int
|
||||
stmtBeginTime int64
|
||||
@@ -47,13 +48,14 @@ type prepareInfo struct {
|
||||
}
|
||||
|
||||
func NewMysqlSession(
|
||||
sessionKey, clientAlias, clientIP *string, clientPort int, serverIP *string, serverPort int,
|
||||
sessionKey, clientIP *string, clientPort int, srcIP *string, srcPort int, serverIP *string, serverPort int,
|
||||
receiver chan model.QueryPiece) (ms *MysqlSession) {
|
||||
ms = &MysqlSession{
|
||||
connectionID: sessionKey,
|
||||
clientAlias: clientAlias,
|
||||
clientHost: clientIP,
|
||||
clientIP: clientIP,
|
||||
clientPort: clientPort,
|
||||
srcIP: srcIP,
|
||||
srcPort: srcPort,
|
||||
serverIP: serverIP,
|
||||
serverPort: serverPort,
|
||||
stmtBeginTime: time.Now().UnixNano() / millSecondUnit,
|
||||
@@ -335,11 +337,13 @@ func filterQueryPieceBySQL(mqp *model.PooledMysqlQueryPiece, querySQL []byte) (*
|
||||
}
|
||||
|
||||
func (ms *MysqlSession) composeQueryPiece() (mqp *model.PooledMysqlQueryPiece) {
|
||||
clientIP := ms.clientAlias
|
||||
clientIP := ms.clientIP
|
||||
clientPort := ms.clientPort
|
||||
if clientIP == nil || len(*clientIP) < 1 {
|
||||
clientIP = ms.clientHost
|
||||
clientIP = ms.srcIP
|
||||
clientPort = ms.serverPort
|
||||
}
|
||||
return model.NewPooledMysqlQueryPiece(
|
||||
ms.connectionID, ms.clientHost, ms.visitUser, ms.visitDB, ms.clientHost, ms.serverIP,
|
||||
ms.clientPort, ms.serverPort, communicator.GetMysqlCapturePacketRate(), ms.stmtBeginTime)
|
||||
ms.connectionID, clientIP, ms.visitUser, ms.visitDB, ms.serverIP,
|
||||
clientPort, ms.serverPort, communicator.GetMysqlCapturePacketRate(), ms.stmtBeginTime)
|
||||
}
|
||||
|
Reference in New Issue
Block a user