وضعیت فعلی
- Severity لاگها، از لاگ رسیده، با استفاده از XML مربوطه در فرایند پارس کردن استخراج می شود.
- در صورت عدم وجود Severity در لاگ؛ Severity لاگها از PRI موجود در لاگ استخراج می شود.
- در صورت عدم وجود مقدار PRI؛ Severity از مقدار مشخص شده برای Event Type واقع در پایگاه داده استخراج شد و در لاگ قرار داده می شود.
PRI چیست
PRI یک مقدار عددی یک بایتی از صفر تا 255 می باشد که سه بیت کم ارزش آن مشخص کننده Severity از 0 تا 7 می باشد و 5 بیت پر ارزش آن مشخص کننده Facility از 0 تا 23 است. برای محاسبه Facility و Severity از روی PRI به شیوه زیر عمل می کنیم.
PRI = Facility * 8 + Log Level
Facility= PRI mod 8
Severity= PRI – (Facility*8)
به عنوان مثال اگر PRI=191 باشد.
Facility= 191 mod 8=23
Severity= 191 – (23*8) =7
تمامی سنسورهایی که از پروتکل syslog استفاده می کنند مقدار PRI را در لاگ خام ارسال می کنند.
نحوه یکسان سازی سطوح Severity برای سنسورهای مختلف.
مساله اصلی نحوه یکسان سازی سطوح Severity برای سنسورهای مختلف است که برای Severity از سطح بندی متفاوتی استفاده می کنند. همانمطور که در جدول زیر نمایش داده شده Vendor ویندوز برای تمامی Log Levelها مقدار در نظر نگرفته است.
|
emergency |
8 |
0 |
emergency |
emergency |
emergency |
N/A |
N/A |
N/A |
|---|---|---|---|---|---|---|---|---|
|
alert |
7 |
1 |
alert |
alert |
alert |
N/A |
outbreak |
N/A |
|
critical |
6 |
2 |
critical |
critical |
critical |
1 |
N/A |
critical |
|
error |
5 |
3 |
error |
error |
error |
2 |
error |
Functional Fail |
|
warning |
4 |
4 |
warning |
warning |
warning |
3 |
warning |
warning |
|
notice |
3 |
5 |
notice |
notice |
notice |
N/A |
N/A |
N/A |
|
info |
2 |
6 |
info |
info |
info |
4 |
info |
info |
|
debug |
1 |
7 |
debug |
N/A |
debug |
5 |
verbose |
N/A |
|
Undefined |
N/A |
N/A |
N/A |
N/A |
0 |
N/A |
N/A |
|
|
Audit |
N/A |
N/A |
N/A |
N/A |
N/A |
Audit |
N/A |
|
Cisco |
|
|---|---|
|
Level |
Description |
|
0 – emergency |
System unusable |
|
1 – alert |
Immediate action needed |
|
2 – critical |
Critical condition |
|
3 – error |
Error condition |
|
4 – warning |
Warning condition |
|
5 – notification |
Normal but significant condition |
|
6 – informational |
Informational message only |
|
7 – debugging |
Appears during debugging only |
|
Windows |
|
|---|---|
|
Level |
Value |
|
Undefined |
0 |
|
critical |
1 |
|
error |
2 |
|
Warning |
3 |
|
information |
4 |
|
Verbose |
5 |
نکته
برای حالت Undefined و Audit در Corelog Severity مقداری درنظر گرفته نشده است
در سامانه کورلاگ Severity، یک مقدار عددی از 1 تا 10 می باشد که مقدار یک تا 8 برای لاگ های مختلف استفاده شده و مقادیر 9 و 10 رزرو شده هستند.
مساله: سنسورهایی که از طریق ایجنت لاگ خود را ارسال می کنند و لاگ آنها فاقد PRI است (مثل ویندوز)، لازم است که ایجنت مقدار log level را استخراج کرده و نسبت به محاسبه PRI و ارسال آن در لاگ اقدام کند. برای محاسبه این مقدار می توان از Local5 به عنوان Facility استفاده نمود. در زیر لیست Facility های استاندارد و نحوه استفاده سیسکو از آن توضیح داده شده است.
The list of Facilities available:
0 kernel messages
1 user-level messages
2 mail system
3 system daemons
4 security/authorization messages
5 messages generated internally by syslogd
6 line printer subsystem
7 network news subsystem
8 UUCP subsystem
9 clock daemon
10 security/authorization messages
11 FTP daemon
12 NTP subsystem
13 log audit
14 log alert
15 clock daemon
16 local use 0 (local0)
17 local use 1 (local1)
18 local use 2 (local2)
19 local use 3 (local3)
20 local use 4 (local4)
21 local use 5 (local5)
22 local use 6 (local6)
23 local use 7 (local7)
If you are receiving messages from a Unix system, it is suggested you use the “user” Facility as your first choice. Local0 through to Local7 are not used by Unix and are traditionally used by networking equipment. Cisco routers for example use Local6 or Local7.
اگر سنسورهایی که در Event Viewer ویندوز لاگ می زنند، log level را در attribute ی غیر از log level بزنند، بدلیل اینکه ایجنت امکان پارس کردن همه attribute ها را ندارد، در نتیجه از مرحله یک وضعیت فعلی یعنی استفاده از XML بهره گرفته خواهد شد.
مساله آینده: در صورت استفاده از مقدار PRI، اگر این مقدار با مقدار موجود در پایگاه داده کورلاگ متفاوت باشد عملا مقدار موجود در پایگاه داده اعتبار خود را از دست می دهد.