المراقبة
معرّفان يربطان كل شيء
- معرّف الاستدعاء — كل ردّ يحمل
X-Request-Id، وكل رفض يكرّره فيrequestId. سجّله مع كل استدعاء؛ فهو ما يحتاجه أنيس للعثور على استدعائك. - معرّف العملية — المعرّف الذي اخترته لطلب الشراء. سجّله في كل خطوة، من تخزين نيّة الشراء إلى تخزين الرموز. فهو يتتبّع عملية شراء واحدة عبر نظامك وأنيس.
ما يستدعي التنبيه
| الإشارة | السبب |
|---|---|
| طلبات الشراء ذات النتيجة المجهولة — انتهاء المهلة، وانقطاع الاتصال، والردود التي لا يمكن التحقق منها، وحالات الرفض التي قد يكتمل الطلب بعدها رغم ذلك | يجب استئناف كلٍّ منها بمعرّف العملية نفسه |
| الردود التي تعذّر التحقق منها | شيء ما بينك وبين أنيس غيّر ردًّا، أو أن إحدى الساعات منحرفة بشدة، أو فاتك تدوير مفتاح لدى أنيس. أما دفعة قصيرة واحدة من ردود 503 غير الموقّعة فتعني أن التوقيع لدى أنيس نفسه غير متاح لفترة وجيزة |
invalid_credentials في كل استدعاء |
أُلغي المفتاح أو استُبدل، أو انحرفت الساعة |
rate_limited |
حركة استدعاءاتك قريبة من حدّ وضعه موظفو أنيس |
لا تسجّل أبدًا
مفتاحك الخاص، أو التواقيع، أو نصوص التوقيع، أو أرقام الاستخدام الواحد (nonce)، أو رمز التسجيل، أو رموز البطاقات (الأرقام التسلسلية ورموز القسائم) — في أي مكان: السجلات، أو التتبّعات (traces)، أو المقاييس، أو تقارير الأخطاء.
مع حزمة SDK لـ .NET
تُبلغ حزمة SDK عن كل شيء تحت اسم واحد، Anis.Partners.Sdk، للتتبّعات وللمقاييس، وتكتب سجلاتها عبر نظام
التسجيل الخاص بك:
builder.Services.AddOpenTelemetry()
.WithTracing(tracing => tracing.AddSource("Anis.Partners.Sdk"))
.WithMetrics(metrics => metrics.AddMeter("Anis.Partners.Sdk"));
| المقياس | ما يخبرك به |
|---|---|
anis.partners.order.outcomes |
طلبات الشراء حسب النتيجة: completed، processing، replayed — وunknown، وهي التي يجب التنبيه عليها |
anis.partners.request.duration |
كل استدعاء، حسب المسار والحالة أو رمز الرفض |
anis.partners.signature.duration |
الوقت المستغرق في التوقيع — الخزنة (vault) البطيئة يظهر أثرها هنا |
anis.partners.response.verification.failures |
الردود التي جرى التخلّص منها، حسب القاعدة التي فشلت |
anis.partners.signing_keys.fetches |
مرات جلب المفاتيح العامة لأنيس؛ ارتفاع refresh يعني تدوير مفاتيح |
يحمل تتبّع كل استدعاء المسارَ ومعرّفَ الاستدعاء، ومعرّفَ العملية في طلبات الشراء. لا تسجّل حزمة SDK أبدًا أيًّا من الأسرار المذكورة أعلاه — إذ تفحص اختباراتها كل سطر سجل وكل تتبّع وكل مقياس بحثًا عنها.
المزيد في صفحة حزمة SDK لـ .NET.