Why would syslogd drop messages?

Grant Edwards grant.b.edwards at gmail.com
Fri Oct 27 22:02:03 UTC 2017


What would cause syslogd to drop messages?

We've noticed that syslogd will usually drop several messages from a
"burst" of 15-20 calls to syslog() that don't have any delay between
them.  We're currently using 1.26.2, but my testing indicates that
1.25.1 does the same thing.

Normally, we're logging to a file in RAM tmpfs.  I've also tried
logging to a syslog server, and I see the same thing.

Here's a sample program that demonstrates the problem:

------------------------------------------------------------------------
char *ramp[] = 
  {
    "       /",
    "      / ",
    "     /  ",
    "    /   ",
    "   /    ",
    "  /     ",
    " /      ",
    "/       ",
  };

int main(void)
{
  for (int i=0; i < 64; i++)
    syslog(LOG_INFO, "Syslog message line %3d %s\n", i, ramp[i%8]);
  return 0;
}
------------------------------------------------------------------------

Adding usleep(1000) to the loop makes the problem go away.

When I run the program above, syslogd will always drop 8-12 messages
out of 64.  The sample run below is missing 10 message (numbers 12-13,
24-25, 26-38, 54-56).

<14>Oct 27 21:45:00 syslog: Syslog message line   0        /
<14>Oct 27 21:45:00 syslog: Syslog message line   1       /
<14>Oct 27 21:45:00 syslog: Syslog message line   2      /
<14>Oct 27 21:45:00 syslog: Syslog message line   3     /
<14>Oct 27 21:45:00 syslog: Syslog message line   4    /
<14>Oct 27 21:45:00 syslog: Syslog message line   5   /
<14>Oct 27 21:45:00 syslog: Syslog message line   6  /
<14>Oct 27 21:45:00 syslog: Syslog message line   7 /
<14>Oct 27 21:45:00 syslog: Syslog message line   8        /
<14>Oct 27 21:45:00 syslog: Syslog message line   9       /
<14>Oct 27 21:45:00 syslog: Syslog message line  10      /
<14>Oct 27 21:45:00 syslog: Syslog message line  11     /
<14>Oct 27 21:45:00 syslog: Syslog message line  14  /
<14>Oct 27 21:45:00 syslog: Syslog message line  15 /
<14>Oct 27 21:45:00 syslog: Syslog message line  16        /
<14>Oct 27 21:45:00 syslog: Syslog message line  17       /
<14>Oct 27 21:45:00 syslog: Syslog message line  18      /
<14>Oct 27 21:45:00 syslog: Syslog message line  19     /
<14>Oct 27 21:45:00 syslog: Syslog message line  20    /
<14>Oct 27 21:45:00 syslog: Syslog message line  21   /
<14>Oct 27 21:45:00 syslog: Syslog message line  22  /
<14>Oct 27 21:45:00 syslog: Syslog message line  23 /
<14>Oct 27 21:45:00 syslog: Syslog message line  26      /
<14>Oct 27 21:45:00 syslog: Syslog message line  27     /
<14>Oct 27 21:45:00 syslog: Syslog message line  28    /
<14>Oct 27 21:45:00 syslog: Syslog message line  29   /
<14>Oct 27 21:45:00 syslog: Syslog message line  30  /
<14>Oct 27 21:45:00 syslog: Syslog message line  31 /
<14>Oct 27 21:45:00 syslog: Syslog message line  32        /
<14>Oct 27 21:45:00 syslog: Syslog message line  33       /
<14>Oct 27 21:45:00 syslog: Syslog message line  34      /
<14>Oct 27 21:45:00 syslog: Syslog message line  35     /
<14>Oct 27 21:45:00 syslog: Syslog message line  36    /
<14>Oct 27 21:45:00 syslog: Syslog message line  39 /
<14>Oct 27 21:45:00 syslog: Syslog message line  40        /
<14>Oct 27 21:45:00 syslog: Syslog message line  41       /
<14>Oct 27 21:45:00 syslog: Syslog message line  42      /
<14>Oct 27 21:45:00 syslog: Syslog message line  43     /
<14>Oct 27 21:45:00 syslog: Syslog message line  44    /
<14>Oct 27 21:45:00 syslog: Syslog message line  45   /
<14>Oct 27 21:45:00 syslog: Syslog message line  46  /
<14>Oct 27 21:45:00 syslog: Syslog message line  47 /
<14>Oct 27 21:45:00 syslog: Syslog message line  48        /
<14>Oct 27 21:45:00 syslog: Syslog message line  49       /
<14>Oct 27 21:45:00 syslog: Syslog message line  50      /
<14>Oct 27 21:45:00 syslog: Syslog message line  51     /
<14>Oct 27 21:45:00 syslog: Syslog message line  52    /
<14>Oct 27 21:45:00 syslog: Syslog message line  53   /
<14>Oct 27 21:45:00 syslog: Syslog message line  57       /
<14>Oct 27 21:45:00 syslog: Syslog message line  58      /
<14>Oct 27 21:45:00 syslog: Syslog message line  59     /
<14>Oct 27 21:45:00 syslog: Syslog message line  60    /
<14>Oct 27 21:45:00 syslog: Syslog message line  61   /
<14>Oct 27 21:45:00 syslog: Syslog message line  62  /
<14>Oct 27 21:45:00 syslog: Syslog message line  63 /

-- 
Grant Edwards               grant.b.edwards        Yow! I'm having a
                                  at               quadrophonic sensation
                              gmail.com            of two winos alone in a
                                                   steel mill!



More information about the busybox mailing list