diff --git a/pkg/server/server.go b/pkg/server/server.go index 40cab9fc488..d87535ab509 100644 --- a/pkg/server/server.go +++ b/pkg/server/server.go @@ -166,14 +166,12 @@ func (s *Server) GetEventsWG(request *tetragon.GetEventsRequest, server tetragon // Filter the GetEventsResponse fields filters := filters.FieldFiltersFromGetEventsRequest(request) filterEvent := event - if len(filters) > 0 && filterEvent.GetProcessExec() != nil { // this is an exec event and we have fieldFilters - // We need a copy of the exec event as modifing the original message + if len(filters) > 0 && (filterEvent.GetProcessExec() != nil || filterEvent.GetProcessExit() != nil) { // this is an exec or exit event and we have fieldFilters + // We need a copy of the exec or exit event as modifing the original message // can cause issues in the process cache (we keep a copy of that message there). filterEvent = proto.Clone(event).(*tetragon.GetEventsResponse) } for _, filter := range filters { - // we need not to change res - // maybe only for exec events filter.Filter(filterEvent) }