[{"data":1,"prerenderedAt":77},["ShallowReactive",2],{"seo-verification":3,"blog-opentelemetry-grafana-tempo-vps-ar":6},{"google":4,"bing":5},"EycwPY2XMyTkVzas3n1ygeNJFGAH513qrMjfDljzsMQ","",{"id":7,"slug":8,"title":9,"excerpt":10,"readTime":11,"views":12,"isPinned":13,"publishedAt":14,"category":15,"categories":21,"featuredImage":23,"bgImage":24,"posterImage":25,"relatedSolution":26,"intro":29,"sections":30,"ctaTitle":72,"ctaBody":73,"ctaButton":74,"ctaUrl":75,"relatedPosts":76},220,"opentelemetry-grafana-tempo-vps","‏Grafana Tempo و‏OpenTelemetry: التتبع الموزع على خادم VPS","انشر مكدس تتبع موزع كامل على خادم VPS الخاص بك باستخدام OpenTelemetry و‏Grafana Tempo، بعيداً عن الارتباط بموردين ومن دون تكاليف APM.",7,0,false,"2026-08-04T00:00:00+00:00",{"id":16,"name":17,"slug":18,"color":19,"icon":20},8,"الأمان والمراقبة","securite-monitoring","bg-rose-500\u002F10 text-rose-400","security",[22],{"id":16,"name":17,"slug":18,"color":19,"icon":20},null,"\u002Fblog\u002Fcovers\u002Fbg.svg","\u002Fblog\u002Fcovers\u002Fopentelemetry-grafana-tempo-vps-poster.svg",{"categorySlug":27,"appSlug":28},"monitoring","grafana","تُفرض رسوم تدريجية عند استخدام وكلاء خاصين مثل Datadog أو New Relic، مما يُقيّدك بنظامهم البيئي تدريجياً. يقدم OpenTelemetry و‏Grafana Tempo بديلاً متخرجاً من CNCF، قابلاً للنقل بين الخوادم الخلفية، ويمكن نشره بالكامل على خادم VPS الخاص بك في أقل من ساعة.",[31,35,44,47,66,69],{"type":32,"title":33,"body":34},"h2","لماذا تختار OpenTelemetry بدلاً من وكيل خاص","‏OpenTelemetry مشروع متخرج من CNCF يوحّد الركائز الثلاث للمراقبة — التتبع والقياسات والسجلات — ضمن معيار محايد لا يرتبط بأي مورد. خلافاً لوكلاء Datadog أو New Relic، يستقبل OTel Collector بيانات القياس عن بُعد ويحولها ويصدّرها إلى أي خادم خلفي متوافق. يمكنك تغيير التخزين دون لمس كود تطبيقاتك. تشمل مجموعات تطوير البرمجيات Node‎.js وPython وGo وJava وPHP وRuby ومعظم اللغات الحديثة، مما يجعلها أساساً دائماً للقياس الفعلي بصرف النظر عن مكدسك التقني.",{"type":36,"title":37,"items":38},"ul","ما يوفره مكدس OTel و‏Grafana Tempo",[39,40,41,42,43],"**تتبع موزع بلا فهرس خارجي** — يخزن Grafana Tempo v2‎.x التتبعات في كتل مضغوطة (parquet) على القرص المحلي أو على وحدة تخزين الكائنات، دون الحاجة إلى Cassandra أو Elasticsearch.","**استعلامات TraceQL** — تتيح لغة الاستعلام المخصصة في Tempo تصفية التتبعات حسب المدة أو الخدمة أو حالة الخطأ أو السمات المخصصة في ثوانٍ.","**توافق مع بروتوكولات متعددة** — يقبل Tempo بروتوكولات OTLP وZipkin وJaeger، مما يتيح ربط تطبيقاتك الحالية دون إعادة قياس.","**مكدس خفيف على VPS** — يكفي 2 غيغابايت من الذاكرة العشوائية لبيئة التطوير أو الاختبار؛ وفي بيئة الإنتاج تحت الضغط يوفر 4 غيغابايت هامشاً مريحاً.","**تكلفة قابلة للتحكم** — يحل خادم VPS مستضاف ذاتياً بـ 99 درهم\u002Fشهر شهرياً محل اشتراك Datadog APM الذي يُفوتَر بنحو 23 دولاراً لكل مضيف شهرياً.",{"type":32,"title":45,"body":46},"المتطلبات المسبقة للخادم VPS","يجب أن يمتلك خادم VPS الخاص بك ذاكرة عشوائية لا تقل عن 2 غيغابايت وصلاحية الوصول بحساب الجذر أو sudo. يجب تثبيت Docker Engine و‏Docker Compose v2. جهّز نطاقاً فرعياً مخصصاً (مثل `grafana‎.your-domain‎.com`) لعرض واجهة Grafana خلف وكيل عكسي مؤمّن بـ TLS. يجب فتح المنفذين 4317 (‏OTLP\u002FgRPC‏) و4318 (‏OTLP\u002FHTTP‏) في جدار الحماية لاستقبال بيانات القياس من تطبيقاتك.",{"type":48,"title":49,"steps":50},"steps","نشر مكدس OTel في خمس خطوات",[51,54,57,60,63],{"title":52,"body":53},"إنشاء هيكل Docker Compose","نظّم مجلد `otel-stack\u002F` يحتوي على ملفات الإعداد وملف `docker-compose‎.yml`. عرّف أربع خدمات: `otel-collector` و`tempo` و`prometheus` و`grafana`. اربطها على شبكة Docker داخلية باسم `monitoring`. ثبّت وحدة تخزين مسماة `tempo-data` لحفظ التتبعات على قرص الخادم.",{"title":55,"body":56},"إعداد OTel Collector (‏`otelcol-config‎.yaml`‏)","أعلن عن مستقبلَين: `otlp` على المنفذين 4317 (‏gRPC‏) و4318 (‏HTTP‏). في قسم `exporters`، أضف `otlp\u002Ftempo` يشير إلى `tempo:4317` و`prometheus` على المنفذ 8889. يربط خط أنابيب `traces` المستقبِل OTLP بمصدّر Tempo؛ ويربط خط أنابيب `metrics` المستقبِل OTLP بمصدّر Prometheus.",{"title":58,"body":59},"إعداد Grafana Tempo (‏`tempo-config‎.yaml`‏)","فعّل مستقبل OTLP (‏gRPC‏ على المنفذ 4317). اضبط وضع التخزين الخلفي على `local` مع المسار `\u002Fvar\u002Ftempo`. فعّل ميزة `search` للسماح باستعلامات TraceQL من Grafana. للاستخدام في بيئة الإنتاج، استبدل التخزين الخلفي `local` بـ `s3` أو `gcs` وأدخل بيانات اعتماد وحدة التخزين الخاصة بك.",{"title":61,"body":62},"تشغيل Grafana مع مصادر بيانات Tempo و‏Prometheus","ثبّت ملف التهيئة المسبقة `datasources‎.yaml` في مجلد `\u002Fetc\u002Fgrafana\u002Fprovisioning\u002Fdatasources\u002F`. أعلن عن مصدرَي بيانات: مصدر `Tempo` يشير إلى `http:\u002F\u002Ftempo:3200` ومصدر `Prometheus` يشير إلى `http:\u002F\u002Fprometheus:9090`. شغّل المكدس بالأمر `docker compose up -d`. افتح Grafana على المنفذ 3000 وتحقق من أن مصدرَي البيانات يظهران باللون الأخضر.",{"title":64,"body":65},"قياس أول تطبيق Node‎.js أو Python","بالنسبة لـ Node‎.js، ثبّت `@opentelemetry\u002Fsdk-node` و`@opentelemetry\u002Fauto-instrumentations-node`. هيئ SDK مع مصدّر OTLP يشير إلى `http:\u002F\u002Fyour-vps:4318` واضبط متغير البيئة `OTEL_SERVICE_NAME` باسم خدمتك. بالنسبة لـ Python، استخدم `opentelemetry-distro` و`opentelemetry-exporter-otlp`. أعد تشغيل تطبيقك وافتح Grafana Explore لترى أول التتبعات تظهر.",{"type":67,"body":68},"tip","‏TraceQL هي لغة الاستعلام الأصلية في Grafana Tempo. تتيح تصفية التتبعات حسب المدة أو الخدمة أو حالة HTTP أو سمة مخصصة. فمثلاً، يعزل الاستعلام `{ duration > 500ms && status = error }` فوراً الاستدعاءات البطيئة والمخفقة عبر بنيتك التحتية بأكملها. ادمج شروطاً متعددة باستخدام `&&` أو `||` لتضييق نطاق التشخيص دون تصفح آلاف spans يدوياً.",{"type":32,"title":70,"body":71},"المزيد: ربط التتبعات والقياسات والسجلات","أضف Grafana Loki إلى مكدسك لتمركز سجلات التطبيقات في البيئة ذاتها. يتيح لك Grafana Explore الانتقال من تتبع إلى سجلاته المرتبطة بنقرة واحدة، ثم مراجعة قياسات Prometheus المقابلة على نفس النافذة الزمنية. إن كنت تفضل ثنائياً واحداً يجمع كل شيء، فإن OpenObserve بديل خفيف يضم التتبعات والقياسات والسجلات في خدمة واحدة — متاح أيضاً للاستضافة الذاتية على VPS.","Grafana est dans le catalogue ServOrbit","Déployez Grafana en un clic depuis notre Marketplace et connectez-y votre stack OTel + Tempo sans configuration manuelle.","Déployer Grafana sur VPS","\u002Fmarketplace\u002Fmonitoring\u002Fgrafana",[],1785852598747]