كيف يعمل CLI
استخدم النص المقروء في الطرفية. واستخدم--json في البرامج النصية ووكلاء البرمجة.
تسجيل الدخول بالحساب ضروري لقراءات الحساب. قبل أن تبدأ تسجيل الدخول، شغّل
logbrew status --json. يجب أن يُكمل شخص التفويض في المتصفح. مفاتيح الاستيعاب
الخاصة بالمشاريع ترسل بيانات القياس عن بُعد، ولا تحل محل تسجيل الدخول بالحساب.
إنشاء المشاريع وإنشاء المفاتيح وتغيير حالة المشكلات وأولويتها والمسؤول عنها،
وعمليات النشر وتحديثات الدعم، كلها تغيّر بيانات الحساب. قبل أن تشغّل أيًّا منها،
تأكد من صحة الإجراء والهدف.
شغّل logbrew --help لترى كل الأوامر. أضف --help إلى أمر، مثل
logbrew read logs --help، لترى خياراته. شغّل logbrew help json لقواعد
JSON.
اقرأ تقرير تشخيص المشروع (doctor)
استخدم معرّف مشروع منlogbrew projects --json:
status وchecks وnext. ويحتوي كل فحص على check
وstatus وnext. الفحوص هي api وauth وproject وingest_key
وsetup وtelemetry وlogs.
رمز الخروج 0 يعني أن CLI كتب تقريرًا. ولا يعني أن المشروع جاهز. اقرأ قيمة
status في التقرير وكل فحص. الفحص الذي قيمته not_checked لم ينجح.
عندما تنجح قراءة المشروع، تكون نتيجة الفحص
logs هي visible أو empty أو
unavailable أو error أو invalid_response. لا يغيّر هذا الفحص قيمة status
في التقرير. نتيجة السجلات الفارغة لا تقول شيئًا عن الإشارات الأخرى. والقراءة
الفاشلة ليست نتيجة فارغة.
استخدم next كإرشاد للتعافي. ولا يمنحك صلاحية تغيير حالة الحساب أو المشروع.
مثال: وصول الحساب مفقود
دون بيانات اعتماد الحساب، لا يرسل الأمر أي طلب API. ويكتب هذا التقرير إلى المخرجات القياسية ويخرج بالرمز0:
state أو setup_status أو next_action.
عوامل التصفية
يقبل
--since مدة مثل 24h أو 7d، أو طابعًا زمنيًا بتنسيق RFC 3339. ويقبل
--until طابعًا زمنيًا بتنسيق RFC 3339. وهو وقت نهاية غير مشمول في النطاق، ويجب
أن يكون بعد --since. قراءة مشكلة واحدة بمعرّفها لا تقبل --until.
خطورة السجل هي info أو warning أو error أو critical. حالة المشكلة هي
مرحلتها في سير العمل، لا خطورتها. --status ignored اسم أقدم لـ
--status archived. و--status open تعني unresolved، و--status closed
تعني resolved. يختار --assignee none المشكلات التي ليس لها مسؤول، ويختار
--assignee my_teams مشكلات فرقك. وأي قيمة أخرى لـ --assignee تفشل مع
invalid_assignee.
يقبل CLI أيضًا هذه الأسماء البديلة: --project-id و--env و--service-name
و--trace-id و--distinct-id، و--level بدل --severity. استخدم الأسماء
الموجودة في الجدول في البرامج النصية الجديدة.
يقرأ هذا الأمر أخطاء يوم واحد:
-- قبل النص:
اختر حدوثًا للمشكلة
تجمع المشكلة مرات الحدوث المتطابقة. اقرأ المشكلة لمعرفة حالتها وعدد مرات حدوثها ووقتي أول ظهور وآخر ظهور:explain issue أو investigate issue لأدلة حدوث واحد. دون
--occurrence، يختار LogBrew الحدوث الموصى به. وهو ليس دائمًا أحدث حدث. لقراءة
أحدث حدث:
--occurrence أيضًا recommended أو first أو معرّف حدوث أعاده LogBrew.
ترفض هذه الأوامر عوامل تصفية المشروع والإصدار والبيئة والوقت. قبل أن تقارن
الأدلة، اقرأ الطابع الزمني للحدوث المختار. راجع
التحقيق في مشكلة لمعرفة حقول الأدلة.
غيّر حالة المشكلة وأولويتها
استخدم معرّف مشكلة واحدًا لتغيير مشكلة واحدة:archive القيمة archived، ويضبط resolve القيمة resolved، ويضبط
reopen القيمة unresolved. الأولوية هي high أو medium أو low. الأولوية
التي تضبطها بنفسك تبقى ثابتة. وإلا فإن الأولوية تتبع خطورة المشكلة.
لتغيير أكثر من مشكلة واحدة، أضف --project. يجب أن تكون كل المشكلات في ذلك
المشروع. يغيّر الأمر الواحد حتى 100 مشكلة:
updated أو unchanged
أو not_found. المشكلة unchanged كانت لها القيمة المطلوبة بالفعل. يمكنك تشغيل
الأمر نفسه مرة أخرى بعد فشل في الشبكة.
لا تطلب هذه الأوامر تأكيدًا. افحص معرّفات المشكلات أولًا. تعرض قراءات المشكلات
وتغييراتها archived بدل ignored، وتعرض priority وpriority_source
وassignee لكل مشكلة. راجع
استجابة المشكلة.
أسند المشكلات
للمشكلة مسؤول واحد أو لا مسؤول لها، والمسؤول حساب واحد أو فريق واحد. اعرض الحسابات والفرق التي يمكنك الإسناد إليها في مشروع:me، أو إلى فريق:
--project لتغيير حتى 100 مشكلة في ذلك المشروع، كما في الحالة والأولوية.
يجب أن يستطيع الحساب قراءة المشروع، ويجب أن يتبع الفريق مؤسسة المشروع. للعثور على
المشكلات المُسندة إليك أو إلى فرقك:
team #<slug> للفريق. إذا لم يكن للحساب
اسم، فتعرض عنوان البريد الإلكتروني، ثم معرّف المستخدم. المشكلة التي ليس لها مسؤول
تعرض unassigned.
المالكون والتاريخ وصندوق الوارد
issues owners المالكين المقترحين والأدلة التي فحصها. ويرسل
issues ownership set ملفات محلية لا يتجاوز كل منها 128 KiB. والملف الفارغ يمسح
نصه. ويقبل issues activity وinbox الخيار --limit من 1 إلى 200، و--cursor-time
مع --cursor-id من next_cursor. راجع
اعرف مالك المشكلة.
اضبط قواعد الخطورة
info أو warning أو error أو critical أو source. وتعيد
source عرض الخطورة الملتقَطة. ويخفي --ignore السجلات المطابقة من قائمة السجلات
الافتراضية. ودون --ignore، تعرضها القاعدة.
اقرأ الصفحة التالية
تقبل السجلات والمشكلات والإجراءات والمقاييس والتتبّعات ترقيم الصفحات بالمؤشر. أما الإصدارات فلا تقبله. استخدم--pagination cursor للصفحة الأولى:
logs وnext_cursor. وتحتوي قيمة next_cursor غير
الفارغة على time وid. أرسلهما باستخدام --cursor-time و--cursor-id:
next_cursor هي
null. استخدم المؤشر، لا عدد الصفوف، لتعرف هل توجد صفحات أخرى. قد تكون الصفحة
الأخيرة فارغة:
issues أو actions أو
metrics مكان logs.
المتابعة المباشرة
يبثlogbrew watch --json السجلات والمشكلات والإجراءات مباشرةً. أضف logs أو
issues أو actions لبث نوع واحد. tail وfollow وstream أسماء بديلة لـ
watch. لا تدعم المتابعة التتبّعات أو الـ Spans.
تحتاج المتابعة إلى --json. ومن دونه، يكتب الأمر
watch streams JSON for agents ويخرج بالرمز 1.
تعرض أحداث المشكلات في المتابعة المشكلةَ المؤرشفة على أنها ignored، دون أولوية.
اقرأ المشكلة لتعرف حالتها وأولويتها الحاليتين.
لا تقبل المتابعة إلا --severity، مثل --severity error,critical.
ولا يقبل logbrew watch actions الخيار --severity. يطبّق CLI عامل التصفية هذا
بعد أن يستلم الأحداث، ولا يقلّل ما يرسله الخادم. ليس للمتابعة عامل تصفية للمشروع
أو الإصدار أو البيئة أو الوقت. لعوامل التصفية هذه، استخدم أمر read. بعد انقطاع
مؤقت للاتصال، ينتظر CLI ثم يعيد الاتصال.
اقرأ النتائج والأخطاء
ضع--json قبل الأمر أو بعده. اقرأ رمز الخروج قبل أن تستخدم المخرجات. لا تحلّل
المخرجات المخصصة للقراءة البشرية، فقد تتغير بين الإصدارات.
تحافظ مخرجات النجاح على شكل استجابة API. وقد تكون مصفوفة أو كائنًا. دون ترقيم
الصفحات بالمؤشر، تعيد قراءة السجلات مصفوفة. المصفوفة الفارغة تعني أنه لا توجد
سجلات مطابقة. وهي ليست خطأً.
تذهب الأخطاء إلى الخطأ القياسي. الاستثناء هو
debug-artifacts --json، الذي يكتب
الأخطاء إلى المخرجات القياسية. يحتوي خطأ JSON على ok وerror وmessage
وnext. استخدم error كرمز فشل ثابت. افحص next قبل أن تشغّل الأمر الذي
يقترحه.
مثلًا، يخرج logbrew watch traces --json بالرمز 2 ويكتب:
logbrew read logs --limit 0 --json بالرمز 2 ويكتب:
