در این مقاله قصد داریم مفهمو مدیریت لاگ را معرفی کنیم و همچنین به شرح تعدادی از ابزار های پر کاربرد این زمینه بپردازیم. در ادامه چند نمونه از ابزار های ایرانی را نیز معرفی خواهیم کرد.
مدیریت لاگ به رویکردهای جمع آوری مداوم، ذخیره کردن، پردازش کردن، تجزیه کردن و آنالیز کردن داده ها از از برنامه ها و اپلیکیشن های مختلف گفته می شود جهت اینکه بتوانیم کارایی سیستم را بهینه کرده ، مشکلات فنی را به دست آوریم ، منابع را بهتر مدیریت کنیم ، امنیت را بیشتر کنیم و مقبولیت را افزایش دهیم.
یک لاگ به یک فایل تولید شده توسط کامپیوتر گفته می شود که فعالیت های درون سیستم عامل و اپلیکیشن ها را را ذخیره می کند. فایل به صورت اتوماتیک هر اطلاعاتی که توسط ادمین های سیستم طراحی شده باشد را داکیومنت می کند. مانند: پیامها گزارشهای خطا، درخواست های فایل و انتقالهای فایل. این فعالیت همچنین زمان انجام را ذخیره می کند که به متخصصین آی تی و توسعه دهنده ها کمک می کند که بفهمند چه اتفاقی افتاده و چه زمانی این اتفاق افتاده.
یک سیستم مدیریت لاگ یک برنامه است که که داده ها را از منابع مختلف جمع آوری کرده دسته بندی می کند و آن ها را از در یک موقعیت مرکزی ذخیره می کند.سیستم های مدیریت لاک به تیم های IT,DevOps و SecOps اجازه میدهند که یک . واحد بسازند که بتوانند به تمام داده های اپلیکیشن و شبکه دسترسی داشته باشد.به طور معمول این فایل لاگ کاملاً ایندکس شده و قابل جستجو می باشد زیرا که تیم آی تی بتوانند به راحتی داده مورد نیاز خود را به دست آورد و تصمیم گیری هایی درباره سلامت شبکه، تخصیص منابع و امنیت سیستم اتخاذ کند.
ابزارهای مدیریت لاگ کمک می کنند که بتوان تعداد زیادی از داده ها را که برای لاگ کردن تولید شدهاند را مدیریت و دسته بندی کنند. این ابزارها چند چیز را تعیین میکند:
یک سیستم مدیریت لاگ کارآمد دید های بلادرنگ را برای سلامت و عملیات های سیستم به وجود می آورد و همچنین موارد زیر از کاربردهای آن است.
لاگ کردن باید یک پروسه ی پایه ای برای هر مانیتورینگ سخت افزار باشد. یک لاگ فایل تراکنش برای ریکاور کردن دیتابیس SQL server از فاجعه ضروری است.همچنین با بررسی فایل های لاگ، تیم DevOps و ادمین های پایگاه داده میتوانند میزان حداکثری کارایی را حفظ کنند یا مدارکی از فعالیت های تایید نشده به معنی وجود حمله امنیتی پیدا کنند. به همین دلیل، مانیتور کردن و آنالیز کردن لاگ های سیستم از اهمیت بالایی برخوردار است. این موضوع که میتوانیم با بررسی زنجیره وار رخداد های سیستم به علت وقوع خرابی و مشکل پیش آمده برسیم و آن را تصحیح کنیم بسیار قابلیت اعتماد سیستم را افزایش می دهد.
امروزه چند نمونه از برنامه های مدیریت و آنالیز لاگ وجود دارد و انتخاب منبع مناسب برای آنالیز لاگ های برنامه از چیزی که به نظر میرسد امری راحت تر می باشد. برنامه های رایگان و متن باز به افراد مدیریت لاگ ها را در انواع مختلف سیستم و سایت ها و سیستم عامل ها ارائه می دهد. پنج مورد از برترین آن ها را در این بخش معرفی می کنیم.
نرم افزار Graylog در سال 2011 در آلمان شروع به کار کرد و امروزه به عنوان یک برنامه ی متن باز و یا یک برنامه تجاری ارائه می شود. این برنامه طراحی شده است که برای ورودی داده هایی از سورس ها و سرور های مختلف می باشند به عنوان یک سیستم مدیریت لاگ مرکزی عمل کند. همچنین این اجازه را میدهد که در میان اطلاعات با سرعت زیاد جستجو و بررسی انجام شود.
این نرم افزار به علت داشتن راحتی مقیاس پذیری در میان ادمین های سیستم به محبوبیت زیادی رسید. بیشتر پروژه های تحت وب در ابتدا که شروع میشوند مقیاس کوچکی دارند و در ادامه به صورت نمایی رشد می کنند. Graylog می تواند با بالانس کردن بار میان شبکه های سرور های بک اند و مدیریت ترابایت ها داده به صورت روزانه باعث مقیاس پذیری بالای یک اپلیکیشن شود.
ادمین های آی تی رابط کاربری فرانت graylog را بسیار راحت و شفاف و در عین حال مستحکم یافتند. این برنامه در باب مفهوم داشبورد ساخته شده است که به کاربر اجازه می دهد مقیاس ها و داده هایی که از اهمیت بیشتری برخوردارند را انتخاب کند و روند آن را در طول زمان بررسی نماید.
زمانی که یک بحران کارایی یا امنیتی اتفاق میفتد، ادمین های آی تی میخواهد که رد مشکل ریشه ای علت به وجود آورنده این مشکل را در سریع ترین زمان ممکن به دست آورند. قابلیت جستجو در این برنامه این امر را بسیار راحت می کند. درون برنامه Greylog یک سیستم انعطاف نسبت به خطا وجود دارد که می تواند جستجو های چند رشته ای را انجام دهد تا بتوان چند تحدید را به صورت همزمان بررسی کرد.
برنامه Nagios در سال 1999 با یک توسعه دهنده کار خود را آغاز کرد و از آن زمان تا کنون به یک از قابل اعتماد ترین برنامه های مدیریت داده های لاگ تبدیل شده است. نستخه کنونی Nagios میتواند بین چند سرور در حال اجرای ویندوز، لینوکس و یا یونیکس ارتباط برقرار کند.
محصول اصلی آن یک سرور لاگ می باشد که هدف آن دسته بندی و به دست آوردن داده ها و راحت تر کردن دسترسی ادمین ها می باشد. موتور سرور لاگ Nagios داده ها را به صورت بلادرنگ به دست می آورد و آنها را به خورد ابزار قدرتمند جستجو می دهد. تجمیع کردن داده ها با یک اند پوینت در اپلیکشن به صورت بسیار ساده در محیط نصب آن انجام می شود.
این برنامه به طور معمول در سازمان هایی که نیاز به مانیتور کردن امنیت شبکه محلی خود دارند مورد استفاده قرار می گیرد. Nagios می تواند به گستره ی وسیعی از رویداد های مربوط به شبکه رسیدگی کند که به اتوماسیون پخش کردن هشدار ها کمک می کند. همچنین در این برنامه می توان اسکریپت هایی از پیش تعیین کرد که اگر یک اتفاق خاصی افتاد و شرایط آن اسکریپت به وجود آمد، خودش شرایط را قبل از این که یک انسان به صورت دستی وارد عمل شود مدیریت کند.
به عنوان یکی از کار های رسیدیگی به شبکه میتواند داده های لاگ را بر اساس موقعیت جغرافیایی ای که داده از آن نشات میگیرد ذخیره کرد. این به این معنی است که میتوان داشبورد های معنا داری نسبت موقعیت دقیق جریان ترافیک برای مشاهده آن به وجود آورد.
Elastic stack
نرم افزار Elastic stack که بعضی اوقات به آن ELK Stack هم گفته می شود، یکی از معروف ترین ابزار های متن باز در میان سازمان های می باشد که نیاز به پیمایش درون مجموعه های بسیار وسیعی از داده ها را دارند و باعث می شود داده های آن ها معنی پیدا کنند.
نرم افزار اصلی آن از سه بخش مجزا تشکیل شده است: Elastisearch, Kibana و Logstash:
یک ویژگی منحصر به فرد ELK Stack این است که به شما اجازه میدهد که اپلیکیشن هایی روی بیلد متن باز WordPress می باشند را مانیتور کنید. در مقابل بسیاری از ابزار های لاگ مخصوص امنیت که به سختی ادمین و لاگ های PHP را دنبال می کنند با ELK Stack می توان در میان لاگ ای دیتا بیس و وب سرور به راحتی گذار کرد.
شرکت آتین
طبق توضیحات خود شرکت :
شرکت دانش بنیان آتین آتیه اندیش، مستقر در پارک علم و فناوری دانشگاه تهران، در سال 1396 فعالیت خود را به طور تخصصی درحوزه ارائه خدمات احراز هویت آغاز کرد. این شرکت با بررسی نمونه های مشابه خارجی و بر اساس نیازهای داخلی کشور درحوزه احراز هویت، اقدام به توسعه سامانه مدیریت هویت و دسترسی نموده است. تیم فنی آتین از فارغ التحصیلان دانشگاه های برتر کشور در حوزه نرم افزار و امنیت اطلاعات و با پشتوانه سابقه چندین ساله در حوزه احراز هویت و کنترل دسترسی تشکیل شده است.
این شرکت در میان خدمات متفاوتی که ارائه می دهد، خدمت مدیریت لاگ را نیز به صورت اختصاصی ارائه میدهد.
این شرکت به طور کلی در حوزه ی تست نرم افزار و وب سرویس ها کار میکند و یکی از خدمات ارائه دهنده ی آنها مدیریت لاگ می باشد.
این مطلب، بخشی از تمرینهای درس معماری نرمافزار در دانشگاه شهیدبهشتی است