مأموریت مشاهده‌پذیری

استک پایش Nginx

این استک، یک ماژول بدون وابستگی Nginx نوشته‌شده با C را با کلاینت Android مبتنی بر Kotlin و Compose جفت می‌کند. با هم تله‌متری محدود سرور را به پایش مقاوم و رمزگذاری‌شدهٔ ناوگان، تاریخچه، هشدار و widget تبدیل می‌کنند.

نقش
توسعه‌دهندهٔ مستقل · ماژول Nginx، مدل تله‌متری، کلاینت Android، امنیت، بسته‌بندی و انتشار
بازه زمانی
۲۰۲۵–اکنون
وضعیت
سورس عمومی

شرح مأموریت

پروژه با یک پرسش عملی شروع شد: چگونه اپراتور سلامت Linux و Nginx را مستقیم از سرور و بدون runtime سنگین ببیند و همان سیگنال را به نمای مفید ناوگان موبایل ببرد؟

هر دو بخش به مصرف محافظه‌کارانهٔ منابع، دسترسی remote امن و رفتار مناسب هنگامی نیاز داشتند که سرور فقط از مسیر شبکهٔ محلی در دسترس است.

نقشهٔ سیستم

معماری

  1. Timerهای Nginx

    collectorهای دوره‌ای بومی، سیگنال‌های فرایند و سیستم Linux را بیرون مسیر هر درخواست می‌خوانند.

  2. تله‌متری مشترک

    حافظهٔ اشتراکی، شمارندهٔ اتمیک، مقدارهای Top-N و بافر تاریخچه مجموعهٔ کاری کنترل‌شده را نگه می‌دارند.

  3. Endpointهای پایش

    داشبورد، JSON، سلامت، SSE و Prometheus همان مدل عملیاتی را ارائه می‌دهند.

  4. کلاینت امن Android

    Kotlin، Compose، اعتبارنامهٔ رمزگذاری‌شده، تاریخچهٔ SQLite، هشدار، refresh پس‌زمینه و widget دسترسی ناوگان می‌دهند.

  5. Fallback شبکه

    کلاینت می‌تواند نشانی محلی را امتحان کند و hostname اصلی را برای اعتبارسنجی TLS SNI نگه دارد.

مسیر راهبردی

نقشهٔ نبرد

مسیر پیاده‌سازی، ایستگاه‌به‌ایستگاه.

  1. ایستگاه 01

    دادهٔ سنگین سیستم را با timer جمع کن، نه با تکرار کار filesystem برای هر درخواست داشبورد یا API.

  2. ایستگاه 02

    از حافظهٔ اشتراکی و سری محدود استفاده کن تا حافظهٔ ماژول و cardinality در Prometheus قابل پیش‌بینی باشد.

  3. ایستگاه 03

    endpointها را با ACL، احراز هویت، token، CORS و rate limit مناسب هر استقرار محافظت کن.

  4. ایستگاه 04

    build را برای ABI دقیق توزیع و Nginx بسته‌بندی کن؛ فرض نکن binary عمومی با امنیت load می‌شود.

  5. ایستگاه 05

    اعتبارنامهٔ کلاینت را رمزگذاری، تاریخچه را محلی، refresh را پس‌زمینه و هویت TLS را در LAN fallback حفظ کن.

رویارویی حساس

نبرد با غول مرحله

جان غولحل‌شده
  • کد بومی Nginx درون یک فرایند حیاتی سرور اجرا می‌شود: memory leak، label نامحدود، جمع‌آوری blocking یا ناسازگاری ABI می‌تواند خود پایش را به قطعی تبدیل کند. بنابراین ماژول وابستگی کم، وضعیت محدود و سازگاری صریح را ترجیح می‌دهد.

دستاوردهای آزادشده

پاداش‌های مأموریت

خروجی‌هایی که این مأموریت به همراه داشت.

  • پاداش 01 آزاد شد

    اپراتور یک مدل تله‌متری را از داشبورد محلی، JSON، health check، به‌روزرسانی زندهٔ SSE یا Prometheus می‌بیند.

  • پاداش 02 آزاد شد

    کلاینت موبایل endpointهای جدا را به ناوگان کاربردی سرور با هشدار، تاریخچه، اعتبارنامهٔ امن و widget تبدیل می‌کند.

  • پاداش 03 آزاد شد

    LAN fallback دسترس‌پذیری را بدون تضعیف اعتبارسنجی TLS بر پایهٔ hostname بهتر می‌کند.

آیتم‌های ویژه

تجهیزات فنی

  • C
  • Nginx Module API
  • Linux /proc
  • Shared Memory
  • Prometheus
  • Server-Sent Events
  • Kotlin
  • Jetpack Compose
  • SQLite
  • Android Widgets

شواهد کار

کاوش مأموریت

قابلیت‌ها از دو مخزن عمومی مستند شده‌اند. ادعایی دربارهٔ اندازهٔ ناوگان، حجم ترافیک یا پذیرش در تولید مطرح نشده است.