github.com/infraboard/keyauth@v0.8.1/client/interceptor/audit.go (about)

     1  package interceptor
     2  
     3  // func SendOperateEvent(req, resp interface{}, hd *event.Header, od *event.OperateEventData) error {
     4  // 	if od == nil {
     5  // 		return nil
     6  // 	}
     7  
     8  // 	reqd, err := json.Marshal(req)
     9  // 	if err != nil {
    10  // 		return fmt.Errorf("marshal req for event error, %s", err)
    11  // 	}
    12  
    13  // 	respd, err := json.Marshal(resp)
    14  // 	if err != nil {
    15  // 		return fmt.Errorf("marshal resp for event error, %s", err)
    16  // 	}
    17  
    18  // 	od.Request = string(reqd)
    19  // 	od.Response = string(respd)
    20  // 	od.Cost = time.Now().UnixMilli() - hd.Time
    21  // 	oe, err := event.NewProtoOperateEvent(od)
    22  // 	if err != nil {
    23  // 		return fmt.Errorf("new operate event error, %s", err)
    24  // 	}
    25  // 	oe.Header = hd
    26  
    27  // 	if err := bus.Pub(oe); err != nil {
    28  // 		return fmt.Errorf("pub audit log error, %s", err)
    29  // 	}
    30  
    31  // 	return nil
    32  // }
    33  
    34  // func newOperateEventData(e *httpb.Entry, tk *token.Token) *event.OperateEventData {
    35  // 	od := &event.OperateEventData{
    36  // 		Action:       e.GetLableValue("action"),
    37  // 		FeaturePath:  e.Path,
    38  // 		ResourceType: e.Resource,
    39  // 		ServiceName:  version.ServiceName,
    40  // 	}
    41  
    42  // 	if tk != nil {
    43  // 		// 补充审计的用户信息
    44  // 		od.Account = tk.Account
    45  // 		od.UserDomain = tk.Domain
    46  // 		od.Session = tk.SessionId
    47  // 		od.UserType = tk.UserType.String()
    48  // 	}
    49  // 	return od
    50  // }
    51  
    52  // func newEventHeaderFromHTTP(r *http.Request) *event.Header {
    53  // 	hd := event.NewHeader()
    54  // 	hd.IpAddress = request.GetRemoteIP(r)
    55  // 	hd.UserAgent = r.UserAgent()
    56  // 	hd.RequestId = r.Header.Get("RequestIdHeader")
    57  // 	hd.Source = version.ServiceName
    58  // 	hd.Meta["host"], _ = os.Hostname()
    59  // 	return hd
    60  // }