MCPcopy Create free account
hub / github.com/astercloud/aster / sortEvents

Method sortEvents

pkg/security/audit.go:589–615  ·  view source on GitHub ↗

sortEvents 排序事件

(events []*AuditEvent, orderBy string, desc bool)

Source from the content-addressed store, hash-verified

587
588// sortEvents 排序事件
589func (al *InMemoryAuditLog) sortEvents(events []*AuditEvent, orderBy string, desc bool) {
590 // 简化排序实现,实际应用中应该使用更高效的排序算法
591 if len(events) <= 1 {
592 return
593 }
594
595 switch orderBy {
596 case "timestamp":
597 if desc {
598 for i := range len(events) - 1 {
599 for j := i + 1; j < len(events); j++ {
600 if events[i].Timestamp.Before(events[j].Timestamp) {
601 events[i], events[j] = events[j], events[i]
602 }
603 }
604 }
605 } else {
606 for i := range len(events) - 1 {
607 for j := i + 1; j < len(events); j++ {
608 if events[i].Timestamp.After(events[j].Timestamp) {
609 events[i], events[j] = events[j], events[i]
610 }
611 }
612 }
613 }
614 }
615}
616
617// GetEvent 获取事件
618func (al *InMemoryAuditLog) GetEvent(eventID string) (*AuditEvent, error) {

Callers 1

QueryEventsMethod · 0.95

Calls

no outgoing calls

Tested by

no test coverage detected