دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۲۱
  • اسفند

جلسه ۲۹-۰۲ : بررسی System Logging در یونیکس (UNIX)

  • دسته‌بندی‌ها :
جلسه ۲۹-۰۲ : بررسی System Logging در یونیکس (UNIX)
    • جزئیات
    • نوع محتواآموزشی

      دوستان و علاقمندان به مباحث آموزش یونیکس (UNIX) ، این آموزش را از سایت پی وی لرن دنبال خواهیم نمود. بررسی System Logging در یونیکس (UNIX) را در بخش قبل آغاز نمودیم. در این بخش نیز این مبحث را ادامه خواهیم داد. با ادامه ی آموزش ها همراه ما بمانید.

      بررسی System Logging در یونیکس (UNIX)

      فایل etc/syslog.conf/

      فایل etc/syslog.conf/ مکان لاگ پیام ها را کنترل می کند. ممکن است یک فایل معمولی syslog.conf به این شکل باشد:

      مثال : 

      هر خط فایل شامل دو بخش است.

      • انتخاب کننده پیام (message selector) که مشخص می کند چه نوع پیام هایی برای ورود به سیستم هستند. به عنوان مثال ، تمام پیام های خطا یا همه پیام های اشکال زدایی از هسته (kernel).
      • یک فیلد اکشن که می گوید آن چه که باید با پیام انجام شود. به عنوان مثال ، آن را در یک فایل قرار داده یا پیام را به ترمینال کاربر بفرستید.

      در زیر نکات قابل توجه برای پیکربندی فوق آمده است.

      • انتخاب کننده های پیام دو بخش دارند: تسهیلات و اولویت ( facility و a priority). به عنوان مثال ، kern.debug تمام پیام های اشکال زدایی (اولویت) ایجاد شده توسط هسته (تسهیلات) را انتخاب می کند.
      • انتخاب کننده های پیام kern.debug تمام اولویت هایی را که بالاتر از اشکال زدایی (debug) هستند انتخاب می کند.
      • ستاره در جایگاه facility یا priority، نشان دهنده ی “all” یا همه است. به عنوان مثال ، debug.* به معنی تمام پیام های اشکال زدایی است ، در حالی که .*kern به معنی تمام پیام های ایجاد شده توسط هسته است.
      • همچنین می توانید از کاما برای مشخص کردن چندین facility استفاده کنید. دو یا چند انتخاب کننده را می توان با استفاده از یک سمیکالن گروه کرد.

      مبحث بررسی System Logging در یونیکس (UNIX) را با Logging Actions ادامه می دهیم.

      Logging Actions

      فیلد action یکی از پنج عمل زیر را مشخص می کند.

      • پیام را به یک فایل یا یک دستگاه لاگ می کند. به عنوان مثال ، var/log/lpr.log/ یا dev / console/.
      • برای کاربر پیام ارسال می کند. با جدا کردن آن ها با کاما می توانید چندین نام کاربری مشخص کنید. به عنوان مثال ، root ، amrood.
      • برای همه کاربران پیام ارسال می کند. در این حالت ، فیلد action شامل یک ستاره (*) است.
      • پیام را به یک برنامه وصل پایپ (pipe) می کند. در این حالت ، برنامه پس از نماد پایپ یونیکس (|) مشخص می شود.
      • ارسال پیام به syslog در هاست دیگر. در این حالت ، فیلد action از یک hostname تشکیل شده است. به عنوان مثال ، tutorialspoint.com@.

      دستور logger

      یونیکس دستور logger را ارائه می دهد که یک دستور بسیار مفید برای کار با system logging است. دستور logger پیام های logging را به syslogd daemon می فرستد و در نتیجه باعث ورود سیستم (system logging) می شود.

      این بدان معناست که می توانیم در هر زمان و از طریق خط فرمان ، syslogd daemon و پیکربندی آن را بررسی کنیم. دستور logger روشی برای اضافه کردن ورودی های یک خط به فایل system log ، از خط فرمان را فراهم می کند.

      فرمت دستوربه شکل زیر است.

      مثال : 

      در این جا جزئیات پارامترها آورده شده است.

      ردیفگزینه ها و شرح
      ۱f filename-

      از محتویات فایل filename به عنوان پیامی برای ورود به سیستم (log) استفاده می کند.

      ۲i-

      شناسه یا ID فرآیند از فرایند logger را با هر خط لاگ می کند.

      ۳p priority-

      پیام را با اولویت مشخص (ورودی انتخاب شده مشخص) وارد می کند. اولویت (priority) پیام را می توان به صورت عددی یا به عنوان یک جفت facility.priority مشخص کرد. اولویت (priority) پیش فرض user.notice است.

      ۴t tag-

      هر خط اضافه شده به لاگ را با تگ مشخص شده علامت گذاری می کند.

      ۵message

      آرگومان های رشته ای که محتویات آن ها به ترتیب مشخص شده با هم جمع شده اند ، با فاصله از هم جدا می شوند.

      برای بررسی سینتکس کامل این دستور می توانید از Manpage Help استفاده کنید.

      Log Rotation

      فایل های Log تمایل به رشد بسیار سریع و مصرف مقادیر زیادی از فضای دیسک دارند. برای فعال کردن Log Rotation، اکثر توزیع ها از ابزارهایی مانند newsyslog یا logrotate استفاده می کنند.

      این ابزارها را باید در فواصل زمانی مکرر با استفاده از Daemon cron فراخوانی کرد. برای اطلاعات بیش تر ، صفحات man را برای newsyslog یا logrotate بررسی کنید.

      مکان های مهم Log

      تمام برنامه های سیستم فایل های log خود را در var / log/ و تحت دایرکتوری های آن ایجاد می کنند. در این جا چند برنامه مهم و دایرکتوری های مربوط به ثبت آن ها آمده است.

      اپلیکیشن هادایرکتوری ها
      httpdvar/log/httpd/
      sambavar/log/samba/
      cron/var/log/
      mail/var/log/
      mysql/var/log/

      کلام پایانی

      دوستان متشکریم از این که با مباحث آموزش یونیکس همراه هستید. در این بخش از آموزش به بررسی System Logging در یونیکس (UNIX) پرداختیم و مباحثی چون Logging Actions ، فایل etc/syslog.conf/ ، دستور logger و دیگر مباحث را دنبال نمودیم. در جلسه ی آینده نیز آموزش یونیکس را ادامه داده و وارد مبحث Signals و Traps خواهیم شد. با ادامه ی جلسات آموزش یونیکس از وب سایت پی وی لرن همراه باشید.

      QR:  جلسه ۲۹-۰۲ : بررسی System Logging در یونیکس (UNIX)
      به اشتراک بگذارید