diff --git a/pkg/events/derive/symbols_collision.go b/pkg/events/derive/symbols_collision.go index e7eb3216138b..4b4181d59696 100644 --- a/pkg/events/derive/symbols_collision.go +++ b/pkg/events/derive/symbols_collision.go @@ -1,6 +1,7 @@ package derive import ( + "errors" "github.com/hashicorp/golang-lru/simplelru" "golang.org/x/exp/maps" @@ -182,15 +183,19 @@ func (gen *SymbolsCollisionArgsGenerator) findShObjsCollisions( // get exported symbols from the shared object BEING loaded loadingShObj.exportedSymbols, err = gen.soLoader.GetExportedSymbols(loadingShObj.ObjInfo) if err != nil { + // High level languages like Java might load non-ELF files + // There is no need to log errors for such cases + var notElfErr *sharedobjs.UnsupportedFileError + if errors.As(err, ¬ElfErr) { + return nil, nil + } // TODO: rate limit frequent errors for overloaded envs _, ok := gen.returnedErrorsMap[err.Error()] if !ok { gen.returnedErrorsMap[err.Error()] = true - logger.Warnw("symbols_loaded", "object loaded", loadingShObj.ObjInfo, "error", err.Error()) - } else { logger.Debugw("symbols_loaded", "object loaded", loadingShObj.ObjInfo, "error", err.Error()) } - return nil, errfmt.WrapError(err) + return nil, nil } loadingShObj.FilterSymbols(gen.symbolsBlacklistMap) // del symbols NOT in blacklist loadingShObj.FilterOutSymbols(gen.symbolsWhitelistMap) // del symbols IN the white list diff --git a/pkg/events/derive/symbols_loaded.go b/pkg/events/derive/symbols_loaded.go index 6afcf3ee2848..2a11e4054c57 100644 --- a/pkg/events/derive/symbols_loaded.go +++ b/pkg/events/derive/symbols_loaded.go @@ -144,8 +144,6 @@ func (symbsLoadedGen *symbolsLoadedEventGenerator) deriveArgs( _, ok := symbsLoadedGen.returnedErrors[err.Error()] if !ok { symbsLoadedGen.returnedErrors[err.Error()] = true - logger.Warnw("symbols_loaded", "object loaded", loadingObjectInfo, "error", err.Error()) - } else { logger.Debugw("symbols_loaded", "object loaded", loadingObjectInfo, "error", err.Error()) } return nil, nil