Send a message to the system logger
#include <stdio.h>
#include <sys/slog.h>
int slogf( int opcode,
int severity,
const char * fmt,
... );
BlackBerry 10.0.0
The major and minor codes are defined in <sys/slogcodes.h>.
The formatting characters that you use in the message determine any additional arguments.
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
The slog*() functions send log messages to the system logger, slogger . To send formatted messages, use slogf(). If you have programs that scan log files for specified codes, you can use slogb() or slogi() to send a block of structures or int's, respectively.
The vslogf() function is an alternate form in which the arguments have already been captured using the variable-length argument facilities of <stdarg.h>.
Severity levels
There are eight levels of severity defined. The lowest severity is 7 and the highest is 0. The default is 7.
| Manifest Name | Severity value | Description |
|---|---|---|
| _SLOG_SHUTDOWN | 0 | Shut down the system NOW (e.g. for OEM use) |
| _SLOG_CRITICAL | 1 | Unexpected unrecoverable error (e.g. hard disk error) |
| _SLOG_ERROR | 2 | Unexpected recoverable error (e.g. needed to reset a hardware controller) |
| _SLOG_WARNING | 3 | Expected error (e.g. parity error on a serial port) |
| _SLOG_NOTICE | 4 | Warnings (e.g. out of paper) |
| _SLOG_INFO | 5 | Information (e.g. printing page 3) |
| _SLOG_DEBUG1 | 6 | Debug messages (normal detail) |
| _SLOG_DEBUG2 | 7 | Debug messages (fine detail) |
The size of the message sent to slogger, or -1 if an error occurs.
Any value from the Errors section in MsgSend() , as well as:
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <sys/slog.h>
#include <sys/slogcodes.h>
int main() {
int i;
for(i = 0 ; ; i++) {
switch(rand() % 3) {
case 0:
slogb( _SLOG_SETCODE(_SLOGC_TEST, 0),
_SLOG_DEBUG1, &i, sizeof(i));
break;
case 1:
slogi( _SLOG_SETCODE(_SLOGC_TEST, 1),
_SLOG_CRITICAL, 1, i);
break;
case 2:
slogf( _SLOG_SETCODE(_SLOGC_TEST, 2),
_SLOG_ERROR,
"This is number %d", i);
break;
}
sleep(1);
}
}
| Safety: | |
|---|---|
| Cancellation point | Yes |
| Interrupt handler | No |
| Signal handler | Yes |
| Thread | Yes |