Technologies Used
Python
mysql
Project Description
این پروژه یک سیستم پردازش و مدیریت لاگهای سرور است که اطلاعات مربوط به فعالیتهای کاربران و رویدادهای اجرایی را از فایلهای لاگ استخراج کرده و در پایگاه داده MySQL ذخیره میکند.
این سیستم دارای قابلیتهای زیر است:
اتصال خودکار به دیتابیس و خواندن اطلاعات از فایل پیکربندی (system.conf).
استخراج دادههای کلیدی از فایلهای لاگ با استفاده از الگوهای Regex.
شناسایی و حذف دادههای تکراری برای جلوگیری از ورود اطلاعات زائد.
بررسی اعتبار تغییر وضعیت رویدادها بر اساس رویدادهای قبلی ذخیرهشده در دیتابیس.
ذخیرهسازی بهینه اطلاعات بهصورت بچهای ۱۰۰۰تایی جهت افزایش کارایی.
ثبت لاگهای نامعتبر و خطاهای پردازشی در جدول اختصاصی برای تحلیلهای بعدی.
ذخیرهسازی کاربران نامشخص در جدول جداگانه برای بررسیهای بعدی.
حفظ وضعیت پردازش لاگها و ادامه پردازش از آخرین محل ثبتشده در اجرای بعدی.
این پروژه برای مدیران سیستم و تحلیلگران داده مفید خواهد بود تا بتوانند فعالیتهای کاربران، روند پردازش و استفاده از منابع سیستم را ردیابی و آنالیز کنند.
This project is a server log processing and management system that extracts information related to user activities and system events from log files and stores it in a MySQL database.
The system features the following capabilities:
Automatic connection to the database and reading information from a configuration file (system.conf).
Extraction of key data from log files using Regex patterns.
Identification and removal of duplicate data to prevent redundant information.
Validation of event state changes based on previously stored events in the database.
Optimized data storage in batches of 1,000 records to enhance performance.
Logging of invalid records and processing errors in a dedicated table for subsequent analysis.
Storage of unidentified users in a separate table for future review.
Preservation of log processing status, allowing the system to resume from the last recorded point in subsequent runs.
This project will be beneficial for system administrators and data analysts who need to track and analyze user activities, processing trends, and system resource usage.