Skip to content
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

Add syslog ng visibility into perf stackdumps #433

Open
wants to merge 8 commits into
base: main
Choose a base branch
from

Conversation

bazsi
Copy link
Member

@bazsi bazsi commented Dec 30, 2024

This PR adds filterx expr and logpipe level detail into perf backtraces. It depends on #444

  • perf support is system dependant, now we only run on Linux x86_64, aarch64 would be relatively easy.
  • configure does the checking whether this would be enabled
  • at runtime, we will auto detect if we are running under perf but can also be enabled using a command line switch

@bazsi bazsi force-pushed the add-syslog-ng-visibility-into-perf-stackdumps branch 2 times, most recently from 1f0d5ce to 24d825c Compare January 6, 2025 15:59
@bazsi bazsi force-pushed the add-syslog-ng-visibility-into-perf-stackdumps branch from 24d825c to 0d7227a Compare January 11, 2025 16:35
@bazsi bazsi changed the title WIP: Add syslog ng visibility into perf stackdumps Add syslog ng visibility into perf stackdumps Jan 11, 2025
@bazsi bazsi force-pushed the add-syslog-ng-visibility-into-perf-stackdumps branch 8 times, most recently from f5d90b6 to a2f964b Compare January 17, 2025 09:21
@MrAnno MrAnno self-requested a review January 17, 2025 09:42
bazsi added 8 commits January 18, 2025 08:26
These were originally optional methods, but that means that descendant
classes will not call the one from LogPipe. Let's create that so
we have a spot to initialize perf trampolines.

Signed-off-by: Balazs Scheidler <[email protected]>
When extracting the source text, we need to split the input into lines.
Previously this was done every time we extracted a line of text, causing
the startup to be very slow when I enabled source extraction for
every FilterXExpr instance.

This patch causes the result of that g_strsplit() call to be saved,
effectively using more memory startup, but being a lot more efficient (e.g.
startup within a second instead of 20 seconds or so).


Signed-off-by: Balazs Scheidler <[email protected]>
In case an expr is optimized we might be setting the location
of exprs multiple times, prepare for this case by freeing expr_text
before setting it first.

Signed-off-by: Balazs Scheidler <[email protected]>
@bazsi bazsi force-pushed the add-syslog-ng-visibility-into-perf-stackdumps branch from a2f964b to 73157be Compare January 18, 2025 07:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant