وب‌سرویس مجید

پروژه tracing

tokio-rs/tracing

چیه؟ ابزاری برای ردیابی رویدادها در برنامه‌های نوشته‌شده با زبان Rust که به توسعه‌دهندگان کمک می‌کنه تا رفتار برنامه در سطح اجرا رو دنبال کنند.

کاربرد:

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

در چه شرایطی بهتره استفاده شود؟

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

چند مثال از موارد استفاده:

ردیابی اجرای یک درخواست HTTP در یک سرویس وب

اندازه‌گیری زمان اجرای یک تابع مهم در میکروسرویس

دنبال کردن جریان داده در یک پایپ‌لاین پردازش اطلاعات

عیب‌یابی عملکرد کتابخانه‌های async در محیط تولید

  • ##tracing
  • ##Rust
  • ##async
  • ##observability
  • ##logging
  • ##telemetry
  • ##debugging
  • ##distributed
  • ##performance
  • ##structured