MCPcopy Create free account
hub / github.com/rabbitstack/fibratus / newSequenceState

Function newSequenceState

pkg/rules/sequence.go:126–146  ·  view source on GitHub ↗
(f filter.Filter, c *config.FilterConfig, psnap ps.Snapshotter)

Source from the content-addressed store, hash-verified

124}
125
126func newSequenceState(f filter.Filter, c *config.FilterConfig, psnap ps.Snapshotter) *sequenceState {
127 ss := &sequenceState{
128 filter: f,
129 seq: f.GetSequence(),
130 name: c.Name,
131 maxSpan: f.GetSequence().MaxSpan,
132 partials: make(map[int][]*event.Event),
133 states: make(map[fsm.State]bool),
134 matches: make(map[int]*event.Event),
135 exprs: make(map[int]string),
136 spanDeadlines: make(map[fsm.State]*time.Timer),
137 initialState: sequenceInitialState,
138 psnap: psnap,
139 }
140
141 ss.initFSM()
142
143 ss.configureFSM()
144
145 return ss
146}
147
148func (s *sequenceState) events() []*event.Event {
149 s.mmu.RLock()

Callers 14

CompileMethod · 0.85
TestSequenceStateFunction · 0.85
TestSimpleSequenceFunction · 0.85
TestSequenceMultiLinksFunction · 0.85
TestComplexSequenceFunction · 0.85
TestSequenceOOOFunction · 0.85
TestSequenceGCFunction · 0.85
TestSequenceExpireFunction · 0.85
TestSequenceBoundFieldsFunction · 0.85

Calls 3

initFSMMethod · 0.95
configureFSMMethod · 0.95
GetSequenceMethod · 0.65

Tested by 13

TestSequenceStateFunction · 0.68
TestSimpleSequenceFunction · 0.68
TestSequenceMultiLinksFunction · 0.68
TestComplexSequenceFunction · 0.68
TestSequenceOOOFunction · 0.68
TestSequenceGCFunction · 0.68
TestSequenceExpireFunction · 0.68
TestSequenceBoundFieldsFunction · 0.68