تصحيح إجراءات الخادم (1Cv82). إجراءات خادم التصحيح (1Cv82) بنية عملية التصحيح

تتناول هذه المقالة كيفية تمكين تصحيح الأخطاء على خادم 1C 8.1 و8.2 و8.3 على أنظمة التشغيل Windows وUbuntu.

بالإضافة إلى ذلك، أشير إلى أن هذه المقالة جزء من سلسلة صغيرة من المقالات حول تصحيح الأخطاء في 1C:

  • كيفية تمكين التصحيح على خادم 1C

تمكين التصحيح على خادم 1C في نظام التشغيل Windows

قم بتشغيل محرر التسجيل عن طريق تشغيل الأمر regedit (باستخدام Win+R أو Start->Run).

يمكنك قراءة المزيد حول تصحيح أخطاء HTTP وخادم التصحيح في المقالة التالية في السلسلة.

تمكين تصحيح الأخطاء على خادم 1C في Ubuntu

أولا نقوم بتثبيت الخادم:

توقف خدمة سودو srv1cv83

بعد ذلك، افتح الملف /etc/init.d/srv1cv83 كمستخدم متميز وابحث عن السطر الموجود فيه:

ونأتي بها على هذا الشكل:

ثم نبدأ السيرفر مرة أخرى:

بدء خدمة سودو srv1cv83

في أداة التهيئة على جهاز العميل، انتقل إلى "الإعدادات" -> "Launch 1C:Enterprise" -> "متقدم" وقم بتمكين عنصرين:

  • "تعيين وضع تمكين تصحيح الأخطاء"
  • "بدء التصحيح عند بدء التشغيل"

يمكنك القراءة عن كيفية تثبيت خادم 1C على Ubuntu 16.04/18.04.

هذا كل شيء، وآمل أن يكون هذا المقال مفيدا لك. اسمحوا لي أيضًا أن أذكركم بالمقالات الأخرى في السلسلة حول تصحيح الأخطاء في 1C؛ ويمكن العثور على روابط لها في بداية هذه المقالة.

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

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

تمكين وضع التصحيح على الخادم لإصدار النظام الأساسي 1C 8.2 والإصدارات الأحدث

خوارزمية تمكين التصحيح بسيطة للغاية. لا يفترض معرفة متعمقة بهندسة نظام التشغيل وإدارة 1C. ومع ذلك، لا يزال يتعين عليك توخي الحذر الشديد، لأنه يتم تنفيذ أعمال التصحيح مباشرة على الخادم وبحقوق المسؤول. لذلك، إذا لم تكن لديك معرفة شاملة، فاتبع بدقة خوارزمية الإجراءات دون ارتجال:

  • قم بإيقاف خدمة 1C:Enterprise Server Agent من خلال Server Manager. إذا تم الإعداد على خادم إنتاج، فيجب عليك الاهتمام مسبقًا بغياب مستخدمي 1C في قاعدة البيانات؛
  • قم بتشغيل محرر تسجيل النظام بالنقر فوق "ابدأ" - "تشغيل" أو اختصار لوحة المفاتيح "Win" + "R". في النافذة التي تفتح، أدخل السطر "رجديت"؛
  • في التسجيل تحتاج إلى العثور على العنصر؛

  • من بين المعلمات، ابحث عن "ImagePath" وقم بتغييره عن طريق إضافة "-debug" إلى القيمة الموجودة مع وجود مسافة في النهاية؛
  • من خلال مدير الخادم، ابدأ الخدمة التي تم إيقافها - "1C:Enterprise Server Agent".

تمكين وضع التصحيح على الخادم لإصدار 1C 8.1

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

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

كيفية بدء التصحيح على خادم 1C...

افتراضيًا، عند استخدام بنية خادم العميل 1C:Enterprise، يعمل وضع تصحيح أخطاء التعليمات البرمجية 1C فقط على جانب العميل. إجراءات الخادم ووظائفه غير مرئية لجهاز العميل.

لتمكين استخدام تصحيح الأخطاء على خادم 1C، يجب عليك تنفيذ الخطوات التالية:

1. ابحث عن خدمة "1C:Enterprise Server Agent 8.3" وأوقفها في مدير الخدمة (للإصدار 8.3).

2. افتح محرر تسجيل النظام. يمكنك استخدام سطر الأوامر أو أداة القائمة ابدأ - تشغيل... والأمر رجديت.

3. ابحث عن الفرع في التسجيل:

  • للإصدار 1C 8.1
  • للإصدار 1C 8.2
  • للإصدار 1C 8.3

4. قم بتغيير خاصية ImagePath، وأضف التوجيه "-debug" إلى نهاية السطر. سوف تحصل على سطر الخاصية التالي: "C:\Program Files (x86)\1cv8\8.3.6.2152\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C: \ملفات البرنامج (x86)\1cv8\srvinfo" -تصحيح

بعد ذلك، يمكن التحقق من رمز خادم 1C بأمان باستخدام مصحح الأخطاء ويمكن تعيين نقاط التوقف عند الحاجة.

8، هناك حاجة (كما هو موضح أدناه) لإعادة صياغة إجراء تصحيح الأخطاء بشكل كبير. وقد انعكس هذا في الإصدار 8.3.7.1759. أولا، تم إنشاء واجهة عالمية لهذا الإجراء، وثانيا، يضمن هذا التغيير مواصلة تطوير البرنامج نفسه. بعد كل شيء، يمكنك الآن العمل مع تصحيح الأخطاء ليس فقط من خلال Configurator، ولكن أيضًا باستخدام أدوات التطوير. دعونا نلقي نظرة على كيفية تمكين تصحيح الأخطاء على خادم 1C بدءًا من الإصدار الجديد.

باستخدام البروتوكول الجديد

كان مصحح الأخطاء السابق، والذي تم تنفيذه في الإصدارات السابقة، يدير تطبيقات العميل والخادم باستخدام بروتوكول TCP/IP.

حاليًا، بدأ استخدام مثل هذا البروتوكول في تقييد وصول برنامج 1C:Enterprise إلى الإنترنت وتسبب في إزعاج تشغيل تطبيقات الهاتف المحمول.

لذلك، من أجل الوصول المجاني إلى قواعد المعلومات التي قد تكون موجودة خارج الشبكة المحلية، تم الآن اعتماد بروتوكول HTTP المرن.

هندسة معمارية جديدة

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

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

تطبيقات الهاتف الجوال

باستخدام بروتوكول HTTP، أصبح من الممكن الآن تصحيح بيانات الخادم وبيانات العميل والتطبيقات.

تغييرات أخرى

مع الإصدار الجديد، من الممكن تغيير قيم المتغيرات المحلية في إجراء التصحيح؛ وقد تم تنفيذ نافذة عرض سريعة جديدة لهذا الغرض.

تم تغيير وضع الحساب إلى غير متزامن، مما يسمح لك بمواصلة العمل دون انتظار النتائج.

المصحح في أدوات التطوير

يتم التفاعل مع الإجراء الجديد من خلال واجهة برمجية عالمية تم تطويرها خصيصًا. من ناحية، يتم استخدام هذه الواجهة بواسطة Configurator. ومن ناحية أخرى، يتم تنفيذه في بيئة 1C:Enterprise Development Tools الجديدة.

كيف تبدو الآن

بعد تغيير البرنامج يتم الإجراء حسب السيناريو التالي:

الآن لا يقتصر الأمر على مصحح الأخطاء والعناصر فقط، كما كان الحال سابقًا. الآن تم إدخال عنصر إضافي في السلسلة - الخادم.

لا تتم إضافتها فحسب - بل إنها بمثابة العنصر الرئيسي لتبادل المعلومات بين مصحح الأخطاء والكائنات. ويتم التبادل نفسه من خلال الرسائل المصطفة في قائمة الانتظار.

وبما أن هذا التبادل يتم عبر بروتوكول HTTP، فلا يهم الآن مكان وجود البيانات بالضبط.

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

تمكين التصحيح في سيناريوهات مختلفة

بالنسبة لمطور التطبيق، لم تكن هناك أي تغييرات. والفرق الكبير هو أنه يجب تفعيل الآلية الجديدة. بعد كل شيء، تم تعطيله الآن بشكل افتراضي.

دعونا نلقي نظرة على ما يحدث عندما يبدأ الوضع إذا اخترنا أحد السيناريوهين.

البرنامج النصي للملف

في بداية إصدار الملف، يجب عليك تحديد استخدام آلية جديدة في إعدادات التكوين - "تصحيح الأخطاء عبر بروتوكول HTTP".

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

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

ستقوم الآلية الممكّنة الآن بتشغيل Debugger Server تلقائيًا، وهو تطبيق خاص dbgs.exe. ينعكس في نافذة إدارة المهام.

ستتوافق قيمة معلمة OwnerPID مع معرف التطبيق المرتبط بها.

عند بدء جلسة تصحيح الأخطاء من خلال Configurator، سيتم الاتصال بالخادم تلقائيًا. وسوف تنعكس فيه الكائنات المتصلة.

إذا تم تنشيط برنامج 1C بدون الآلية الجديدة، فستحتاج إلى تمكين تصحيح الأخطاء على خادم 1C يدويًا. الآن فقط سوف تحتاج إلى تحديد عنوان الخادم:

انتقل إلى الخدمة - الخيارات

وهو موجود في إعدادات العنصر:

انتقل إلى الاتصال - الإعدادات

عند استخدام برنامج نصي لملف مع عدة قواعد بيانات في نفس الوقت، يجب أن تأخذ في الاعتبار فارقًا بسيطًا مهمًا - يرسل كل مكون من أدوات التهيئة (مع تمكين آلية HTTP) الخادم الخاص به:

لذلك، إذا كان هناك عدة مكونين مفتوحين، لتوصيل العميل، فأنت بحاجة إلى تحديد التكوين الصحيح.

سيناريو خادم العميل

يبدأ تصحيح الأخطاء على خادم 1C باستخدام سيناريو خادم العميل، كما في الحالة السابقة، بإطلاق الوضع. يحدد هذا استخدام آلية HTTP الجديدة. ويتم ذلك بهذه الطريقة:

ragent.exe -تصحيح -http

عندما يبدأ، يبدأ مصحح الأخطاء تلقائيًا خلفه.

ستتوافق قيمة معلمة OwnerPID مع رقم تعريف مدير نظام المجموعة 1C.

سيقوم البرنامج بإنشاء اقتراح لاستخدام خادم تصحيح الأخطاء العنقودية الآن (وليس خادمًا محليًا كما في السيناريو السابق). نحن نتفق ونعيد تشغيله.

في المستقبل، كل شيء سوف يسير مثل ملف نصي. لن يبدأ تشغيل خادم مصحح الأخطاء المحلي إلا عند بدء تشغيل أداة تكوين قاعدة بيانات الخادم.

نأمل أن يكون منشورنا قد ساعدك في معرفة مشكلة كيفية تمكين تصحيح الأخطاء على خادم 1C.

لتتمكن من تصحيح أخطاء إجراءات الخادم، تحتاج إلى تعيين العلامات في نموذج "الخدمة->المعلمات" الخاص بالمكوِّن:

تصحيح الأخطاء على خادم التطبيق

هذا موصوف في الوثائق:

كتاب "1C: المؤسسة 8.1. التكوين والإدارة"

الفصل 18. أدوات التكوين

المصحح وقياسات الأداء

"تصحيح التعليمات البرمجية على الخادم

لتثبيت وضع التصحيح، يجب عليك تشغيل خادم 1C:Enterprise باستخدام مفتاح تبديل سطر الأوامر /Debug (ragent.exe /debug)."

تم وصف مفاتيح بدء تشغيل وكيل الخادم في الكتاب:

"1C: المؤسسة 8.1. خدمة الزبائن. ميزات التثبيت والاستخدام"

"تشغيل وكيل الخادم كخدمة

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

إذا تم تثبيت وكيل الخادم المركزي كتطبيق، فمن الممكن تسجيل الخدمة يدويًا ثم تشغيلها.

يتم تسجيل الخدمة باستخدام الأمر التالي:

Ragent.exe -instsrvc -usr<пользователь>-أشخاص ذوي الإعاقة<пароль>-ميناء<порт>-يتراوح<диапазоны>-seclev<уровень>-تصحيح | -rmsrvc | -ابدأ | -قف

Instsrvc – تسجيل وكيل الكتلة كخدمة Windows. إذا تم تشغيل ragent.exe باستخدام هذا المفتاح، فسيتم تسجيله في قائمة خدمات Windows وينتهي. غير متوافق مع مفاتيح -srvc، -rmsrvc؛

الولايات المتحدة<имя пользователя>

الأشخاص ذوي الإعاقة<пароль пользователя>- الاسم وكلمة المرور لمستخدم Windows الذي يجب تشغيل ragent.exe تحت اسمه كخدمة Windows. لا يمكن استخدامه إلا مع المفتاح -instsrvc عند تسجيل ragent.exe كخدمة Windows؛

ميناء<порт>- رقم المنفذ الرئيسي لعامل الكتلة. يتم استخدام هذا المنفذ بواسطة وحدة تحكم المجموعة للوصول إلى الخادم المركزي. يتم أيضًا تحديد منفذ وكيل الكتلة كمنفذ IP لخادم العمل؛

يتراوح<диапазоны>– نطاقات منافذ IP للاختيار الديناميكي. من بينها، يتم تحديد منافذ الخدمة لعمليات المجموعة إذا كان من المستحيل تحديدها من إعدادات خادم العمل المقابل. الافتراضي: 1560-1591. قيم المثال<диапазоны>: "45:49"، "45:67,70:72,77:90";

سيليف<уровень>– مستوى الأمان لعملية وكيل الكتلة. يحدد مستوى أمان الاتصالات التي تم إنشاؤها باستخدام عملية ragent.exe.<уровень>يمكن أن تأخذ القيم التالية: 0 (افتراضي) الاتصالات غير آمنة، 1 - الاتصالات الآمنة فقط طوال مدة مصادقة المستخدم، 2 - الاتصالات الآمنة بشكل دائم.

Rmsrvc – إلغاء تسجيل وكيل الكتلة كخدمة Windows. إذا تم تشغيل ragent.exe باستخدام هذا المفتاح، فإنه يلغي تسجيله في قائمة خدمات Windows ويخرج. غير متوافق مع مفاتيح -srvc، -daemon، -instsrvc.

ابدأ - قم بتشغيل ragent.exe المسجل كخدمة Windows. يقوم بتشغيل ragent.exe، المسجل مسبقًا كخدمة Windows، ثم يخرج؛

إيقاف - قم بإيقاف تسجيل ragent.exe وتشغيله كخدمة Windows. يوقف ragent.exe، المسجل مسبقًا ويعمل كخدمة Windows، ثم يخرج؛

تصحيح - إطلاق مجموعة الخادم في وضع تصحيح التكوين. "

وبالتالي، إذا تم إطلاق خادم 1C:Enterprise كخدمة ولسبب ما يجب أيضًا تشغيله كخدمة في وضع التصحيح، فيجب عليك أولاً إلغاء تسجيل الخدمة (المفتاح -rmsrvc)، ثم إعادة تسجيل الخدمة باستخدام مفتاح التصحيح.

من الواضح أنه يمكن تحقيق تأثير مماثل بطرق أخرى، على سبيل المثال، عن طريق التحرير المباشر لسجل Windows. للقيام بذلك، ربما ينبغي عليك الرجوع إلى وثائق Windows الخاصة بك.

يعمل فقط عندما يتم تعيين مفتاح "-debug" في التسجيل. وفي جميع الحالات الأخرى لا يعمل لسبب ما.

"ImagePath"=

كان "F:\Program Files\1cv81\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "F:\Program Files\1cv81\server"

اضبط "F:\Program Files\1cv81\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -debug -d "F:\Program Files\1cv81\server"