-
Notifications
You must be signed in to change notification settings - Fork 1
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
Improved graphtrace #396
Improved graphtrace #396
Conversation
tools/dp_graphtrace/dp_graphtrace.c
Outdated
// try to also handle most of the rest (some are not possible, like KILL) | ||
for (int i = 1; i < _NSIG; ++i) | ||
signal(i, signal_handler); | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@guvenc Can you take a look at this block? We at least need to add SIGPIPE for dp_graphtrace|head
etc., but it would be safer to handle all signals.
But I was unable to find a better solution than to just iterate like this. But then some signals cannot be handled.
So I could either exhaustively add them with a check, or just make sure the essential ones are setup and leave the rest to chance?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hah actually not that good an idea, as SIGSEGV will get caught in there too. I guess we just need to add exhaustively those that can be encountered in operations...
ff8e4b3
to
2d4da81
Compare
6ae80b5
to
8f4eaa5
Compare
8f4eaa5
to
c2137af
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks
As we started using it in operations, I did some improvements on the graphtrace tool:
dp_graphtrace | head
ordp_graphtrace | grep
)Graphtrace successfully disabled in dp-service
tostderr
(because stdout will be grepped often)--stop
to at least have a way to stop manually (e.g. for when the above message is not confirmed)PORT ## >> rx
andtx >> PORT ##
by default--drops
to log also dropped packets (to match them toPORT ## >> rx
when there is notx >> PORT
--nodes
to log the full graph traversal like the original tool diddpservice-dump
as discussed. The rest of the renaming is part of Update DPDK to 22.11 #385dp_conf_generate.py
that can now easily serve multiple tools and (non-generated) code duplication is minimized.Stuff left for the followup PR:
Unfortunately the
dp_conf_generate.py
change is the most verbose in diffs, but going by commits you can just skim that part.