> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-mintlify-8c05c8a2.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# مجموعة البيانات التجريبية البعيدة

> بدء الاستخدام مع ClickStack ومجموعة بيانات تجريبية بعيدة

export const Image = ({img, alt, size}) => {
  return <Frame>
      <img src={img} alt={alt} />
    </Frame>;
};

**يفترض هذا الدليل أنك نشرت ClickStack مفتوح المصدر باستخدام [إرشادات الصورة الشاملة](/ar/clickstack/getting-started/oss)، أو [الوضع المحلي فقط](/ar/clickstack/deployment/local-mode-only)، وأكملت إنشاء المستخدم الأولي. أو يمكنك بدلاً من ذلك تخطي الإعداد المحلي بالكامل والاتصال مباشرةً بالعرض التوضيحي المستضاف لـ ClickStack على [play-clickstack.clickhouse.com](https://play-clickstack.clickhouse.com)، والذي يستخدم مجموعة البيانات هذه.**

يستخدم هذا الدليل مجموعة بيانات تجريبية مستضافة على ClickHouse playground العام في [sql.clickhouse.com](https://sql.clickhouse.com)، ويمكنك الاتصال بها من عملية نشر ClickStack المحلية لديك.

<Warning>
  **غير مدعوم في ClickStack المُدار**

  قواعد البيانات البعيدة غير مدعومة عند استخدام ClickStack المُدار. لذلك، مجموعة البيانات هذه غير مدعومة.
</Warning>

وتتضمن هذه المجموعة نحو 40 ساعة من البيانات المأخوذة من نسخة ClickHouse من العرض التجريبي الرسمي لـ OpenTelemetry (OTel). ويُعاد تشغيل البيانات كل ليلة مع تعديل الطوابع الزمنية لتتوافق مع النافذة الزمنية الحالية، مما يتيح للمستخدمين استكشاف سلوك النظام باستخدام السجلات والتتبعات والمقاييس المدمجة في HyperDX.

<Info>
  **اختلافات البيانات**

  نظرًا إلى أن مجموعة البيانات يُعاد تشغيلها يوميًا بدءًا من منتصف الليل، فقد تختلف العروض المرئية الدقيقة بحسب وقت استكشافك للعرض التجريبي.
</Info>

<div id="demo-scenario">
  ## سيناريو العرض التوضيحي
</div>

في هذا العرض التوضيحي، نحقق في حادثة تتعلق بموقع تجارة إلكترونية يبيع التلسكوبات والملحقات المرتبطة بها.

أفاد فريق دعم العملاء بأن المستخدمين يواجهون مشكلات في إكمال عمليات الدفع عند صفحة إتمام الشراء. وقد صُعِّدت المشكلة إلى فريق هندسة موثوقية الموقع (SRE) للتحقيق فيها.

وباستخدام HyperDX، سيحلل فريق SRE السجلات والتتبعات والمقاييس لتشخيص المشكلة وحلّها، ثم سيراجع بيانات الجلسات للتأكد من أن استنتاجاته تتوافق مع سلوك المستخدمين الفعلي.

<div id="otel-demo">
  ## العرض التجريبي
</div>

يستخدم هذا العرض التوضيحي [نسخة متفرعة يتولى ClickStack صيانتها](https://github.com/ClickHouse/opentelemetry-demo) من تطبيق العرض التجريبي الرسمي.

<div id="demo-architecture">
  ### بنية العرض التوضيحي
</div>

يتكوّن العرض التوضيحي من خدمات مصغّرة مكتوبة بلغات برمجة مختلفة، تتواصل فيما بينها عبر gRPC وHTTP، بالإضافة إلى مولّد حمل يستخدم Locust لمحاكاة حركة مرور المستخدمين. وقد عُدِّلت الشيفرة المصدرية الأصلية لهذا العرض التوضيحي لاستخدام [تهيئة ClickStack البرمجية](/ar/clickstack/ingesting-data/sdks/index).

<Image img="https://mintcdn.com/private-7c7dfe99-mintlify-8c05c8a2/RhEK5rhPj_7m6pWY/images/use-cases/observability/hyperdx-demo/architecture.png?fit=max&auto=format&n=RhEK5rhPj_7m6pWY&q=85&s=ba5f23a16dfa13c21a927d662b6f97a3" alt="البنية" size="lg" width="2180" height="2282" data-path="images/use-cases/observability/hyperdx-demo/architecture.png" />

*المصدر: [https://opentelemetry.io/docs/demo/architecture/](https://opentelemetry.io/docs/demo/architecture/)*

يمكن العثور على مزيد من التفاصيل حول العرض التوضيحي في:

* [وثائق OpenTelemetry](https://opentelemetry.io/docs/demo/)
* [نسخة fork التي تحتفظ بها ClickStack](https://github.com/ClickHouse/opentelemetry-demo)

<div id="demo-steps">
  ## خطوات العرض التوضيحي
</div>

**قمنا بتزويد هذا العرض التوضيحي بأدوات الرصد باستخدام [ClickStack SDKs](/ar/clickstack/ingesting-data/sdks/index)، مع نشر الخدمات على Kubernetes، وجمع المقاييس والسجلات منها أيضًا.**

<Steps>
  <Step>
    ### الاتصال بالخادم التجريبي

    <Info>
      **وضع Local-Only**

      يمكنك تخطي هذه الخطوة إذا نقرت على `Connect to Demo Server` عند النشر في الوضع المحلي. وإذا كنت تستخدم هذا الوضع، فستُضاف البادئة `Demo_` إلى المصادر، مثل `Demo_Logs`
    </Info>

    انتقل إلى `Team Settings` وانقر على `Edit` ضمن `Local Connection`:

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-8c05c8a2/brNmKxVjpyGdH7Ao/images/use-cases/observability/edit_connection.png?fit=max&auto=format&n=brNmKxVjpyGdH7Ao&q=85&s=76edafd78807d0f700807904b2deefc7" alt="تعديل الاتصال" size="lg" width="3600" height="1852" data-path="images/use-cases/observability/edit_connection.png" />

    أعِد تسمية الاتصال إلى `Demo` ثم أكمل النموذج التالي باستخدام تفاصيل الاتصال التالية الخاصة بالخادم التجريبي:

    * `Connection Name`: `Demo`
    * `Host`: `https://sql-clickhouse.clickhouse.com`
    * `Username`: `otel_demo`
    * `Password`: اتركه فارغًا

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-8c05c8a2/RhEK5rhPj_7m6pWY/images/use-cases/observability/hyperdx-demo/edit_demo_connection.png?fit=max&auto=format&n=RhEK5rhPj_7m6pWY&q=85&s=d9ebac1bf901bfa5c7f6096163e59783" alt="تعديل اتصال Demo" size="lg" width="3600" height="1852" data-path="images/use-cases/observability/hyperdx-demo/edit_demo_connection.png" />
  </Step>

  <Step>
    ### عدّل المصادر

    <Info>
      **وضع Local-Only**

      يمكن تخطي هذه الخطوة إذا نقرت على `Connect to Demo Server` عند النشر في الوضع المحلي. عند استخدام هذا الوضع، ستُضاف البادئة `Demo_` إلى أسماء المصادر، مثل `Demo_Logs`
    </Info>

    مرّر للأعلى إلى `Sources` وعدّل كلًّا من `Logs` و`Traces` و`Metrics` و`Sessions` لاستخدام قاعدة البيانات `otel_v2`.

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-8c05c8a2/RhEK5rhPj_7m6pWY/images/use-cases/observability/hyperdx-demo/edit_demo_source.png?fit=max&auto=format&n=RhEK5rhPj_7m6pWY&q=85&s=11a4eda3c902d423a13c29be99997ee9" alt="تحرير مصدر Demo" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/edit_demo_source.png" />

    <Note>
      قد تحتاج إلى إعادة تحميل الصفحة للتأكد من ظهور القائمة الكاملة لقواعد البيانات ضمن كل مصدر.
    </Note>
  </Step>

  <Step>
    ### اضبط الإطار الزمني

    اضبط الوقت لعرض جميع البيانات من `1 day` السابق باستخدام منتقي الوقت في أعلى اليمين.

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-8c05c8a2/RhEK5rhPj_7m6pWY/images/use-cases/observability/hyperdx-demo/step_2.png?fit=max&auto=format&n=RhEK5rhPj_7m6pWY&q=85&s=5455b88527169cc0b234eafffa2b8e56" alt="الخطوة 2" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_2.png" />

    قد تلاحظ فرقًا طفيفًا في عدد الأخطاء في المخطط الشريطي ضمن قسم النظرة العامة، مع زيادة طفيفة باللون الأحمر في عدة أشرطة متتالية.

    <Note>
      سيختلف موضع الأشرطة بحسب وقت تنفيذ الاستعلام على مجموعة البيانات.
    </Note>
  </Step>

  <Step>
    ### التصفية لإظهار الأخطاء

    لإبراز مواضع ظهور الأخطاء، استخدم عامل التصفية `SeverityText` وحدد `error` لعرض الإدخالات ذات مستوى الخطأ فقط.

    يجب أن يصبح الخطأ أكثر وضوحًا:

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-8c05c8a2/RhEK5rhPj_7m6pWY/images/use-cases/observability/hyperdx-demo/step_3.png?fit=max&auto=format&n=RhEK5rhPj_7m6pWY&q=85&s=31063af10eb53d28f6e1c34c3dc4b677" alt="الخطوة 3" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_3.png" />
  </Step>

  <Step>
    ### تحديد أنماط الأخطاء

    باستخدام ميزة Clustering في HyperDX، يمكنك تحديد الأخطاء تلقائيًا وتجميعها في أنماط ذات دلالة. وهذا يسرّع عملية التحليل عند التعامل مع كميات كبيرة من السجلات والتتبعات. لاستخدام هذه الميزة، حدِّد `Event Patterns` من قائمة `Analysis Mode` في اللوحة اليسرى.

    تكشف مجموعات الأخطاء عن مشكلات مرتبطة بعمليات الدفع الفاشلة، بما في ذلك نمطًا مُسمّى `Failed to place order`. وتشير مجموعات أخرى أيضًا إلى مشكلات في خصم المبالغ من البطاقات وامتلاء الذاكرات المؤقتة.

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-8c05c8a2/RhEK5rhPj_7m6pWY/images/use-cases/observability/hyperdx-demo/step_4.png?fit=max&auto=format&n=RhEK5rhPj_7m6pWY&q=85&s=a13d146a2e584e200e057be5e1a6095c" alt="الخطوة 4" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_4.png" />

    لاحظ أن مجموعات الأخطاء هذه يُرجَّح أنها ناتجة عن خدمات مختلفة.
  </Step>

  <Step>
    ### استكشف نمطًا من الأخطاء

    انقر على أكثر تجمّعات الأخطاء وضوحًا، والتي ترتبط بالمشكلة المُبلَّغ عنها والمتعلقة بقدرة المستخدمين على إتمام المدفوعات: `Failed to place order`.

    سيعرض ذلك قائمة بجميع حالات ظهور هذا الخطأ المرتبطة بخدمة `frontend`:

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-8c05c8a2/RhEK5rhPj_7m6pWY/images/use-cases/observability/hyperdx-demo/step_5.png?fit=max&auto=format&n=RhEK5rhPj_7m6pWY&q=85&s=e42964b7a403a9354033ee8ebbf2aab1" alt="الخطوة 5" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_5.png" />

    حدِّد أيًّا من الأخطاء الناتجة. ستُعرض البيانات الوصفية للسجلات بالتفصيل. ويشير التمرير عبر كلٍّ من `Overview` و`Column Values` إلى وجود مشكلة في بطاقات الدفع بسبب امتلاء ذاكرة التخزين المؤقت:

    `failed to charge card: could not charge the card: rpc error: code = Unknown desc = Visa cache full: cannot add new item.`

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-8c05c8a2/RhEK5rhPj_7m6pWY/images/use-cases/observability/hyperdx-demo/step_6.png?fit=max&auto=format&n=RhEK5rhPj_7m6pWY&q=85&s=839100e13689b788326b9107dc72a45a" alt="الخطوة 6" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_6.png" />
  </Step>

  <Step>
    ### استكشف البنية التحتية

    لقد حدّدنا خطأً مرتبطًا بالتخزين المؤقت يُرجَّح أنه يتسبّب في فشل عمليات الدفع. وما زلنا بحاجة إلى تحديد مصدر هذه المشكلة في بنية الخدمات المصغّرة لدينا.

    ونظرًا إلى مشكلة التخزين المؤقت، فمن المنطقي التحقّق من البنية التحتية الأساسية — فربما توجد مشكلة في الذاكرة في الكبسولات المرتبطة؟ في ClickStack، تكون السجلات والمقاييس موحّدة وتُعرض ضمن السياق، مما يسهّل اكتشاف السبب الجذري بسرعة.

    حدِّد علامة التبويب `Infrastructure` لعرض المقاييس المرتبطة بالكبسولات الأساسية لخدمة `frontend`، ثم وسِّع النطاق الزمني إلى `1d`:

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-8c05c8a2/RhEK5rhPj_7m6pWY/images/use-cases/observability/hyperdx-demo/step_7.png?fit=max&auto=format&n=RhEK5rhPj_7m6pWY&q=85&s=6f69fbe532b726168b8f636510d55156" alt="الخطوة 7" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_7.png" />

    لا يبدو أن المشكلة مرتبطة بالبنية التحتية — إذ لم تتغيّر أي مقاييس بشكل ملحوظ خلال الفترة الزمنية، سواء قبل الخطأ أو بعده. أغلِق علامة تبويب البنية التحتية.
  </Step>

  <Step>
    ### استكشاف تتبّع

    في ClickStack، تُربط بيانات التتبّع أيضًا تلقائيًا بكلٍ من السجلات والمقاييس. لنستكشف التتبّع المرتبط بالسجل الذي اخترناه لتحديد الخدمة المسؤولة.

    حدِّد `Trace` لعرض التتبّع المرتبط. وعند التمرير لأسفل في العرض التالي، يمكننا أن نرى كيف يستطيع HyperDX إظهار التتبّع الموزّع عبر الخدمات المصغّرة، مع ربط spans في كل خدمة. ومن الواضح أن عملية الدفع تتضمن عدة خدمات مصغّرة، بما فيها تلك التي تنفّذ إتمام الشراء وتحويل العملات.

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-8c05c8a2/RhEK5rhPj_7m6pWY/images/use-cases/observability/hyperdx-demo/step_8.png?fit=max&auto=format&n=RhEK5rhPj_7m6pWY&q=85&s=4c23696050604602ba248ccefbfffd37" alt="الخطوة 8" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_8.png" />

    ومن خلال التمرير إلى أسفل العرض، يمكننا أن نرى أن خدمة `payment` هي المتسببة في الخطأ، الذي ينتقل بدوره صعودًا عبر سلسلة الاستدعاءات.

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-8c05c8a2/RhEK5rhPj_7m6pWY/images/use-cases/observability/hyperdx-demo/step_9.png?fit=max&auto=format&n=RhEK5rhPj_7m6pWY&q=85&s=4d617c794297125aa26dc1b33890c52b" alt="الخطوة 9" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_9.png" />
  </Step>

  <Step>
    ### البحث في التتبعات

    لقد تبيّن أن المستخدمين يفشلون في إتمام عمليات الشراء بسبب مشكلة في ذاكرة التخزين المؤقت ضمن خدمة الدفع. دعونا نستكشف التتبعات الخاصة بهذه الخدمة بمزيد من التفصيل لنرى ما إذا كان بإمكاننا معرفة المزيد عن السبب الجذري.

    انتقل إلى عرض `Search` الرئيسي عبر تحديد `Search`. بدّل مصدر البيانات إلى `Traces` وحدد عرض `Results table`. **تأكد من أن النطاق الزمني لا يزال مضبوطًا على آخر يوم.**

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-8c05c8a2/RhEK5rhPj_7m6pWY/images/use-cases/observability/hyperdx-demo/step_10.png?fit=max&auto=format&n=RhEK5rhPj_7m6pWY&q=85&s=18758ffb7d11f3269aef842c105824a6" alt="الخطوة 10" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_10.png" />

    يعرض هذا العرض جميع التتبعات خلال آخر يوم. نحن نعلم أن المشكلة تنشأ في خدمة الدفع لدينا، لذا طبّق عامل التصفية `payment` على `ServiceName`.

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-8c05c8a2/RhEK5rhPj_7m6pWY/images/use-cases/observability/hyperdx-demo/step_11.png?fit=max&auto=format&n=RhEK5rhPj_7m6pWY&q=85&s=eedd6b490b9bf88d8b721ebb80ab1145" alt="الخطوة 11" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_11.png" />

    إذا طبّقنا تجميع الأحداث على التتبعات عبر تحديد `Event Patterns`، فسنتمكن فورًا من رؤية مشكلة ذاكرة التخزين المؤقت في خدمة `payment`.

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-8c05c8a2/RhEK5rhPj_7m6pWY/images/use-cases/observability/hyperdx-demo/step_12.png?fit=max&auto=format&n=RhEK5rhPj_7m6pWY&q=85&s=491057637f8c20772fe7ec39aefe507a" alt="الخطوة 12" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_12.png" />
  </Step>

  <Step>
    ### استكشاف البنية التحتية لأحد التتبّعات

    انتقل إلى عرض النتائج بالنقر على `Results table`. صفِّ الأخطاء باستخدام عامل التصفية `StatusCode` والقيمة `Error`.

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-8c05c8a2/RhEK5rhPj_7m6pWY/images/use-cases/observability/hyperdx-demo/step_13.png?fit=max&auto=format&n=RhEK5rhPj_7m6pWY&q=85&s=7bdc13aa0ff8e3d74d749fd946f33dd3" alt="الخطوة 13" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_13.png" />

    اختر الخطأ `Error: Visa cache full: cannot add new item.`، ثم انتقل إلى علامة التبويب `Infrastructure` ووسّع الإطار الزمني إلى `1d`.

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-8c05c8a2/RhEK5rhPj_7m6pWY/images/use-cases/observability/hyperdx-demo/step_14.png?fit=max&auto=format&n=RhEK5rhPj_7m6pWY&q=85&s=b5791afca1d7e53d98d6abf86a634ae0" alt="الخطوة 14" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_14.png" />

    من خلال ربط التتبّعات بالمقاييس، نرى أن الذاكرة وCPU قد ارتفعا في خدمة `payment`، قبل أن يهبطا إلى `0` (ويمكن إرجاع ذلك إلى إعادة تشغيل كبسولة)، ما يشير إلى أن مشكلة ذاكرة التخزين المؤقت تسببت في مشكلات على مستوى الموارد. ويمكننا توقّع أن ذلك قد أثّر في أوقات إتمام الدفع.
  </Step>

  <Step>
    ### Event deltas لتسريع تحديد السبب

    تساعد Event Deltas في إبراز الحالات الشاذة من خلال إرجاع التغيّرات في الأداء أو معدلات الأخطاء إلى مجموعات فرعية محددة من البيانات، مما يسهّل الوصول سريعًا إلى السبب الجذري.

    رغم أننا نعلم أن خدمة `payment` لديها مشكلة في `cache` تتسبب في زيادة استهلاك الموارد، فإننا لم نحدّد السبب الجذري بشكل كامل بعد.

    عُد إلى عرض جدول النتائج وحدّد الفترة الزمنية التي تتضمن الأخطاء لتضييق نطاق البيانات. احرص على تحديد عدة ساعات تسبق الأخطاء، وإن أمكن عدة ساعات بعدها أيضًا (إذ قد تكون المشكلة لا تزال مستمرة):

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-8c05c8a2/RhEK5rhPj_7m6pWY/images/use-cases/observability/hyperdx-demo/step_15.png?fit=max&auto=format&n=RhEK5rhPj_7m6pWY&q=85&s=33a481ff31a5c284b5fafde889aee8cb" alt="الخطوة 15" size="lg" width="2559" height="1240" data-path="images/use-cases/observability/hyperdx-demo/step_15.png" />

    أزل عامل تصفية الأخطاء، ثم اختر `Event Deltas` من قائمة `Analysis Mode` على اليسار.

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-8c05c8a2/RhEK5rhPj_7m6pWY/images/use-cases/observability/hyperdx-demo/step_16.png?fit=max&auto=format&n=RhEK5rhPj_7m6pWY&q=85&s=c6e9b4a67633e378f6ece3345698e86d" alt="الخطوة 16" size="lg" width="2560" height="1097" data-path="images/use-cases/observability/hyperdx-demo/step_16.png" />

    تعرض اللوحة العلوية توزيع المدد الزمنية، مع ألوان تشير إلى كثافة الأحداث (عدد `spans`). وعادةً ما تكون المجموعة الفرعية من الأحداث الواقعة خارج نطاق التركز الرئيسي هي الأجدر بالتحقيق.

    إذا حدّدنا الأحداث التي تزيد مدتها على `1ms`، وطبّقنا عامل التصفية `Filter by selection`، فسنتمكن من تحليل الفروق بين الأحداث "الطبيعية" والمجموعة عالية الكثافة من `spans` ذات المدة القريبة من 0ms:

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-8c05c8a2/RhEK5rhPj_7m6pWY/images/use-cases/observability/hyperdx-demo/step_17.png?fit=max&auto=format&n=RhEK5rhPj_7m6pWY&q=85&s=a4f31528dd8621e2f8452f2c5f5b5d4e" alt="الخطوة 17" size="lg" width="2558" height="1288" data-path="images/use-cases/observability/hyperdx-demo/step_17.png" />

    ومع إجراء التحليل على هذه المجموعة الفرعية من البيانات، نرى أن `spans` التابعة لـ "background" خارج التحديد هي في الغالب معاملات Visa، والمرتبطة باستجابات 0ms بسبب أخطاء `cache`.
  </Step>

  <Step>
    ### استخدام المخططات البيانية لمزيد من السياق

    في ClickStack، يمكننا إنشاء مخطط بياني لأي قيمة رقمية من السجلات أو التتبعات أو المقاييس للحصول على سياق أوضح.

    لقد توصلنا إلى ما يلي:

    * تكمن المشكلة في خدمة الدفع
    * ذاكرة التخزين المؤقت ممتلئة
    * أدى ذلك إلى زيادة في استهلاك الموارد
    * منعت المشكلة اكتمال مدفوعات Visa، أو على الأقل تسببت في استغراقها وقتًا طويلًا جدًا حتى تكتمل.

    <br />

    حدد `Chart Explorer` من القائمة اليسرى. أكمل القيم التالية لرسم الوقت المستغرق لإتمام المدفوعات:

    * `Data Source`: `Traces`
    * `Metric`: `Maximum`
    * `SQL Column`: `Duration`
    * `Where`: `ServiceName: payment`
    * `Timespan`: `Last 1 day`

    <br />

    سيؤدي النقر على `▶️` إلى إظهار كيف تدهور أداء المدفوعات بمرور الوقت.

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-8c05c8a2/RhEK5rhPj_7m6pWY/images/use-cases/observability/hyperdx-demo/step_18.png?fit=max&auto=format&n=RhEK5rhPj_7m6pWY&q=85&s=a2cfd99c8d95bc3da6b90696d76c810c" alt="الخطوة 18" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_18.png" />

    إذا ضبطنا `Group By` على `SpanAttributes['app.payment.card_type']` (فقط اكتب `card` للإكمال التلقائي)، فسنتمكن من رؤية كيف تدهور أداء الخدمة في معاملات Visa مقارنةً بـ Mastercard:

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-8c05c8a2/RhEK5rhPj_7m6pWY/images/use-cases/observability/hyperdx-demo/step_19.png?fit=max&auto=format&n=RhEK5rhPj_7m6pWY&q=85&s=9a9d6a446161fc5e13ceb607eda03a69" alt="الخطوة 19" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_19.png" />

    لاحظ أنه بمجرد وقوع الخطأ، يعود زمن الاستجابة إلى `0s`.
  </Step>

  <Step>
    ### استكشاف المقاييس لمزيد من السياق

    أخيرًا، لنرسم حجم الذاكرة المؤقتة كمقياس لنرى كيف تغيّر بمرور الوقت، ما يمنحنا سياقًا إضافيًا.

    أكمل القيم التالية:

    * `Data Source`: `Metrics`
    * `Metric`: `Maximum`
    * `SQL Column`: `visa_validation_cache.size (gauge)` (اكتب فقط `cache` للإكمال التلقائي)
    * `Where`: `ServiceName: payment`
    * `Group By`: `<empty>`

    يمكننا أن نرى كيف ازداد حجم الذاكرة المؤقتة على مدى 4-5 ساعات (على الأرجح بعد عملية نشر برمجي) قبل أن يصل إلى حجم أقصى قدره `100,000`. ومن `Sample Matched Events` نرى أن أخطاءنا ترتبط بوصول الذاكرة المؤقتة إلى هذا الحد، وبعد ذلك سُجِّل حجمها على أنه `0`، كما عادت الاستجابات أيضًا خلال `0s`.

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-8c05c8a2/RhEK5rhPj_7m6pWY/images/use-cases/observability/hyperdx-demo/step_20.png?fit=max&auto=format&n=RhEK5rhPj_7m6pWY&q=85&s=dbe6dee436713b5bc1fbcebeb3d2a585" alt="الخطوة 20" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_20.png" />

    باختصار، من خلال استكشاف السجلات والتتبعات وأخيرًا المقاييس، توصلنا إلى ما يلي:

    * تكمن المشكلة في خدمة الدفع
    * أدى تغيّر في سلوك الخدمة، وعلى الأرجح بسبب عملية نشر، إلى زيادة بطيئة في حجم ذاكرة Visa المؤقتة على مدى 4-5 ساعات، حتى بلغ الحد الأقصى `100,000`.
    * تسبب هذا في زيادة استهلاك الموارد مع ازدياد حجم الذاكرة المؤقتة، وعلى الأرجح بسبب تنفيذ غير جيد
    * مع ازدياد حجم الذاكرة المؤقتة، تدهور أداء مدفوعات Visa
    * عند بلوغ الحجم الأقصى، بدأت الذاكرة المؤقتة في رفض المدفوعات، وسجّلت حجمها على أنه `0`.
  </Step>

  <Step>
    ### استخدام الجلسات

    تتيح لنا الجلسات إعادة تشغيل تجربة المستخدم، بما يوفّر عرضًا مرئيًا لكيفية وقوع الخطأ من منظور المستخدم. وعلى الرغم من أنها لا تُستخدم عادةً لتشخيص الأسباب الجذرية، فإنها مفيدة لتأكيد المشكلات التي يبلّغ عنها العملاء إلى فريق الدعم، كما يمكن أن تكون نقطة انطلاق لاستقصاء أعمق.

    في HyperDX، تكون الجلسات مرتبطة بالتتبعات والسجلات، مما يوفّر رؤية كاملة للسبب الأساسي.

    على سبيل المثال، إذا زوّدك فريق الدعم بعنوان البريد الإلكتروني لمستخدم واجه مشكلة في الدفع `Ronny.Windler@gmail.com`، فغالبًا ما يكون البدء بجلسة هذا المستخدم أكثر فاعلية من البحث مباشرةً في السجلات أو التتبعات.

    انتقل إلى علامة التبويب `Client Sessions` من القائمة اليسرى، ثم تأكد من ضبط مصدر البيانات على `Sessions` والفترة الزمنية على `Last 1 day`:

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-8c05c8a2/RhEK5rhPj_7m6pWY/images/use-cases/observability/hyperdx-demo/step_21.png?fit=max&auto=format&n=RhEK5rhPj_7m6pWY&q=85&s=0c078466681be37451eb8cf1807e134d" alt="الخطوة 21" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_21.png" />

    ابحث عن `SpanAttributes.userEmail: Ronny.Windler` للعثور على جلسة عميلنا. سيؤدي تحديد الجلسة إلى عرض أحداث المتصفح ووحدات span المرتبطة بجلسة العميل على اليسار، مع إعادة عرض تجربة المستخدم في المتصفح على اليمين:

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-8c05c8a2/RhEK5rhPj_7m6pWY/images/use-cases/observability/hyperdx-demo/step_22.png?fit=max&auto=format&n=RhEK5rhPj_7m6pWY&q=85&s=68ad6155c9bd8a721180d978e050bf1d" alt="الخطوة 22" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_22.png" />
  </Step>

  <Step>
    ### إعادة عرض الجلسات

    يمكن إعادة عرض الجلسات بالضغط على زر ▶️. ويتيح التبديل بين `Highlighted` و`All Events` مستويات مختلفة من تفصيل الـ `span`، حيث يبرز الخيار الأول الأحداث الرئيسية وحالات الخطأ.

    إذا مررنا إلى أسفل الـ `spans`، يمكننا رؤية خطأ `500` مرتبطًا بـ `/api/checkout`. ويؤدي تحديد زر ▶️ لهذا الـ `span` تحديدًا إلى نقل إعادة العرض إلى هذه النقطة من الجلسة، مما يتيح لنا تأكيد تجربة العميل — إذ يبدو أن الدفع لا يعمل ببساطة من دون ظهور أي خطأ.

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-8c05c8a2/RhEK5rhPj_7m6pWY/images/use-cases/observability/hyperdx-demo/step_23.png?fit=max&auto=format&n=RhEK5rhPj_7m6pWY&q=85&s=82825a82c04225c8f234bbeef8ce8241" alt="الخطوة 23" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_23.png" />

    وباختيار الـ `span`، يمكننا تأكيد أن السبب كان خطأً داخليًا. وبالنقر على علامة التبويب `Trace` والتمرير عبر الـ `spans` المرتبطة، يمكننا التأكد من أن العميل كان بالفعل ضحية لمشكلة الـ `cache` لدينا.

    <Image img="https://mintcdn.com/private-7c7dfe99-mintlify-8c05c8a2/RhEK5rhPj_7m6pWY/images/use-cases/observability/hyperdx-demo/step_24.png?fit=max&auto=format&n=RhEK5rhPj_7m6pWY&q=85&s=4a072e8bc886a4c75829cab0c84f57c9" alt="الخطوة 24" size="lg" width="3600" height="1856" data-path="images/use-cases/observability/hyperdx-demo/step_24.png" />
  </Step>
</Steps>

يستعرض هذا العرض التوضيحي حادثة واقعية تتعلق بفشل عمليات الدفع في تطبيق للتجارة الإلكترونية، موضحًا كيف يساعد ClickStack على كشف الأسباب الجذرية من خلال السجلات والتتبعات والمقاييس وإعادة تشغيل الجلسات ضمن عرض موحّد - استكشف [أدلة البدء](/ar/clickstack/example-datasets/index) الأخرى لدينا للتعمق أكثر في ميزات محددة.
