مولّد إعدادات المقاييس (MCG) هو خدمة تسهّل إنشاء إعدادات قياس بيانات الاستخدام عن بُعد في SDV. يحوّل مولّد إعدادات المقاييس إعدادات JSON التي يمكن للمستخدمين قراءتها إلى تنسيق ملفات MetricsConfiguration الثنائي لبروتوكول المخزن المؤقت (protobuf) المطلوب لحملات قياس بيانات الاستخدام عن بُعد في المركبات.
MCG هي خدمة ويب تتفاعل معها باستخدام طلبات HTTP عادية. يتيح لك هذا الأسلوب المستند إلى واجهة برمجة التطبيقات استخدام أدوات سطر الأوامر، مثل curl، لإنشاء عمليات يدوية وتصحيح الأخطاء، أو دمج MCG كخادم خلفي لأدوات أكثر تطورًا، مثل واجهة رسومية لإنشاء عمليات الإعداد.
الميزات
تتطلّب خدمة القياس عن بُعد في المركبة رسالة MetricsConfiguration ثنائية
protobuf. على الرغم من إمكانية تمثيل هذه الرسالة بتنسيق textproto لأغراض
التصحيح، يتطلّب إنشاء هذا التنسيق مباشرةً معرفة تفصيلية ببنيته
المنخفضة المستوى، وقد يكون ذلك شاقًا وعرضة للأخطاء. تبسّط أداة MCG هذه
العملية من خلال نقل عملية إنشاء الإعدادات إلى تنسيق JSON سهل الاستخدام.
تتضمّن "حملات المجموعة" الميزات التالية:
- الإعداد المستند إلى JSON: يمكن تحديد إعدادات المقاييس، بما في ذلك مصادر البيانات ومنطق المعالجة وقواعد إعداد التقارير، بتنسيق JSON يمكن للمستخدم قراءته، وتجمّع "خدمة جمع المقاييس" هذا التنسيق في تنسيق protobuf الثنائي المطلوب.
- التحقّق المضمّن: تتحقّق عملية الإنشاء تلقائيًا من صحة الإعدادات مقارنةً بتعريفات الإشارات وقواعد المخطط من أجل رصد الأخطاء قبل النشر.
- إنشاء أنواع الرسائل تلقائيًا: تنتج أدوات التجميع والتقارير نتائج يجب تحديدها باستخدام واصفات رسائل البروتوكول في إعدادات الثنائيات النهائية. تستنتج "الرسائل المجمّعة" بنية هذه النتائج استنادًا إلى أنواع إشارات الإدخال ومنطق التجميع، وتنشئ تلقائيًا واصفات الرسائل المطلوبة. يُغنيك ذلك عن الحاجة إلى تحديد المخططات يدويًا لهياكل البيانات الوسيطة أو الخاصة بالتقارير.
- إنشاء التعبيرات بسهولة أكبر: يتيح لك استخدام قواعد نحوية مخصّصة يمكن لشخص عادي قراءتها تحديد التعبيرات بدون الحاجة إلى إنشاء بنى التعبيرات يدويًا.
سير العمل
يتضمّن استخدام MCG لإنشاء إعدادات المقاييس مرحلتَين رئيسيتَين: تحميل كل إصدار من كتالوج إشارات المركبات مرة واحدة، ثم كتابة إعدادات المقاييس الفردية وإنشاؤها.
تحميل تعريفات الإشارات: يجب تنفيذ هذه الخطوة مرة واحدة فقط لكل إصدار من "كتالوج إشارات المركبات". لتفعيل التحقّق من الصحة واستنتاج النوع، يجب أن يكون لدى MCG إذن بالوصول إلى تعريفات إشارات المركبة التي تريد الرجوع إليها في إعداداتك. يجب أن تكون هذه التعريفات متوفّرة مسبقًا كملفات protobuf في مشروعك كجزء من فهرس VSIDL (أو يمكنك استخدام تعريفات نموذجية للتجربة). لإتاحتها في "كتالوج إشارات المركبات"، عليك تجميعها في "كتالوج إشارات المركبات" وتحميلها باستخدام واجهة برمجة التطبيقات:
- لتجميع ملفات protobuf في FileDescriptorSet، راجِع إنشاء FileDescriptorSet.
- لترميز القائمة باستخدام base64 وتحميلها، يُرجى الاطّلاع على مقالة إضافة إصدار قائمة أو تعديله.
كتابة الإعدادات: بعد تحميل إصدار كتالوج إلى MCG، يمكنك كتابة أي عدد من إعدادات المقاييس التي تشير إليه. في إعدادات JSON، يمكنك تحديد مصادر البيانات التي تريد استخدامها، وكيفية إجراء العمليات الحسابية أو عمليات التجميع على هذه البيانات، والمشغّلات التي تحدّد وقت إنشاء النتائج.
إنشاء: أرسِل إعدادات JSON إلى واجهة برمجة تطبيقات MCG. تتحقّق واجهة برمجة التطبيقات من صحة الإعدادات وتجمّعها في
MetricsConfigurationالتنسيق. يمكن طلب ذلك بتنسيق protobuf الثنائي (application/x-protobuf) للاستخدام داخل السيارة، أو بتنسيق textproto (text/x-protobuf) للمراجعة أو تصحيح الأخطاء.- لإنشاء هذا الملف، استخدِم POST /api/v1/generate_metrics_config.
للحصول على تفاصيل شاملة حول جميع نقاط النهاية وتنسيقات الطلبات والاستجابات وأمثلة الاستخدام، يُرجى الاطّلاع على مرجع واجهة برمجة التطبيقات MCG.
التفعيل
بما أنّ MCG هي خدمة مخصّصة للعمل على السحابة الإلكترونية، تم تصميمها ليتم نشرها في بيئة سحابية (مثل Google Cloud Run)، ما يوفّر نقطة مركزية لإنشاء الإعدادات والتحقّق من صحتها في جميع فِرقك. وللحصول على تعليمات النشر، يُرجى الاطّلاع على النشر على Google Cloud.
للتطوير والاختبار على الجهاز، يمكن أيضًا تشغيل MCG كخدمة مستقلة على جهاز المطوّر. للحصول على تعليمات الإعداد، اطّلِع على مقالة التشغيل محليًا.