تطوير Azure Functions باستخدام Visual Studio Code

يتيح لك ملحق Azure Functions لـ Visual Studio Code إمكانية تطوير الدوال محليًا وتوزيعها في Azure. إذا كانت هذه التجربة هي الأولى لك مع Azure Functions، يمكنك معرفة المزيد في مقدمة إلى Azure Functions.

يوفر ملحق Azure Functions هذه المزايا:

  • تحرير الدوال وإنشائها وتشغيلها على كمبيوتر التطوير المحلي.
  • نشر مشروع Azure Functions مباشرة إلى Azure.
  • كتابة الدوال بلغات مختلفة مع الاستفادة من مزايا Visual Studio Code.

يمكن استخدام الملحق مع اللغات التالية، والتي يتم دعمها من قبل وقت تشغيل Azure Functions بدءا من الإصدار 2.x:

*يتطلب قيامك بـتعيين البرنامج النصي C# كلغة المشروع الافتراضية الخاصة بك.

في هذه المقالة، تتوفر أمثلة حاليًا فقط لـ JavaScript (Node.js) ودوال مكتبة فئة C#‎.

توفر هذه المقالة تفاصيل حول كيفية استخدام ملحق Azure Functions لتطوير الدوال ونشرها إلى Azure. قبل قراءة هذه المقالة، يجب عليك إنشاء الدالة الأولى باستخدام Visual Studio Code.

هام

لا تخلط بين التطوير المحلي وتطوير المدخل لتطبيق وظائف واحد. عند النشر من مشروع محلي إلى تطبيق وظائف، تقوم عملية التوزيع بالكتابة فوق أية وظائف قمت بتطويرها في المدخل.

المتطلبات الأساسية

قبل تثبيت ملحق Azure Functions وتشغيله، يجب عليك تلبية هذه المتطلبات:

إذا لم يكن لديك اشتراك Azure، فأنشئ حساب Azure مجاني قبل أن تبدأ.

يتم إنشاء الموارد الأخرى التي تحتاج إليها، مثل حساب Azure Storage، في اشتراكك عند النشر باستخدام Visual Studio Code.

تشغيل المتطلبات المحلية

هذه المتطلبات الأساسية مطلوبة فقط من أجل تشغيل وتتبع أخطاء الدوال محليًا. وهي غير مطلوبة من أجل إنشاء مشاريع أو نشرها إلى Azure Functions.

  • Azure Functions Core Tools، الإصدار 2 أو أحدث. يتم تنزيل حزمة Core Tools وتثبيتها تلقائيًا عند بدء تشغيل المشروع محليًا. تشتمل Core Tools على وقت تشغيل Azure Functions بالكامل، لذا قد يستغرق التنزيل والتثبيت بعض الوقت.

  • ملحق #C لمحرر Visual Studio Code.

  • أدوات CLI لـ ‎.NET Core.

تثبيت ملحق Azure Functions

يمكنك استخدام ملحق Azure Functions لإنشاء الوظائف واختبارها ونشرها في Azure.

  1. في Visual Studio Code، افتح Extensions وابحث عن وظائف azure، أو حدد هذا الارتباط في Visual Studio Code: vscode:extension/ms-azuretools.vscode-azurefunctions.

  2. حدد تثبيت لتثبيت ملحق التعليمات البرمجية Visual Studio:

    Install the extension for Azure Functions

  3. بعد التثبيت، حدد أيقونة Azure على شريط النشاط. يجب أن تشاهد منطقة Azure Functions في الشريط الجانبي.

    Azure Functions area in the Side Bar

إنشاء مشروع Azure Functions

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

  1. من Azure: Functions، حدد أيقونة إنشاء دالة:

    Create a function

  2. حدد المجلد لمشروع تطبيق الوظائف، ثم حدد لغة لمشروع الدالة.

  3. حدد قالب الدالة مشغل HTTP، أو يمكنك تحديد تخطي الآن لإنشاء مشروع بدون دالة. يمكنك دائمًا إضافة دالة إلى المشروع لاحقًا.

    Choose the HTTP trigger template

  4. اكتب HttpExample لاسم الدالة، وحدد «إدخال»، ثم حدد تخويل دالة. يتطلب مستوى التخويل هذا توفير مفتاح دالة عند استدعاء نقطة النهاية للدالة.

    Select Function authorization

    يتم إنشاء دالة في اللغة التي اخترتها وفي القالب لدالة يتم تشغيلها بواسطة HTTP.

    HTTP-triggered function template in Visual Studio Code

ملفات المشروع التي تم إنشاؤها

يقوم قالب المشروع بإنشاء مشروع باللغة التي اخترتها وتثبيت التبعيات المطلوبة. بالنسبة لأي لغة، يحتوي المشروع الجديد على هذه الملفات:

  • host.json: يتيح لك تكوين مضيف Functions. تنطبق هذه الإعدادات عند تشغيل الدوال محليًا وعند تشغيلها في Azure. للحصول على مزيدٍ من المعلومات، راجع مرجع host.json.

  • local.settings.json: يحافظ على الإعدادات المستخدمة عند تشغيل الدوال محليًا. يتم استخدام هذه الإعدادات فقط عند تشغيل الدوال محليًا. لمزيد من المعلومات، راجع ملف الإعدادات المحلية.

    هام

    نظرًا لأن ملف local.settings.json يمكن أن يحتوي على بيانات سرية، يجب عليك استبعاده من عنصر التحكم بالتعليمات البرمجية المصدر للمشروع.

اعتمادًا على اللغة التي تستخدمها، يتم إنشاء هذه الملفات الأخرى:

عند هذه النقطة، يمكنك إضافة روابط الإدخال والإخراج إلى الدالة. يمكنك دائمًا إضافة دالة جديدة إلى مشروعك.

تثبيت ملحقات الربط

باستثناء HTTP ومشغلات المؤقت، يتم تنفيذ والروابط كحزم ملحق. يجب عليك تثبيت حزم الملحق للمشغلات والروابط التي تحتاج إليها. تعتمد عملية تثبيت ملحقات الربط على لغة مشروعك.

قم بتشغيل الأمر dotnet add package في نافذة Terminal لتثبيت حزم الملحقات التي تحتاجها في مشروعك. يوضح المثال التالي كيفية إضافة ربط لمكتبة فئة قيد المعالجة:

dotnet add package Microsoft.Azure.WebJobs.Extensions.<BINDING_TYPE_NAME> --version <TARGET_VERSION>

يوضح المثال التالي كيفية إضافة ربط لمكتبة فئة معالجة معزولة:

dotnet add package Microsoft.Azure.Functions.Worker.Extensions.<BINDING_TYPE_NAME> --version <TARGET_VERSION>

في كلتا الحالتين، استبدل <BINDING_TYPE_NAME> باسم الحزمة التي تحتوي على الربط الذي تحتاجه. يمكنك العثور على المقالة المرجعية للربط المطلوب في قائمة الروابط المدعومة.

استبدل <TARGET_VERSION> في المثال بإصدار محدد من الحزمة، مثل 3.0.0-beta5. يتم سرد الإصدارات الصالحة على صفحات الحزمة الفردية في NuGet.org. يتم تحديد الإصدارات الرئيسية التي تتوافق مع Functions runtime الإصدار 1.x أو 2.x في المقالة المرجعية للربط.

إضافة دالة إلى المشروع

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

تعتمد نتائج هذا الإجراء على لغة المشروع:

تتم إضافة ملف جديد لمكتبة الفئة C# (.cs) إلى المشروع.

الاتصال بالخدمات

يمكنك توصيل الدالة بخدمات Azure الأخرى عن طريق إضافة روابط الإدخال والإخراج. تقوم الروابط بربط دالتك بخدمات أخرى دون الحاجة إلى كتابة التعليمة البرمجية للاتصال. تعتمد عملية إضافة الارتباطات على لغة المشروع. راجع مشغلات Azure Functions ومفاهيم الربط لمعرفة المزيد عن الروابط.

تتصل الأمثلة التالية بقائمة انتظار تخزين تسمى outqueue، حيث يتم تعيين سلسلة الاتصال لحساب التخزين في إعداد التطبيق MyStorageConnection في local.settings.json.

قم بتحديث أسلوب الدالة لإضافة المعلمة التالية إلى تعريف الأسلوب Run:

[Queue("outqueue"),StorageAccount("AzureWebJobsStorage")] ICollector<string> msg,

المعلمة msg عبارة عن النوع ICollector<T>، وتمثل مجموعة من الرسائل التي تتم كتابتها لربط إخراج عند اكتمال الدالة. تضيف التعليمات البرمجية التالية رسالة إلى المجموعة:

// Add a message to the output collection.
msg.Add(string.Format("Name passed to the function: {0}", name));

يتم إرسال الرسائل إلى قائمة الانتظار عند اكتمال الدالة.

لمعرفة المزيد، راجع وثائق مقالة مرجع ربط إخراج تخزين قائمة الانتظار. لمعرفة المزيد بشكل عام حول الروابط التي يمكن إضافتها إلى دالة، راجع إضافة روابط إلى دالة موجودة في Azure Functions.

تسجيل الدخول إلى Azure

قبل أن تتمكن من نشر التطبيق، ينبغي تسجيل الدخول إلى Azure.

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

    Sign in to Azure within VS Code

    إذا قمت بتسجيل الدخول بالفعل، فانتقل إلى القسم التالي.

  2. عندما يطلب منك في المتصفح، اختر حساب Azure الخاص بك، ثم سجل الدخول باستخدام بيانات اعتماد حساب Azure.

  3. بعد تسجيل الدخول بنجاح، يمكنك إغلاق نافذة المتصفح الجديد. تُعرض الاشتراكات التي تنتمي إلى حساب Azure في الشريط الجانبي.

نشر إلى Azure

يتيح لك Visual Studio Code نشر مشروع Functions الخاص بك إلى Azure. في هذه العملية، يمكنك إنشاء تطبيق وظائف وموارد ذات الصلة في اشتراك Azure لديك. يوفر تطبيق الوظائف سياق تنفيذ للدوال لديك. يتم حزم المشروع وتوزيعه على تطبيق الوظائف الجديد في اشتراك Azure لديك.

عند النشر من Visual Studio Code إلى تطبيق وظائف جديد في Azure، يمكنك اختيار إما تطبيق وظائف سريع ينشئ مسارًا باستخدام الإعدادات الافتراضية أو مسارًا متقدمًا، حيث يكون لديك المزيد من التحكم في الموارد البعيدة التي تم إنشاؤها.

عند النشر من Visual Studio Code، يمكنك الاستفادة من تقنية توزيع Zip.

إنشاء تطبيق وظائف سريع

عند اختيار + إنشاء تطبيق وظائف جديد في Azure... ، يقوم الملحق تلقائيًا بإنشاء قيم لموارد Azure التي يحتاجها تطبيق الوظائف لديك. تستند هذه القيم إلى اسم تطبيق الوظائف الذي تختاره. للحصول على مثال لاستخدام الإعدادات الافتراضية لنشر المشروع إلى تطبيق وظائف جديد في Azure، راجع مقالة بدء التشغيل السريع لـ Visual Studio Code.

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

نشر مشروع إلى تطبيق وظائف جديد في Azure باستخدام خيارات متقدمة

تنشر الخطوات التالية مشروعك في تطبيق وظائف جديد تم إنشاؤه باستخدام خيارات إنشاء متقدمة:

  1. في لوحة الأوامر، أدخل Azure Functions: توزيع إلى تطبيق الوظائف.

  2. إذا لم تكن قد سجلت الدخول، فستتم مطالبتك بـ تسجيل الدخول إلى Azure. يمكنك أيضًا إنشاء حساب Azure مجاني. بعد تسجيل الدخول من المستعرض، انتقل إلى Visual Studio Code.

  3. إذا كانت لديك اشتراكات متعددة، حدد اشتراكًا لتطبيق الوظائف، ثم حدد + إنشاء تطبيق وظائف جديد في Azure... متقدم. يمنحك هذا الخيار المتقدم مزيدًا من التحكم في الموارد التي تنشئها في Azure.

  4. بعد المطالبات، قم بتوفير هذه المعلومات:

    المطالبة القيمة الوصف
    تحديد تطبيق الوظائف في Azure إنشاء تطبيق وظائف جديد في Azure في المطالبة التالية، اكتب اسمًا فريدًا عالميًا يحدد تطبيق الوظائف الجديد، ثم حدد «إدخال». الأحرف الصالحة لاسم تطبيق الوظائف هي a-z و0-9 و-.
    تحديد نظام تشغيل Windows يعمل تطبيق الوظائف على Windows.
    تحديد خطة استضافة خطة الاستهلاك يتم استخدام استضافة خطة استهلاك بلا خادم.
    تحديد وقت تشغيل لتطبيقك الجديد لغة المشروع يجب أن يتطابق وقت التشغيل مع المشروع الذي تقوم بنشره.
    تحديد مجموعة موارد للموارد الجديدة إنشاء مجموعة موارد جديدة في المطالبة التالية، اكتب اسم مجموعة موارد، مثل myResourceGroup، ثم حدد «إدخال». يمكنك أيضًا تحديد مجموعة موارد موجودة.
    تحديد حساب تخزين قم بإنشاء حساب تخزين جديد في المطالبة التالية، اكتب اسمًا فريدًا عالميًا لحساب التخزين الجديد المستخدم من قبل تطبيق الوظائف ثم حدد «إدخال». يجب أن يتراوح طول أسماء حسابات التخزين بين 3 أحرف و24 حرفًا، ويمكن أن تحتوي فقط على أرقام وأحرف صغيرة. يمكنك أيضًا تحديد حساب موجود.
    تحديد موقع للموارد الجديدة المنطقة حدد موقعًا في منطقة قريبة منك أو بالقرب من الخدمات الأخرى التي تصل الدوال إليها.

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

الحصول على عنوان URL للدالة التي تم تشغيلها بواسطة HTTP في Azure

لاستدعاء دالة مشغلة بواسطة HTTP من عميل، تحتاج إلى عنوان URL للدالة عند توزيعها في تطبيق الوظائف. يتضمن عنوان URL هذا أي مفاتيح دوال مطلوبة. يمكنك استخدام الملحق للحصول على عناوين URL هذه للدوال الموزعة. إذا كنت تريد فقط تشغيل الدالة البعيدة في Azure، فاستخدم وظيفة الملحق «الدالة Execute الآن».

  1. حدد F1 لفتح لوحة الأوامر، ثم ابحث عن الأمر Azure Functions: نسخ عنوان URL للدالة وشغله.

  2. اتبع المطالبات لتحديد تطبيق الوظائف في Azure ثم مشغل HTTP المحدد الذي تريد استدعاءه.

يتم نسخ عنوان URL للدالة إلى الحافظة، مع أية مفاتيح مطلوبة تم تمريرها بواسطة معلمة الاستعلام code. استخدم أداة HTTP لإرسال طلبات POST أو مستعرض لطلبات GET إلى الدالة البعيدة.

عند الحصول على عنوان URL للدوال في Azure، يستخدم الملحق حساب Azure الخاص بك لاسترداد المفاتيح التي يحتاجها لبدء الدالة تلقائيًا. تعرف على المزيد حول مفاتيح اختصار الدوال. يتطلب بدء تشغيل الدوال التي تم تشغيلها بدون HTTP استخدام مفتاح المسؤول.

إعادة نشر ملفات المشروع

عند إعداد التوزيع المستمر، يتم تحديث تطبيق الوظائف في Azure عند تحديث الملفات المصدر في موقع المصدر المتصل. نوصي بالتوزيع المستمر، ولكن يمكنك أيضًا إعادة نشر تحديثات ملف المشروع من Visual Studio Code.

هام

النشر إلى تطبيق دالة موجود يحل محل محتوى هذا التطبيق في Azure.

  1. في Visual Studio Code، حدد F1 لفتح لوحة الأوامر. في لوحة الأوامر، ابحث عن ⁧⁩Azure Functions: Deploy to function app⁧⁩.

  2. إذا لم تكن قد سجلت الدخول، فستتم مطالبتك ⁧⁩بتسجيل الدخول إلى Azure⁧⁩. بعد تسجيل الدخول من المستعرض، انتقل إلى Visual Studio Code. إذا كان لديك اشتراكات ⁧⁩متعددة، فحدد اشتراكًا⁧⁩ يحتوي على تطبيق الوظائف الخاصة بك.

  3. حدد تطبيق الوظائف الموجود في Azure. عندما يتم تحذيرك من الكتابة فوق كافة الملفات في تطبيق الوظائف، حدد ⁧⁩نشر⁧⁩ للاعتراف بالتحذير والمتابعة.

تتم إعادة بناء المشروع وإعادة تعبئته وتحميله إلى Azure. يتم استبدال المشروع الحالي بحزمة جديدة، وإعادة تشغيل تطبيق الوظيفة.

تشغيل الدوال

ملحق Azure Functions يتيح لك تشغيل دوال فردية، إما في مشروعك على كمبيوتر التطوير المحلي أو في اشتراك Azure.

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

تشغيل الدوال في Azure

لتنفيذ دالة في Azure من Visual Studio Code.

  1. في لوحة الأوامر، أدخل Azure Functions: تنفيذ الدالة الآن، واختر اشتراك Azure.

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

  3. اختر الدالة التي تريد تشغيلها من القائمة، واكتب نص رسالة الطلب في أدخل نص الطلب. اضغط على «إدخال» لإرسال رسالة الطلب هذه إلى دالتك. يجب أن يشير النص الافتراضي في أدخل نص الطلب إلى تنسيق النص الأساسي. إذا لم يكن لتطبيق الوظائف أي وظائف، يتم عرض خطأ إعلام بهذا الخطأ.

  4. عندما يتم تنفيذ الدالة في Azure وإرجاع استجابة، يتم رفع إعلام في Visual Studio Code.

يمكنك أيضا تشغيل الدالة الخاصة بك من منطقة Azure: Functions عن طريق النقر بزر الماوس الأيمن (النقر على زر Ctrl في نظام Mac) فوق الدالة التي تريد تشغيلها من تطبيق الوظائف في اشتراك Azure، واختيار تنفيذ الدالة الآن... .

عند تشغيل الدوال في Azure، يستخدم الملحق حساب Azure لاسترداد المفاتيح التي يحتاجها لبدء تشغيل الدالة تلقائيًا. تعرف على المزيد حول مفاتيح اختصار الدوال. يتطلب بدء تشغيل الدوال التي تم تشغيلها بدون HTTP استخدام مفتاح المسؤول.

قم بتشغيل الدالات محليًا

يعد وقت التشغيل المحلي هو نفس وقت التشغيل الذي يستضيف تطبيق الوظائف في Azure. تتم قراءة الإعدادات المحلية من ملف local.settings.json. لتشغيل مشروع Functions محليًا، يجب أن تستوفي المتطلبات الإضافية.

تكوين المشروع للتشغيل محليًا

يستخدم وقت تشغيل Functions حساب Azure Storage داخليًا لكافة أنواع المشغلات بخلاف HTTP والإخطارات على الويب. لذلك، تحتاج إلى تعيين مفتاح Values.AzureWebJobsStorage إلى سلسلة اتصال حساب Azure Storage صالح.

يستخدم هذا القسم ملحق Azure Storage لـ Visual Studio Code مع مستكشف Azure Storage للاتصال بسلسلة اتصال التخزين واستردادها.

لتعيين سلسلة اتصال حساب التخزين:

  1. في Visual Studio، افتح مستكشف السحابة، وقم بتوسيع حساب التخزين>حساب التخزين الخاص بك، ثم حدد خصائص، وانسخ قيمة سلسلة الاتصال الرئيسية.

  2. في مشروعك، افتح ملف local.settings.json، وعيّن قيمة المفتاح AzureWebJobsStorage على سلسلة الاتصال التي نسختها.

  3. كرر الخطوة السابقة لإضافة مفاتيح فريدة للصفيف القيم لأي اتصالات أخرى تتطلبها الدوال.

لمزيد من المعلومات، راجع ملف الإعدادات المحلية.

تتبع أخطاء الدوال محليًا

لتتبع أخطاء الدوال لديك، حدد F5. إذا لم تكن قد قمت بالفعل بتنزيل Core Tools، فستتم مطالبتك بذلك. عند تثبيت "Core Tools" وتشغيلها، يتم عرض الإخراج في نافذة Terminal. يتماثل هذا الأمر مع تشغيل الأمر func host startCore Tools من Terminal، ولكن مع مهام إنشاء إضافية ومصحح أخطاء مرفق.

عند تشغيل المشروع، يمكنك استخدام ميزة تنفيذ الدالة الآن... للملحق لتشغيل الدوال لديك كما تفعل عند توزيع المشروع إلى Azure. مع تشغيل المشروع في وضع تتبع الأخطاء، يتم الوصول إلى نقاط التوقف في Visual Studio Code كما هو متوقع.

  1. في لوحة الأوامر، أدخل Azure Functions: تنفيذ الدالة الآن، واختر مشروع محلي.

  2. اختر الدالة التي تريد تشغيلها في المشروع، واكتب نص رسالة الطلب في أدخل نص الطلب. اضغط على «إدخال» لإرسال رسالة الطلب هذه إلى دالتك. يجب أن يشير النص الافتراضي في أدخل نص الطلب إلى تنسيق النص الأساسي. إذا لم يكن لتطبيق الوظائف أي وظائف، يتم عرض خطأ إعلام بهذا الخطأ.

  3. عند تشغيل الدالة محليًا وبعد تلقي الاستجابة، يتم رفع إعلام في Visual Studio Code. يتم عرض معلومات حول تنفيذ الدالة في لوحة Terminal.

لا يتطلب تشغيل الدوال محليًا استخدام المفاتيح.

الإعدادات المحلية

عند التشغيل في تطبيق وظائف في Azure، يتم تخزين الإعدادات التي تتطلبها وظائفك بشكل آمن في إعدادات التطبيق. أثناء التطوير المحلي، تتم إضافة هذه الإعدادات بدلا من ذلك إلى Values الكائن في ملف local.settings.json. يخزن ملف local.settings.json أيضا الإعدادات المستخدمة بواسطة أدوات التطوير المحلية.

نظرًا إلى احتمالية احتواء الملف local.settings.json على أسرار، مثل سلاسل الاتصال، يجب عدم تخزينها في مستودع بعيد. لمعرفة المزيد حول الإعدادات المحلية، راجع ملف الإعدادات المحلية.

بشكل افتراضي، لا يتم ترحيل هذه الإعدادات تلقائيًا عند نشر المشروع إلى Azure. بعد انتهاء النشر، يتم منحك خيار إعدادات النشر من local.settings.json إلى تطبيق الوظائف في Azure. لمعرفة المزيد، راجع نشر إعدادات التطبيق.

لا يتم إطلاقًا نشر القيم الموجودة في ConnectionStrings.

يمكن أيضا قراءة قيم إعدادات تطبيق الدالة في التعليمات البرمجية الخاصة بك كمتغيرات للبيئة. لمزيد من المعلومات، راجع أقسام متغيرات البيئة من هذه المقالات المرجعية الخاصة باللغة:

إعدادات التطبيق في Azure

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

نشر إعدادات التطبيق

تتمثل أسهل طريقة لنشر الإعدادات المطلوبة إلى تطبيق الوظائف في Azure في استخدام ارتباط Upload settings الذي يظهر بعد نشر المشروع:

Upload application settings

يمكنك أيضًا نشر الإعدادات باستخدام الأمر Azure Functions: تحميل الإعدادات المحلية في لوحة الأوامر. يمكنك إضافة إعدادات فردية إلى إعدادات التطبيق في Azure باستخدام الأمر Azure Functions: إضافة إعداد جديد.

تلميح

تأكد من حفظ ملف local.settings.json قبل نشره.

إذا تم تشفير الملف المحلي، يتم فك تشفيره ونشره وتشفيره مرة أخرى. إذا كانت هناك إعدادات لها قيم متعارضة في الموقعين، تتم مطالبتك باختيار كيفية المتابعة.

اعرض إعدادات التطبيق الموجودة في منطقة Azure: Functions عن طريق توسيع اشتراكك وتطبيق الوظائف وإعدادات التطبيق.

View function app settings in Visual Studio Code

تنزيل الإعدادات من Azure

إذا قمت بإنشاء إعدادات التطبيق في Azure، يمكنك تنزيلها في ملف local.settings.json باستخدام الأمر Azure Functions: تنزيل الإعدادات البعيدة.

كما هو الحال مع التحميل، إذا تم تشفير الملف المحلي، يتم فك تشفيره وتحديثه وتشفيره مرة أخرى. إذا كانت هناك إعدادات لها قيم متعارضة في الموقعين، تتم مطالبتك باختيار كيفية المتابعة.

مراقبة الدوال

عند تشغيل الدوال محليًا، يتم دفق بيانات السجل إلى وحدة تحكم Terminal. يمكنك أيضًا الحصول على بيانات السجل عند تشغيل مشروع Functions في تطبيق الوظائف في Azure. يمكنك إما الاتصال بسجلات الدفق في Azure لرؤية بيانات السجل في الوقت الفعلي تقريبًا، أو يمكنك تمكين Application Insights لفهم أكثر اكتمالاً لكيفية تصرف تطبيق الوظائف.

سجلات الدفق

عندما تقوم بتطوير تطبيق، غالبًا ما يكون من المفيد رؤية معلومات التسجيل في الوقت الفعلي تقريبًا. يمكنك عرض دفق ملفات السجل التي يتم إنشاؤها بواسطة الدوال الخاصة بك. هذا الإخراج هو مثال على سجلات الدفق لطلب إلى دالة تم تشغيلها بواسطة HTTP:

Streaming logs output for HTTP trigger

لمعرفة المزيد، راجع سجلات الدفق.

لتشغيل سجلات الدفق لتطبيق الوظائف في Azure:

  1. حدد F1 لفتح لوحة الأوامر، ثم ابحث عن الأمر Azure Functions: Start Streaming Logs وقم بتشغيله.

  2. حدد تطبيق الوظائف في Azure، ثم حدد نعم لتمكين تسجيل التطبيق لتطبيق الوظائف.

  3. قم بتشغيل وظائفك في Azure. لاحظ أنه يتم عرض بيانات السجل في نافذة الإخراج في Visual Studio Code.

  4. عند الانتهاء، تذكر تشغيل الأمر Azure Functions: إيقاف سجلات الدفق لتعطيل التسجيل لتطبيق الوظائف.

ملاحظة

تدعم سجلات الدفق مثيلاً واحدًا فقط من مضيف Functions. عندما يتم تحجيم الدالة إلى مثيلات متعددة، لا تظهر البيانات من مثيلات أخرى في دفق السجل. يدعم دفق المقاييس المباشرة في Application Insights مثيلات متعددة. بينما أيضًا في الوقت شبه الفعلي، تستند تحليلات الدفق على عينات من البيانات.

Application Insights

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

لمعرفة المزيد حول مراقبة استخدام Application Insights، راجع مراقبة Azure Functions.

مشاريع البرنامج النصي C#‎

افتراضيًا، يتم إنشاء كافة مشاريع C# على أنها مشاريع مكتبة الفئة المحولة برمجيًا بلغة C#‎. إذا كنت تفضل العمل مع مشاريع البرنامج النصي C# بدلاً من ذلك، فإنه يجب عليك تحديد البرنامج النصي C# كلغة افتراضية في إعدادات ملحق Azure Functions:

  1. حدد ملف>تفضيلات>إعدادات.

  2. انتقل إلى إعدادات المستخدم>ملحقات>Azure Functions.

  3. حدد برنامج C# النصي من Azure Function: لغة المشروع.

بعد إكمال هذه الخطوات، تشتمل عمليات الاستدعاء التي يتم إجراؤها على Core Tools الأساسية على الخيار --csx، الذي ينشئ ملفات مشروع برنامج C# النصي (‎.csx) وينشرها. عندما يتم تحديد هذه اللغة الافتراضية، فإن جميع المشاريع التي تقوم بإنشائها تكون افتراضية لمشاريع برنامج C# النصي. لا تتم مطالبتك باختيار لغة مشروع عند تعيين إعداد افتراضي. لإنشاء مشاريع بلغات أخرى، يجب تغيير هذا الإعداد أو إزالته من ملف settings.json للمستخدم. بعد إزالة هذا الإعداد، ستتم مطالبتك مرة أخرى باختيار اللغة عند إنشاء مشروع.

مرجع لوحة الأوامر

يوفر ملحق Azure Functions واجهة رسومية مفيدة في المنطقة للتفاعل مع تطبيقات الوظائف في Azure. تتوفر نفس الوظيفة أيضًا كأوامر في لوحة الأوامر (F1). تتوفر أوامر Azure Functions هذه:

أمر Azure Functions الوصف
إضافة إعدادات جديدة ينشئ إعداد تطبيق جديد في Azure. لمعرفة المزيد، راجع نشر إعدادات التطبيق. قد تحتاج أيضا إلى تنزيل هذا الإعداد إلى الإعدادات المحلية.
تكوين مصدر التوزيع يوصل تطبيق الوظائف في Azure بمستودع Git محلي. لمعرفة المزيد، راجع التوزيع المستمر لـ Azure Functions.
الاتصال بمستودع GitHub يوصل تطبيق الوظائف بمستودع GitHub.
نسخ عنوان URL للدالة يحصل على عنوان URL البعيد لدالة تم تشغيلها بواسطة HTTP قيد التشغيل في Azure. لمعرفة المزيد، راجع الحصول على عنوان URL للدالة الموزعة.
إنشاء تطبيق الوظائف في Azure ينشئ تطبيق وظائف جديدًا في اشتراكك في Azure. لمعرفة المزيد، راجع القسم حول كيفية النشر إلى تطبيق وظائف جديد في Azure.
فك تشفير الإعدادات يفك تشفير الإعدادات المحلية التي تم تشفيرها بواسطة Azure Functions: تشفير الإعدادات.
حذف تطبيق الوظائف يزيل تطبيق الوظائف من اشتراكك في Azure. عندما لا توجد تطبيقات أخرى في خطة App Service، يتم منحك خيار حذف ذلك أيضًا. لا يتم حذف موارد أخرى، مثل حسابات التخزين ومجموعات الموارد. لإزالة كافة الموارد، يجب حذف مجموعة الموارد بدلاً من ذلك. ليس هناك تأثير على مشروعك المحلي.
حذف دالة يزيل دالة موجودة من تطبيق الوظائف في Azure. نظرًا لأن هذا الحذف لا يؤثر على مشروعك المحلي، ففكر بدلاً من ذلك في إزالة الدالة محليًا ثم إعادة نشر مشروعك.
حذف وكيل يزيل وكيل Azure Functions من تطبيق الوظائف في Azure. لمعرفة المزيد حول الوكلاء، يرجى مراجعة العمل مع وكلاء Azure Functions.
حذف الإعداد يحذف إعداد تطبيق الوظائف في Azure. لا يؤثر هذا الحذف على الإعدادات الموجودة في ملف local.settings.json.
قطع الاتصال من المستودع يزيل اتصال التوزيع المستمر بين تطبيق الوظائف في Azure ومستودع عنصر التحكم بالمصادر.
تنزيل الإعدادات البعيدة يقوم بتنزيل الإعدادات من تطبيق الوظائف المختار في Azure إلى ملف local.settings.json. إذا تم تشفير الملف المحلي، يتم فك تشفيره وتحديثه وتشفيره مرة أخرى. إذا كانت هناك إعدادات لها قيم متعارضة في الموقعين، تتم مطالبتك باختيار كيفية المتابعة. تأكد من حفظ التغييرات على ملف local.settings.json قبل تشغيل هذا الأمر.
تحرير الإعدادات يقوم بتغيير قيمة إعداد تطبيق وظائف موجود في Azure. لا يؤثر هذا الأمر على الإعدادات الموجودة في ملف local.settings.json.
تشفير الإعدادات يقوم بتشفير العناصر الفردية في صفيف Values في الإعدادات المحلية. في هذا الملف، يتم تعيين IsEncrypted أيضًا إلى true، والذي يحدد أن وقت التشغيل المحلي سيفك تشفير الإعدادات قبل استخدامها. تشفير الإعدادات المحلية للحد من خطر تسريب معلومات قيّمة. في Azure، يتم دائمًا تخزين إعدادات التطبيق مشفرةً.
تنفيذ الدالة الآن يبدأ يدويًا دالة باستخدام واجهات برمجة تطبيقات المسؤول. يُستخدم هذا الأمر للاختبار، سواء محليًا أثناء تصحيح الأخطاء أو مقابل الدوال قيد التشغيل في Azure. عند تشغيل دالة في Azure، يحصل الملحق أولاً تلقائيًا على مفتاح مسؤول، والذي يستخدمه لاستدعاء واجهات برمجة تطبيقات المسؤول البعيدة التي تبدأ العمل في Azure. يعتمد نص الرسالة المرسلة إلى واجهة برمجة التطبيقات على نوع المشغل. مشغلات المؤقت لا تتطلب منك تمرير أي بيانات.
تهيئة مشروع للاستخدام مع VS Code يضيف ملفات مشروع Visual Studio Code المطلوبة إلى مشروع Functions موجود. استخدم هذا الأمر للعمل مع مشروع قمت بإنشائه باستخدام Core Tools.
تثبيت أو تحديث Azure Functions Core Tools يقوم بتثبيت أو تحديث Azure Functions Core Tools، التي تُستخدم لتشغيل الدوال محليًا.
إعادة التوزيع يتيح لك إعادة توزيع ملفات المشروع من مستودع Git متصل إلى توزيع معين في Azure. لإعادة نشر التحديثات المحلية من Visual Studio Code، أعد نشر المشروع.
إعادة تسمية الإعدادات يقوم بتغيير الاسم الرئيسي لإعداد تطبيق وظائف موجود في Azure. لا يؤثر هذا الأمر على الإعدادات الموجودة في ملف local.settings.json. بعد إعادة تسمية الإعدادات في Azure، يجب تنزيل هذه التغييرات إلى المشروع المحلي.
إعادة التشغيل يعيد تشغيل تطبيق الوظائف في Azure. يؤدي توزيع التحديثات أيضًا إلى إعادة تشغيل تطبيق الوظائف.
تعيين AzureWebJobsStorage يقوم بتعيين قيمة إعداد التطبيق AzureWebJobsStorage. هذا الإعداد مطلوب من قبل Azure Functions. يتم تعيين هذا الإعداد عند إنشاء تطبيق وظائف في Azure.
بدء يبدأ تشغيل تطبيق وظائف متوقف في Azure.
بدء تشغيل سجلات الدفق يبدأ تشغيل سجلات الدفق لتطبيق الوظائف في Azure. استخدم سجلات الدفق أثناء استكشاف الأخطاء وإصلاحها عن بعد في Azure إذا كنت بحاجة إلى رؤية معلومات التسجيل في الوقت الفعلي تقريبًا. لمعرفة المزيد، راجع سجلات الدفق.
إيقاف يعمل على إيقاف تطبيق الوظائف قيد التشغيل في Azure.
إيقاف سجلات الدفق يؤدي إلى إيقاف سجلات الدفق لتطبيق الوظائف في Azure.
التبديل كإعداد فتحة عند تمكين هذا الإعداد، يضمن استمرار وجود أحد إعدادات التطبيق في فتحة توزيع معينة.
إلغاء تثبيت Azure Functions Core Tools يزيل Azure Functions Core Tools وهو ما يتطلبه الملحق.
تحميل الإعدادات المحلية يقوم بتحميل الإعدادات من ملف local.settings.json إلى تطبيق الوظائف المختار في Azure. إذا تم تشفير الملف المحلي، يتم فك تشفيره وتحميله وتشفيره مرة أخرى. إذا كانت هناك إعدادات لها قيم متعارضة في الموقعين، تتم مطالبتك باختيار كيفية المتابعة. تأكد من حفظ التغييرات على ملف local.settings.json قبل تشغيل هذا الأمر.
عرض التثبيت في GitHub يعرض لك آخر تثبيت في توزيع معين عند توصيل تطبيق الوظائف بمستودع.
عرض سجلات التوزيع يعرض لك سجلات توزيع محددة إلى تطبيق الوظائف في Azure.

الخطوات التالية

لمعرفة المزيد حول Azure Functions Core Tools، راجع العمل باستخدام Azure Functions Core Tools.

لمزيد من المعلومات حول تطوير الدوال كمكتبات فئة ‎.NET، راجع مرجع مطور C# لـ Azure Functions. توفر هذه المقالة أيضًا ارتباطات لأمثلة حول كيفية استخدام السمات للإعلان عن أنواع الروابط المختلفة التي تدعمها Azure Functions.