Macros and function definitions to write log messages, and control the logging system.
More...
|
#define | MOD_ROPTIONAL(_l_request, _l_global, fmt,...) |
| Use different logging functions depending on whether request is NULL or not. More...
|
|
#define | RATE_LIMIT(_x) |
| Rate limit messages. More...
|
|
#define | RATE_LIMIT_ENABLED rate_limit_enabled() |
| True if rate limiting is enabled. More...
|
|
#define | RDMARKER(_m, _i, _e) RMARKER(L_DBG, L_DBG_LVL_1, _m, _i, _e) |
| Output string with error marker, showing where format error occurred. More...
|
|
#define | REMARKER(_m, _i, _e) RMARKER(L_DBG_ERR, L_DBG_LVL_1, _m, _i, _e) |
| Output string with error marker, showing where format error occurred. More...
|
|
#define | REXDENT() (request->log.indent -= 2) |
| Exdent (unindent) R* messages by one level. More...
|
|
#define | RINDENT() (request->log.indent += 2) |
| Indent R* messages by one level. More...
|
|
#define | RMARKER(_l, _p, _m, _i, _e) radlog_request_marker(_l, _p, request, _m, _i, _e) |
| Output string with error marker, showing where format error occurred. More...
|
|
#define | ROPTIONAL(_l_request, _l_global, fmt,...) |
| Use different logging functions depending on whether request is NULL or not. More...
|
|
|
Write to the global log.
Messages will always be written irrespective of the debugging level set with -x or -X .
- Warning
- If a REQUEST * is NOT available, these macros MUST be used.
- Note
- These macros should only be used for important global events.
Debug categories
Name | Syslog severity | Colour/style | When to use |
AUTH | LOG_NOTICE | Bold | Never - Deprecated |
ACCT | LOG_NOTICE | Bold | Never - Deprecated |
PROXY | LOG_NOTICE | Bold | Never - Deprecated |
INFO | LOG_INFO | Bold | TBD |
WARN | LOG_WARNING | Yellow | Warnings. Impending resource exhaustion, resource exhaustion |
ERROR | LOG_ERR | Red | Critical server errors. Malformed queries, failed operations, connection errors, packet processing errors |
|
#define | AUTH(fmt,...) radlog(L_AUTH, fmt, ## __VA_ARGS__) |
|
#define | ACCT(fmt,...) radlog(L_ACCT, fmt, ## __VA_ARGS__) |
|
#define | PROXY(fmt,...) radlog(L_PROXY, fmt, ## __VA_ARGS__) |
|
#define | INFO(fmt,...) radlog(L_INFO, fmt, ## __VA_ARGS__) |
|
#define | WARN(fmt,...) radlog(L_WARN, fmt, ## __VA_ARGS__) |
|
#define | ERROR(fmt,...) radlog(L_ERR, fmt, ## __VA_ARGS__) |
|
|
Write debugging messages to the global log.
Messages will be written if the debug level is high enough.
Debug categories
Name | Syslog severity | Colour/style | When to use |
DEBUG | LOG_DEBUG | Regular | Normal debug output |
Debug levels
Level | Debug arguments | Macro(s) enabled | When to use |
1 | -x | DEBUG | Never - Deprecated |
2 | -xx or -X | DEBUG, DEBUG2 | Interactions with external entities. Connection management, control socket, triggers, etc... |
3 | -xxx or -Xx | DEBUG, DEBUG2, DEBUG3 | Lower priority events. Polling for detail files, cleanups, etc... |
4 | -xxxx or -Xxx | DEBUG, DEBUG2, DEBUG3, DEBUG4 | Internal server state debugging. |
|
#define | DEBUG_ENABLED debug_enabled(L_DBG, L_DBG_LVL_1) |
| True if global debug level 1 messages are enabled. More...
|
|
#define | DEBUG_ENABLED2 debug_enabled(L_DBG, L_DBG_LVL_2) |
| True if global debug level 1-2 messages are enabled. More...
|
|
#define | DEBUG_ENABLED3 debug_enabled(L_DBG, L_DBG_LVL_3) |
| True if global debug level 1-3 messages are enabled. More...
|
|
#define | DEBUG_ENABLED4 debug_enabled(L_DBG, L_DBG_LVL_MAX) |
| True if global debug level 1-4 messages are enabled. More...
|
|
#define | _SL(_l, _p, _f,...) if (rad_debug_lvl >= _p) radlog(_l, _f, ## __VA_ARGS__) |
|
#define | DEBUG(fmt,...) _SL(L_DBG, L_DBG_LVL_1, fmt, ## __VA_ARGS__) |
|
#define | DEBUG2(fmt,...) _SL(L_DBG, L_DBG_LVL_2, fmt, ## __VA_ARGS__) |
|
#define | DEBUG3(fmt,...) _SL(L_DBG, L_DBG_LVL_3, fmt, ## __VA_ARGS__) |
|
#define | DEBUG4(fmt,...) _SL(L_DBG, L_DBG_LVL_MAX, fmt, ## __VA_ARGS__) |
|
|
Write to the request log, or the global log if a request logging function is not set.
Messages will always be written irrespective of the debugging level set with -x or -X .
- Note
- Automatically prepends date (at lvl >= 3), request number, and module, to the log message.
-
If a REQUEST * is available, these macros should be used.
-
These macros should only be used for important global events.
Debug categories
Name | Syslog severity | Colour/style | When to use |
RAUTH | LOG_NOTICE | Bold | Never - Deprecated |
RACCT | LOG_NOTICE | Bold | Never - Deprecated |
RPROXY | LOG_NOTICE | Bold | Never - Deprecated |
RINFO | LOG_INFO | Bold | TBD |
RWARN | LOG_WARNING | Yellow/Bold | Warnings. Impending resource exhaustion, or resource exhaustion. |
RERROR | LOG_ERR | Red/Bold | Critical server errors. Malformed queries, failed operations, connection errors, packet processing errors. |
|
#define | RAUTH(fmt,...) radlog_request(L_AUTH, L_DBG_LVL_OFF, request, fmt, ## __VA_ARGS__) |
|
#define | RACCT(fmt,...) radlog_request(L_ACCT, L_DBG_LVL_OFF, request, fmt, ## __VA_ARGS__) |
|
#define | RPROXY(fmt,...) radlog_request(L_PROXY, L_DBG_LVL_OFF, request, fmt, ## __VA_ARGS__) |
|
#define | RINFO(fmt,...) radlog_request(L_INFO, L_DBG_LVL_OFF, request, fmt, ## __VA_ARGS__) |
|
#define | RWARN(fmt,...) radlog_request(L_DBG_WARN, L_DBG_LVL_OFF, request, fmt, ## __VA_ARGS__) |
|
#define | RERROR(fmt,...) radlog_request_error(L_DBG_ERR, L_DBG_LVL_OFF, request, fmt, ## __VA_ARGS__) |
|
|
Write debug messages to the request log.
Messages will only be written if a request log function is set and the request or global debug level is high enough.
- Note
- Automatically prepends date (at lvl >= 3), request number, and module, to the log message.
Debug categories
Name | Syslog severity | Colour and style | When to use |
RDEBUG* | LOG_DEBUG | Regular | Normal debugging messages |
RIDEBUG* | LOG_DEBUG | Bold | Informational messages. |
RWDEBUG* | LOG_DEBUG | Yellow/Bold | Warnings. Invalid configuration, missing or invalid attributes etc... |
REDEBUG* | LOG_DEBUG | Red/Bold | Errors. Reject messages, bad values etc... |
Debug levels
Level | Debug arguments | Macro(s) enabled | When to use |
1 | -x | R*DEBUG | Never - Deprecated |
2 | -xx or -X | R*DEBUG, R*DEBUG2 | Normal request flow. Operations, Results of queries, or execs, etc... |
3 | -xxx or -Xx | R*DEBUG, R*DEBUG2, R*DEBUG3 | Internal server state or packet input. State machine changes, extra attribute info, etc... |
4 | -xxxx or -Xxx | R*DEBUG, R*DEBUG2, R*DEBUG3, R*DEBUG4 | Verbose internal server state messages or packet input. Hex dumps, structure dumps, pointer values. |
|
#define | RDEBUG_ENABLED radlog_debug_enabled(L_DBG, L_DBG_LVL_1, request) |
| True if request debug level 1 messages are enabled. More...
|
|
#define | RDEBUG_ENABLED2 radlog_debug_enabled(L_DBG, L_DBG_LVL_2, request) |
| True if request debug level 1-2 messages are enabled. More...
|
|
#define | RDEBUG_ENABLED3 radlog_debug_enabled(L_DBG, L_DBG_LVL_3, request) |
| True if request debug level 1-3 messages are enabled. More...
|
|
#define | RDEBUG_ENABLED4 radlog_debug_enabled(L_DBG, L_DBG_LVL_MAX, request) |
| True if request debug level 1-4 messages are enabled. More...
|
|
#define | RDEBUGX(_l, fmt,...) radlog_request(L_DBG, _l, request, fmt, ## __VA_ARGS__) |
|
#define | RDEBUG(fmt,...) if (rad_debug_lvl || request->log.lvl) radlog_request(L_DBG, L_DBG_LVL_1, request, fmt, ## __VA_ARGS__) |
|
#define | RDEBUG2(fmt,...) if (rad_debug_lvl || request->log.lvl) radlog_request(L_DBG, L_DBG_LVL_2, request, fmt, ## __VA_ARGS__) |
|
#define | RDEBUG3(fmt,...) if (rad_debug_lvl || request->log.lvl) radlog_request(L_DBG, L_DBG_LVL_3, request, fmt, ## __VA_ARGS__) |
|
#define | RDEBUG4(fmt,...) if (rad_debug_lvl || request->log.lvl) radlog_request(L_DBG, L_DBG_LVL_MAX, request, fmt, ## __VA_ARGS__) |
|
#define | RIDEBUG(fmt,...) radlog_request(L_INFO, L_DBG_LVL_1, request, fmt, ## __VA_ARGS__) |
|
#define | RIDEBUG2(fmt,...) radlog_request(L_INFO, L_DBG_LVL_2, request, fmt, ## __VA_ARGS__) |
|
#define | RWDEBUG(fmt,...) if (rad_debug_lvl || request->log.lvl) radlog_request(L_DBG_WARN, L_DBG_LVL_1, request, fmt, ## __VA_ARGS__) |
|
#define | RWDEBUG2(fmt,...) if (rad_debug_lvl || request->log.lvl) radlog_request(L_DBG_WARN, L_DBG_LVL_2, request, fmt, ## __VA_ARGS__) |
|
#define | REDEBUG(fmt,...) radlog_request_error(L_DBG_ERR, L_DBG_LVL_1, request, fmt, ## __VA_ARGS__) |
|
#define | REDEBUG2(fmt,...) radlog_request_error(L_DBG_ERR, L_DBG_LVL_2, request, fmt, ## __VA_ARGS__) |
|
#define | REDEBUG3(fmt,...) radlog_request_error(L_DBG_ERR, L_DBG_LVL_3, request, fmt, ## __VA_ARGS__) |
|
#define | REDEBUG4(fmt,...) radlog_request_error(L_DBG_ERR, L_DBG_LVL_MAX, request, fmt, ## __VA_ARGS__) |
|