Difference between revisions of "DEBUGMSG"
From Net-SNMP Wiki
(→DEBUG) |
|||
| Line 11: | Line 11: | ||
This should be the most common debugging statement used. It should be used for complete debugging lines. | This should be the most common debugging statement used. It should be used for complete debugging lines. | ||
| − | == | + | == DEBUGMSG == |
For creating lines a piece at a time, start with DEBUGMSGTL followed by DEBUGMSG macros until you hit the newline ("\n"). This is a stupid example but shows how it works: | For creating lines a piece at a time, start with DEBUGMSGTL followed by DEBUGMSG macros until you hit the newline ("\n"). This is a stupid example but shows how it works: | ||
int total = 0; | int total = 0; | ||
| − | DEBUGMSGTL(("token", "Calculating | + | DEBUGMSGTL(("token", "Calculating running total: ")); |
for(int i = 0; i < 5; i++) { | for(int i = 0; i < 5; i++) { | ||
total = total + i; | total = total + i; | ||
| + | DEBUGMSG(("token", " %d", total)); | ||
| + | } | ||
| + | DEBUGMSG(("token", "\n")); | ||
| + | |||
| + | == DEBUGMSGOID == | ||
| + | |||
| + | For printing OIDs you can use the DEBUGOID macro: | ||
| + | |||
| + | oid my_oid[] = { 1, 3, 6, 1} | ||
| + | size_t my_oid_len = 4; | ||
| + | |||
| + | DEBUGMSGTL(("token", "this is my oid: ")); | ||
| + | DEBUGMSGOID(("token", my_oid, my_oid_len)); | ||
| + | DEBUGMSG(("token", "\n")); | ||
Revision as of 14:50, 22 June 2010
If you want to add Debugging output statements to your own code, you can use the following conventions:
DEBUGMSGTL
DEBUGMSGTL(("token", "statement of some kind: %s\n", "with printf arguments"));
This actually outputs two lines:
- A "trace" line showing where in the source it came from (that's what the T stands for)
- Your debugging line (when -Dtoken is turned on)
This should be the most common debugging statement used. It should be used for complete debugging lines.
DEBUGMSG
For creating lines a piece at a time, start with DEBUGMSGTL followed by DEBUGMSG macros until you hit the newline ("\n"). This is a stupid example but shows how it works:
int total = 0;
DEBUGMSGTL(("token", "Calculating running total: "));
for(int i = 0; i < 5; i++) {
total = total + i;
DEBUGMSG(("token", " %d", total));
}
DEBUGMSG(("token", "\n"));
DEBUGMSGOID
For printing OIDs you can use the DEBUGOID macro:
oid my_oid[] = { 1, 3, 6, 1}
size_t my_oid_len = 4;
DEBUGMSGTL(("token", "this is my oid: "));
DEBUGMSGOID(("token", my_oid, my_oid_len));
DEBUGMSG(("token", "\n"));