github.com/alibaba/ilogtail/pkg@v0.0.0-20250526110833-c53b480d046c/helper/k8smeta/k8s_meta_store_interface.go (about)

     1  package k8smeta
     2  
     3  import (
     4  	"context"
     5  	"runtime"
     6  
     7  	"github.com/alibaba/ilogtail/pkg/logger"
     8  )
     9  
    10  //revive:disable:exported
    11  type K8sMetaEvent struct {
    12  	//revive:enable:exported
    13  	EventType string
    14  	Object    *ObjectWrapper
    15  }
    16  
    17  type ObjectWrapper struct {
    18  	ResourceType      string
    19  	Raw               interface{}
    20  	FirstObservedTime int64
    21  	LastObservedTime  int64
    22  	Deleted           bool
    23  }
    24  
    25  type IdxFunc func(obj interface{}) ([]string, error)
    26  
    27  type SendFunc func(events []*K8sMetaEvent)
    28  
    29  func panicRecover() {
    30  	if err := recover(); err != nil {
    31  		trace := make([]byte, 2048)
    32  		runtime.Stack(trace, true)
    33  		logger.Error(context.Background(), "PLUGIN_RUNTIME_ALARM", "k8s meta panic error", err, "stack", string(trace))
    34  	}
    35  }