-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Filterx function framework + example #18
Filterx function framework + example #18
Commits on Dec 5, 2023
-
generic-number: move "precision" member to pack the struct into 16 bytes
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c8257ce - Browse repository at this point
Copy the full SHA c8257ceView commit details -
Configuration menu - View commit details
-
Copy full SHA for d068679 - Browse repository at this point
Copy the full SHA d068679View commit details -
Configuration menu - View commit details
-
Copy full SHA for d548878 - Browse repository at this point
Copy the full SHA d548878View commit details -
Configuration menu - View commit details
-
Copy full SHA for f003339 - Browse repository at this point
Copy the full SHA f003339View commit details -
cfg-lex.l: add cfg_lexer_{push,pop}_filterx_state()
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 8d23901 - Browse repository at this point
Copy the full SHA 8d23901View commit details -
cfg-lexer.c: start filterx state in LL_CONTEXT_FILTERX
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for d69e582 - Browse repository at this point
Copy the full SHA d69e582View commit details -
cfg-lex.l: use strict identifier pattern for filterx mode
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 36d00a6 - Browse repository at this point
Copy the full SHA 36d00a6View commit details -
cfg-lex.l: drop the leading ignored characters from tokens
The lexer drops whitespace and leading commas but they should not make it into token values. Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 007be25 - Browse repository at this point
Copy the full SHA 007be25View commit details -
filter-expr-parser: move operators to have dedicated tokens at the le…
…xer level Previously everything was captured as LL_IDENTIFIER, operators as well, and then mapped to tokens using the keyword mechanism. Since I'd like to make the LL_IDENTIFIER pattern stricter, that wouldn't allow typical operator characters into LL_IDENTIFIERS, so these should be recognized at the lexer level. NOTE: this does not include the spelled out operators like "lt" for "<", those remain LL_IDENTIFIER and are continued to be mapped using the keyword mechanism. Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for f133784 - Browse repository at this point
Copy the full SHA f133784View commit details -
filterx: initial skeleton for filterx expressions
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 70fd2b7 - Browse repository at this point
Copy the full SHA 70fd2b7View commit details -
filterx: add FilterXObject base class
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 07a4f89 - Browse repository at this point
Copy the full SHA 07a4f89View commit details -
filterx: add FilterXExpr base class
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for d15187a - Browse repository at this point
Copy the full SHA d15187aView commit details -
filterx: add object freezing mechanism
Some objects can be used by multiple threads (e.g. the ones created as literals during configuration parsing). Our ref count is not atomic and I don't intend to make it one. By making an object "frozen" it's reference count is set to an extremal value and from then on, ref/unref does not change the refcount. Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for d500fca - Browse repository at this point
Copy the full SHA d500fcaView commit details -
filterx: add object wrapper for primitive types
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a8e9b75 - Browse repository at this point
Copy the full SHA a8e9b75View commit details -
filterx: add literal expression
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 3a490d0 - Browse repository at this point
Copy the full SHA 3a490d0View commit details -
filterx: add FilterXScope, the caching of unmarshalled values
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 2c386bb - Browse repository at this point
Copy the full SHA 2c386bbView commit details -
filterx: add FilterXEval, the evaluation framework
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 79586a7 - Browse repository at this point
Copy the full SHA 79586a7View commit details -
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 36b8477 - Browse repository at this point
Copy the full SHA 36b8477View commit details -
filterx: glue filterx expressions to the log pipeline
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for f8a3718 - Browse repository at this point
Copy the full SHA f8a3718View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7efdf2a - Browse repository at this point
Copy the full SHA 7efdf2aView commit details -
filterx: add null object and null literal
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for ce7bcd5 - Browse repository at this point
Copy the full SHA ce7bcd5View commit details -
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 70ad43a - Browse repository at this point
Copy the full SHA 70ad43aView commit details -
filterx: add JSON object and JSON literal
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 9b127e3 - Browse repository at this point
Copy the full SHA 9b127e3View commit details -
filterx: add add datetime object
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 03112b1 - Browse repository at this point
Copy the full SHA 03112b1View commit details -
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 5fe3de9 - Browse repository at this point
Copy the full SHA 5fe3de9View commit details -
filterx: add FilterXMessageValue to encapsulate a (value, type) pair
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 8b20602 - Browse repository at this point
Copy the full SHA 8b20602View commit details -
filterx: implement template expressions
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 28d9b5c - Browse repository at this point
Copy the full SHA 28d9b5cView commit details -
filterx: add boolean algebra between expressions
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 1b26ea6 - Browse repository at this point
Copy the full SHA 1b26ea6View commit details -
filterx: add getattr/setattr for objects
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 25a1e7e - Browse repository at this point
Copy the full SHA 25a1e7eView commit details -
filterx: add assignment expr and grammar
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c0ae245 - Browse repository at this point
Copy the full SHA c0ae245View commit details -
filterx: add comparison expr and grammar
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for b046e06 - Browse repository at this point
Copy the full SHA b046e06View commit details -
filterx: add template specialization for literal/trivial cases
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 6fb38f4 - Browse repository at this point
Copy the full SHA 6fb38f4View commit details -
filterx: extract literal_object rule in the grammar
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 8a2750d - Browse repository at this point
Copy the full SHA 8a2750dView commit details -
filterx: freeze objects related to literal expressions
These objects may be used by multiple threads, as they are allocated at parsing time. Make sure they don't get freed, nor do we race on their ref_cnt by freezing them. Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for f0d8b90 - Browse repository at this point
Copy the full SHA f0d8b90View commit details -
filterx: fix up filterx Makefiles
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 293fbf5 - Browse repository at this point
Copy the full SHA 293fbf5View commit details -
light: add tests for the filterx language
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 7f2f70d - Browse repository at this point
Copy the full SHA 7f2f70dView commit details
Commits on Dec 12, 2023
-
correlation: Fix matching expression for NLSTRING
`node_to_insert` seems to only contain a single patterndb expression in all other examples, so align with them. Signed-off-by: Romain Tartière <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 5f9e1ef - Browse repository at this point
Copy the full SHA 5f9e1efView commit details -
correlation: Capture the end of a message with NLSTRING
When parsing a message, NLSTRING stops when it finds a `\n` char. If the message does not contain any `\n` char, the matching fail and the message portion is not matched. However, the documentation says that: > For single-line messages, NLSTRING is equivalent with ANYSTRING In order to match what the documentation say, we need to not return an error when `\n` is not found, and instead capture the end of the message. Signed-off-by: Romain Tartière <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for b6fd03b - Browse repository at this point
Copy the full SHA b6fd03bView commit details -
type-hinting: support explicit value length
Sometimes we are casting strings with an explicit length value, but the type hinting code simply assumed that everything was NUL terminated, which is not the case for indirect values. Signed-off-by: Balazs Scheidler <[email protected]> Signed-off-by: shifter <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 0a9a511 - Browse repository at this point
Copy the full SHA 0a9a511View commit details -
loggen: print_statistics(): make initial timestamp calculation easier…
… to follow Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for caf6414 - Browse repository at this point
Copy the full SHA caf6414View commit details -
loggen: do not check exit condition for every message generated
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 1166a74 - Browse repository at this point
Copy the full SHA 1166a74View commit details -
loggen: do not check rate limit for every message sent
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for fb8c86a - Browse repository at this point
Copy the full SHA fb8c86aView commit details -
loggen: avoid generating the timestamp for every message sent
As it has significant overhead. Do it a few times every second. Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c9e88ad - Browse repository at this point
Copy the full SHA c9e88adView commit details -
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c4f86f0 - Browse repository at this point
Copy the full SHA c4f86f0View commit details -
filterx: implement template expressions
Signed-off-by: Balazs Scheidler <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c40df77 - Browse repository at this point
Copy the full SHA c40df77View commit details -
Configuration menu - View commit details
-
Copy full SHA for f9d178f - Browse repository at this point
Copy the full SHA f9d178fView commit details -
Configuration menu - View commit details
-
Copy full SHA for d51afb5 - Browse repository at this point
Copy the full SHA d51afb5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1fd6763 - Browse repository at this point
Copy the full SHA 1fd6763View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5c76ee2 - Browse repository at this point
Copy the full SHA 5c76ee2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 47f807a - Browse repository at this point
Copy the full SHA 47f807aView commit details -
Configuration menu - View commit details
-
Copy full SHA for c162b5c - Browse repository at this point
Copy the full SHA c162b5cView commit details -
filterx: expose FilterXExpression's free method
Signed-off-by: shifter <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for ec75e2c - Browse repository at this point
Copy the full SHA ec75e2cView commit details -
filterx: add pluginable function
Signed-off-by: shifter <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 65a173c - Browse repository at this point
Copy the full SHA 65a173cView commit details -
examples: add filterx function plugin example
Signed-off-by: shifter <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for eb2d177 - Browse repository at this point
Copy the full SHA eb2d177View commit details -
Configuration menu - View commit details
-
Copy full SHA for 77f34e2 - Browse repository at this point
Copy the full SHA 77f34e2View commit details