Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Ubuntu

What is the meanding of 80, F and X in the following output of syslogd -d?

 0:  X  X  X  X FF  X  X  X  X  X FF  X  X  X  X  X  X  X  X  X  X  X  X  X  X FILE: /var/log/auth.log (unused)
 1: FF FF FF FF  X FF FF FF FF FF  X FF FF FF FF FF FF FF FF FF FF FF FF FF FF FILE: /var/log/syslog (unused)
 2:  X  X  X FF  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X FILE: /var/log/daemon.log (unused)
 3: FF  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X FILE: /var/log/kern.log (unused)
 4:  X  X  X  X  X  X FF  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X FILE: /var/log/lpr.log (unused)
 5:  X  X FF  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X FILE: /var/log/mail.log (unused)
 6:  X FF  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X FILE: /var/log/user.log (unused)
 7:  X  X 7F  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X FILE: /var/log/mail.info (unused)
 8:  X  X 1F  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X FILE: /var/log/mail.warn (unused)
 9:  X  X  F  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X FILE: /var/log/mail.err (unused)
10:  X  X  X  X  X  X  X  7  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X FILE: /var/log/news/news.crit (unused)
11:  X  X  X  X  X  X  X  F  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X FILE: /var/log/news/news.err (unused)
12:  X  X  X  X  X  X  X 3F  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X FILE: /var/log/news/news.notice (unused)
13: 80 80  X 80  X 80 80  X 80 80  X 80 80 80 80 80 80 80 80 80 80 80 80 80 80 FILE: /var/log/debug (unused)
14: 70 70  X  X  X 70 70  X 70  X  X 70 70 70 70 70 70 70 70 70 70 70 70 70 70 FILE: /var/log/messages (unused)
15:  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1 WALL: 
16: F0 F0 FF FF F0 F0 F0 FF F0 F0 F0 F0 F0 F0 F0 F0 F0 F0 F0 F0 F0 F0 F0 F0 F0 PIPE: |/dev/xconsole (unused)

OBSD

7 6 X 5 X 6 X 5 5 X X X 5 5 5 5 5 5 5 5 5 5 5 5 X FILE: /var/log/messages
X X X X 6 X X X X X X X X X X X X X X X X X X X X FILE: /var/log/authlog
X X X X X X X X X X 7 X X X X X X X X X X X X X X FILE: /var/log/secure
X X X X X X X X X 6 X X X X X X X X X X X X X X X FILE: /var/cron/log
X X X 6 X X X X X X X X X X X X X X X X X X X X X FILE: /var/log/daemon
X X X X X X X X X X X 6 X X X X X X X X X X X X X FILE: /var/log/xferlog
X X X X X X 7 X X X X X X X X X X X X X X X X X X FILE: /var/log/lpd-errs
X X 6 X X X X X X X X X X X X X X X X X X X X X X FILE: /var/log/maillog
7 3 2 3 5 3 3 3 3 3 X 3 3 3 3 3 3 3 3 3 3 3 3 3 X CONSOLE: /dev/console
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 X WALL: 
share|improve this question

2 Answers 2

up vote 0 down vote accepted

These values refer to the facilities defined for the log file defined. For example any email related program that sends a log message uses the mail facility no matter what the name of the program actually was. I know that each column between the represents a single facility, but I'm not sure what the value specifically represents. The following is just a guess:

Each facility can be logged at 8 severity levels, 0 is 'emergency' and 7 is debugging. You can set any or all of these for each facility. If each of these levels is a bit in a number, then the value may be the sum of all these bits. FF would indicate that all the bits are set. Other values:

F: first 4 bits set - emergency, alert critical, error
F0: last 4 bits set - warning, notification, info, debug
80: last bit set - debug

I think 'X' means ignore.

share|improve this answer

[X0-7] are facilitynames. The deprecated things such as "security" LOG_AUTH leaves room for speculation so I won't cover it as no dev. They are similar to variants in Ubuntu but cleaner. The meaning of X is apparently "to ignore" as shown by the code:

                   1329:        if (Debug) {
                   1330:                for (f = Files; f; f = f->f_next) {
                   1331:                        for (i = 0; i <= LOG_NFACILITIES; i++)
                   1332:                                if (f->f_pmask[i] == INTERNAL_NOPRI)
                   1333:                                        printf("X ");
                   1334:                                else
                   1335:                                        printf("%d ", f->f_pmask[i]);
                   1336:                        printf("%s: ", TypeNames[f->f_type]);
                   1337:                        switch (f->f_type) {
                   1338:                        case F_FILE:
                   1339:                        case F_TTY:
                   1340:                        case F_CONSOLE:
1.95      henning  1341:                        case F_PIPE:
1.1       deraadt  1342:                                printf("%s", f->f_un.f_fname);
                   1343:                                break;
                   1344: 
                   1345:                        case F_FORW:
                   1346:                                printf("%s", f->f_un.f_forw.f_hname);
                   1347:                                break;
                   1348: 
                   1349:                        case F_USERS:
                   1350:                                for (i = 0; i < MAXUNAMES && *f->f_un.f_uname[i]; i++)
                   1351:                                        printf("%s, ", f->f_un.f_uname[i]);
                   1352:                                break;
1.70      djm      1353: 
                   1354:                        case F_MEMBUF:
                   1355:                                printf("%s", f->f_un.f_mb.f_mname);
                   1356:                                break;
                   1357: 
1.1       deraadt  1358:                        }
1.20      deraadt  1359:                        if (f->f_program)
1.19      bri      1360:                                printf(" (%s)", f->f_program);
1.1       deraadt  1361:                        printf("\n");
                   1362:                }
                   1363:        }
                   1364: }
share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.