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

CDN جایگزین سیستم لاگ اپلیکیشن نیست. لبه تنها وضعیت عبور درخواست از خود را منعکس می‌کند؛ از جمله وضعیت کش، تصمیم فایروال، زمان پاسخ و نام آپ‌استریم. با فیلد request_id و هدر X-Stn-Request-Id می‌توان همان درخواست را در لاگ سرور مبدا نیز ردیابی کرد.

flowchart LR
  client(["کلاینت"])
  edge(["لبه CDN"])
  panel(["لاگ لحظه‌ای در پنل"])
  origin(["آپ‌استریم"])
  client --> edge
  edge --> origin
  edge --> panel

کاربرد

لاگ لحظه‌ای زمانی مناسب است که نیاز به مشاهده‌ی رفتار جاری یک درخواست در لبه باشد؛ از جمله در راه‌اندازی و پیکربندی اولیه‌ی CDN، پس از تغییر کش، قانون مسیر یا فایروال، و هنگام عیب‌یابی خطای تازه. در این موارد مشاهده‌ی جریان زنده کافی است و ایجاد پایپ‌لاین ارسال لاگ به مقصدهایی مانند Kafka یا Loki الزامی نیست.

دریافت لاگ تا زمان باز بودن صفحه‌ی مربوط در پنل ادامه دارد و با بستن آن متوقف می‌شود. این قابلیت هزینه‌ی مجزا دارد و برای نگهداری بلندمدت لاگ یا تعریف هشدار روی زیرساخت مشتری در نظر گرفته نشده است.

تفاوت با ارسال لاگ

لاگ لحظه‌ای و ارسال لاگ (Log Forwarder) نقش یکسانی ندارند.

لاگ لحظه‌ایارسال لاگ (Log Forwarder)
مقصدپنل، تا زمان باز بودن صفحهمقصد مشتری: Websocket، Kafka، AMQP، Elastic، Loki
ماندگاری دادهمحدود به جلسه‌ی مشاهدهپیوسته، تا زمان فعال بودن forwarder
هدفعیب‌یابی و راه‌اندازی فورینگهداری، داشبورد و هشدار روی زیرساخت مشتری

برای نگهداری لاگ در سیستم مشتری، ارسال لاگ لازم است. برای مشاهده‌ی رفتار جاری درخواست در لبه، لاگ لحظه‌ای کافی است.

ادامه مسیر