> ## Documentation Index
> Fetch the complete documentation index at: https://docs.logbrew.co/llms.txt
> Use this file to discover all available pages before exploring further.

# تحقّق من إعداد LogBrew بمفتاح قراءة المشروع

> اقرأ الحدث التجريبي من LogBrew بمفتاح قراءة المشروع. وتعرّف على ما يستطيعه كل نوع من مفاتيح المشروع وما لا يستطيعه.

إرسال الـ SDK الناجح يعني أن LogBrew قبِل الطلب. لكنه لا يعني أن LogBrew خزّن
الحدث وأنك تستطيع قراءته. للتحقق من الإعداد، أرسل حدثًا تجريبيًا واحدًا ثم اقرأه.

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

## أنواع مفاتيح المشروع

ينتمي كل مفتاح مشروع إلى مشروع واحد. ويحدد نوعه ما يستطيع فعله. اختر النوع
بالخيار `--kind` عند تشغيل `logbrew projects keys create`.

| النوع | بادئة الرمز المميز | يستطيع | لا يستطيع |
| - | - | - | - |
| `sdk` (الافتراضي)، `server`، `cli`، `browser` | `lbw_ingest_` | إرسال بيانات القياس إلى مشروعه. | قراءة بيانات القياس، أو تغيير المشكلات، أو إدارة المشاريع أو المفاتيح، أو قراءة مشروع آخر. |
| `artifact` | `lbw_ingest_` | رفع خرائط المصدر وملفات التصحيح الأصلية لمشروعه. | إرسال بيانات القياس أو قراءتها. |
| `read` | `lbw_read_` | قراءة المشكلات والتتبّعات والسجلات والإجراءات والمقاييس والإصدارات وتحليلات المنتج في مشروعه. | إرسال بيانات القياس، أو تغيير المشكلات، أو إدارة المشاريع أو المفاتيح، أو قراءة بيانات الحساب، أو قراءة مشروع آخر. |

الأنواع `sdk` و`server` و`cli` و`browser` مفاتيح استيعاب. اختر النوع الذي
يدل على مكان تشغيل المفتاح. استخدم `browser` للشيفرة التي تعمل في المتصفح. لا
تضع مفتاح القراءة أبدًا في شيفرة المتصفح أو تطبيق الهاتف المحمول أو حزمة عامة.

وصول الحساب أمر مختلف. يمنح `logbrew login` أداة CLI وصول حسابك. لا تستخدم وصول
الحساب أبدًا في إعدادات الـ SDK. ولا يستطيع مفتاح القراءة تسجيل الدخول إلى CLI
أو لوحة التحكم.

## اقرأ الحدث التجريبي

**1. أنشئ مفتاح قراءة**

تحتاج إلى وصول الحساب في هذه الخطوة. شغّل `logbrew status --json` وتأكد من
أنه يُبلغ عن وصول مصادَق عليه إلى الحساب.

```bash theme={null}
: "${LOGBREW_PROJECT_ID:?set the project UUID}"
install -d -m 700 "$HOME/.logbrew"

logbrew projects keys create "$LOGBREW_PROJECT_ID" \
  --kind read \
  --label "setup check" \
  --ingest-key-file "$HOME/.logbrew/setup-check.read" \
  --json
```

يكتب CLI المفتاح في ملف جديد لا يقرؤه إلا مالكه. ولا يطبع المفتاح أو مسار
الملف أبدًا. `--ingest-key-file` هو خيار الملف لكل أنواع المفاتيح. ويجب ألا
يكون ملف الوجهة موجودًا.

**نقطة تحقق:** تحتوي النتيجة على `status: "created"` و`ingest_key.kind: "read"`.
دوّن `ingest_key.id`، فستحتاج إليه لإبطال المفتاح.

**2. أرسل حدثًا تجريبيًا**

أرسل سجلًا تجريبيًا آمنًا واحدًا من تطبيقك بمفتاح استيعاب المشروع. اتبع خطوات
بيئة التشغيل الخاصة بك في [البدء السريع](https://docs.logbrew.co/ar/quickstart.md) أو
[إرشادات دمج SDK](https://docs.logbrew.co/ar/guides/sdk-ingestion.md). لاختبار المشكلات أيضًا، أرسل
خطأً تجريبيًا معالَجًا واحدًا.

**نقطة تحقق:** يُبلغ الـ SDK عن حالة `2xx`. وهذا يعني أن LogBrew قبِل الطلب.
انتقل إلى الخطوة التالية.

**3. اقرأ الحدث**

حمّل مفتاح القراءة في `LOGBREW_TOKEN` لجلسة الطرفية هذه فقط. ثم اقرأ المشروع:

```bash theme={null}
export LOGBREW_TOKEN="$(< "$HOME/.logbrew/setup-check.read")"

logbrew read logs --since 1h --json
logbrew issues --since 1h --json
logbrew read traces --since 1h --json
```

تعيد كل قراءة بيانات مشروع المفتاح فقط، لذلك لا تحتاج إلى `--project`. أضف
`--service` أو `--environment` أو `--release` لمطابقة الحدث التجريبي.

**نقطة تحقق:** يظهر السجل التجريبي مع الخدمة والبيئة والإصدار. ويظهر الخطأ
التجريبي على شكل مشكلة. وهذا يعني أن LogBrew خزّن الأحداث وأنك تستطيع قراءتها.

عند الانتهاء، شغّل `unset LOGBREW_TOKEN`. سيعود CLI بعدها إلى استخدام وصول
حسابك.

**4. أبطل مفتاح القراءة**

أبطل المفتاح عندما لا تعود بحاجة إليه. تحتاج هذه الخطوة إلى وصول الحساب، لذلك
ألغِ تعيين `LOGBREW_TOKEN` أولًا.

```bash theme={null}
unset LOGBREW_TOKEN

logbrew projects keys revoke "$LOGBREW_PROJECT_ID" "<key_id>" --yes --json
```

**نقطة تحقق:** تحتوي النتيجة على `status: "revoked"`. ويتوقف المفتاح عن العمل
عند طلبه التالي.

## امنح مهمة CI أو وكيلًا وصول القراءة

خصّص مفتاح قراءة لمهمة CI أو وكيل برمجة يقرأ مشروعًا واحدًا. خزّن المفتاح في
مخزن الأسرار الخاص بنظام CI أو بيئة الوكيل. واجعله متاحًا باسم `LOGBREW_TOKEN`.
لا تضع المفتاح في موجّه أو مستودع أو مخرجات أمر.

بعد ذلك، يمكن للمهمة أو الوكيل تشغيل قراءات مثل `logbrew issues --json`
و`logbrew issue "<issue_id>" --json` و`logbrew read trace "<trace_id>"`. أما
أوامر المشروع والمفاتيح والحساب فتحتاج إلى وصول الحساب. يرسل عملاء API المفتاح
كرمز Bearer إلى قراءات بيانات القياس في [Telemetry API](https://docs.logbrew.co/ar/reference/telemetry-api.md).

استخدم مفتاحًا واحدًا لكل مهمة أو وكيل. عندها يمكنك إبطال مفتاح واحد دون التأثير
في المفاتيح الأخرى.

## تعافَ من قراءة فاشلة

| النتيجة | الخطوة التالية |
| - | - |
| القائمة فارغة | انتظر بضع ثوانٍ ثم اقرأ مرة أخرى. تأكد من أن النطاق الزمني يشمل الحدث التجريبي. تأكد من أن مفتاح القراءة ومفتاح استيعاب التطبيق ينتميان إلى المشروع نفسه. السجل لا يُنشئ مشكلة. |
| `401`، `code: "unauthorized"` | مفتاح القراءة مُبطَل أو منتهي الصلاحية أو غير صالح. أنشئ مفتاح قراءة جديدًا. |
| `403`، `code: "forbidden"` | يحتاج الأمر إلى وصول الحساب، أو يحدد مشروعًا مختلفًا. احذف `--project`، أو ألغِ تعيين `LOGBREW_TOKEN` واستخدم وصول الحساب. |
| يُبلغ `logbrew status` عن عدم وجود وصول إلى الحساب | يفحص `status` وصول الحساب فقط. لاختبار مفتاح القراءة، شغّل أمر قراءة. |

إذا ظلت بيانات القياس مفقودة، فاستخدم
[فحوص أول بيانات قياس](https://docs.logbrew.co/ar/guides/troubleshooting.md#recover-missing-first-telemetry).
لاستبدال مفتاح استيعاب، راجع [تدوير مفتاح الاستيعاب](https://docs.logbrew.co/ar/guides/rotate-ingest-key.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.