MCPcopy Create free account
hub / github.com/alibaba/loongcollector / ClearProcessExpiredCache

Method ClearProcessExpiredCache

core/ebpf/plugin/ProcessCacheManager.cpp:415–432  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

413}
414
415void ProcessCacheManager::ClearProcessExpiredCache() {
416 if (mInited) {
417 auto now = TimeKeeper::GetInstance()->NowSec();
418 if (now > mLastProcessCacheClearTime + INT32_FLAG(ebpf_process_cache_gc_interval_sec)) {
419 mProcessCache.ClearExpiredCache();
420 mLastProcessCacheClearTime = now;
421 int processCacheSize = mProcessCache.Size();
422 SET_GAUGE(mProcessCacheSize, processCacheSize);
423 SET_GAUGE(mProcessDataMapSize, mProcessDataMap.Size());
424 if (processCacheSize > INT32_FLAG(max_ebpf_process_cache_size)) {
425 mProcessCache.ForceShrink();
426 LOG_WARNING(sLogger,
427 ("process cache size exceed limit, current size",
428 processCacheSize)("after force shrink size", mProcessCache.Size()));
429 }
430 }
431 }
432}
433
434} // namespace logtail::ebpf

Callers 1

pollPerfBuffersMethod · 0.80

Calls 4

NowSecMethod · 0.80
ClearExpiredCacheMethod · 0.80
ForceShrinkMethod · 0.80
SizeMethod · 0.65

Tested by

no test coverage detected