أنت تعرض مستندات Apigee Edge.
انتقل إلى
مستندات Apigee X. معلومات
Edge Microgateway الإصدار 2.4.x
نظرة عامة
يناقش هذا الموضوع كيفية إدارة وتهيئة Edge Microgateway، بما في ذلك المراقبة والتسجيل وتصحيح الأخطاء.
إجراء تغييرات في الضبط
تتضمن ملفات التهيئة التي تحتاج إلى معرفتها ما يلي:
- ملف إعداد النظام التلقائي
- ملف الإعداد التلقائي لمثيل Edge Microgateway الذي تم إعداده حديثًا
- ملف الإعداد الديناميكي لمثيلات التشغيل
يناقش هذا القسم هذه الملفات وما تحتاج إلى معرفته حول تغييرها. للحصول على التفاصيل حول إعدادات ملف الإعداد، راجِع ضبط Edge Microgateway. المرجع.
ضبط النظام التلقائي الملف
عند تثبيت Edge Microgateway، يتم وضع ملف تهيئة نظام افتراضي هنا:
[prefix]/lib/node_modules/edgemicro/config/default.yaml
حيث [prefix]
هو دليل البادئة npm
.
عرض المكان
هو تثبيت Edge Microgateway.
في حال تغيير ملف إعدادات النظام، يجب إعادة إعداد شبكة Edge وإعادة ضبطها ثم إعادة تشغيلها. مدخل مصغّر:
- الاتصال بـ
edgemicro init
- الاتصال بـ
edgemicro configure [params]
- الاتصال بـ
edgemicro start [params]
ملف الإعداد التلقائي لمثيلات Edge Microgateway التي تم إعدادها حديثًا
عند تشغيل edgemicro init
، يتم حفظ ملف إعداد النظام
(الموضحة أعلاه)، default.yaml
، في هذا الدليل:
~/.edgemicro
إذا غيّرت ملف الإعداد في ~/.edgemicro
، عليك إعادة الضبط ثم إعادة التشغيل.
بوابة Edge Microgateway:
edgemicro stop
edgemicro configure
[params]
edgemicro start
[params]
ديناميكية ملف إعداد لمثيلات التشغيل
عند تشغيل edgemicro configure [params]
، يتم عرض
ملف الإعداد في ~/.edgemicro
. تتم تسمية الملف وفقًا لهذا
النمط: [org]-[env]-config.yaml
،
حيث يمثل org
وenv
مؤسستك في Apigee Edge
وأسماء البيئات. يمكنك استخدام هذا الملف لإجراء تغييرات على الإعدادات، ثم إعادة تحميلها.
بدون توقف. على سبيل المثال، إذا أضفت مكوّنًا إضافيًا وضبطته، يمكنك إعادة تحميل
بدون إيقاف أي فترات توقف عن العمل، كما هو موضّح أدناه.
إذا كانت بوابة Edge Microgateway قيد التشغيل (خيار "وقت الاستراحة"):
- إعادة تحميل ضبط Edge Microgateway:
edgemicro reload -o [org] -e [env] -k [key] -s [secret]
المكان:
org
هو اسم مؤسسة Edge (يجب أن تكون org).env
هي بيئة في مؤسستك (مثل الاختبار أو إنتاج).key
هو المفتاح الذي عرضته أداة الضبط في السابق. الأمر.secret
هو المفتاح الذي يعرضه خادم الأمر الخاص بالتهيئة.
مثال
edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d000723 -s 05c14356e42ed136b8dd35cf8a18531ff52d7299134677e30ef4e34ab0cc824
في حال إيقاف بوابة Edge Microgateway:
- أعد تشغيل Edge Microgateway:
edgemicro start -o [org] -e [env] -k [key] -s [secret]
المكان:
org
هو اسم مؤسسة Edge (يجب أن تكون org).env
هي بيئة في مؤسستك (مثل الاختبار أو إنتاج).key
هو المفتاح الذي عرضته أداة الضبط في السابق. الأمر.secret
هو المفتاح الذي يعرضه خادم الأمر الخاص بالتهيئة.
مثال
edgemicro start -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d000723 -s 05c14356e42ed136b8dd35cf8a18531ff52d7299134677e30ef4e34ab0cc824
في ما يلي مثال على ملف الإعداد. للحصول على تفاصيل حول إعدادات ملف الضبط، راجع Edge Microgateway مرجع الإعدادات.
edge_config: bootstrap: >- https://edgemicroservices-us-east-1.apigee.net/edgemicro/bootstrap/organization/docs/environment/test jwt_public_key: 'https://docs-test.apigee.net/edgemicro-auth/publicKey' managementUri: 'https://api.enterprise.apigee.com' vaultName: microgateway authUri: 'https://%s-%s.apigee.net/edgemicro-auth' baseUri: >- https://edgemicroservices.apigee.net/edgemicro/%s/organization/%s/environment/%s bootstrapMessage: Please copy the following property to the edge micro agent config keySecretMessage: The following credentials are required to start edge micro products: 'https://docs-test.apigee.net/edgemicro-auth/products' edgemicro: port: 8000 max_connections: 1000 max_connections_hard: 5000 config_change_poll_interval: 600 logging: level: error dir: /var/tmp stats_log_interval: 60 rotate_interval: 24 plugins: sequence: - oauth headers: x-forwarded-for: true x-forwarded-host: true x-request-id: true x-response-time: true via: true oauth: allowNoAuthorization: false allowInvalidAuthorization: false verify_api_key_url: 'https://docs-test.apigee.net/edgemicro-auth/verifyApiKey' analytics: uri: >- https://edgemicroservices-us-east-1.apigee.net/edgemicro/axpublisher/organization/docs/environment/test
إعداد متغيرات البيئة
أوامر واجهة سطر الأوامر التي تتطلب قيمًا لمؤسسة Edge ويمكن تخزين المفتاح والسر المطلوبين لبدء بوابة Edge Microgateway في هذه المتغيرات البيئية:
EDGEMICRO_ORG
EDGEMICRO_ENV
EDGEMICRO_KEY
EDGEMICRO_SECRET
إن تعيين هذه المتغيرات أمر اختياري. إذا عيّنتها، لن تضطر إلى تحديد قيمها عند استخدام واجهة سطر الأوامر (CLI) لتهيئة بوابة Edge المصغَّرة وبدء تشغيلها.
تكوين طبقة المقابس الآمنة (SSL) على بوابة Edge الصغيرة خادم
يمكنك تهيئة خادم Microgateway لاستخدام طبقة المقابس الآمنة (SSL). على سبيل المثال، عند تهيئة طبقة المقابس الآمنة، يمكنك يمكننا استدعاء واجهات برمجة التطبيقات من خلال Edge Microgateway باستخدام البادئة "https" مثل هذا:
https://localhost:8000/myapi
لتهيئة طبقة المقابس الآمنة (SSL) على خادم Microgateway، اتبع الخطوات التالية:
- أنشئ أو احصل على شهادة ومفتاح طبقة المقابس الآمنة (SSL) باستخدام الأداة المساعدة openssl أو الطريقة التي تفضّلها.
- إضافة سمة
edgemicro:ssl
إلى بوابة Edge Microgateway ملف الإعداد. للحصول على قائمة كاملة بالخيارات، اطّلِع على الجدول أدناه. للحصول على تفاصيل حول تعديل تهيئة Edge Microgateway، راجع إجراء تغييرات على التهيئة. مثال:
edgemicro: ssl: key: <absolute path to the SSL key file> cert: <absolute path to the SSL cert file> passphrase: admin123 #option added in v2.2.2 rejectUnauthorized: true #option added in v2.2.2 requestCert: true
- أعِد تشغيل Edge Microgateway. اتّبِع الخطوات الموضّحة في مقالة إجراء تغييرات على الإعدادات بناءً على ملف الإعداد الذي عدَّلته: الملف التلقائي أو ملف إعداد بيئة التشغيل.
في ما يلي مثال على قسم Edgemicro من ملف الضبط، مع ضبط طبقة المقابس الآمنة (SSL):
edgemicro: port: 8000 max_connections: 1000 max_connections_hard: 5000 logging: level: error dir: /var/tmp stats_log_interval: 60 rotate_interval: 24 plugins: sequence: - oauth ssl: key: /MyHome/SSL/em-ssl-keys/server.key cert: /MyHome/SSL/em-ssl-keys/server.crt passphrase: admin123 #option added in v2.2.2 rejectUnauthorized: true #option added in v2.2.2
في ما يلي قائمة بجميع خيارات الخادم المتوافقة:
Option | الوصف |
---|---|
key |
المسار إلى ملف ca.key (بتنسيق PEM). |
cert |
المسار إلى ملف ca.cert (بتنسيق PEM). |
pfx |
مسار إلى ملف pfx يتضمن المفتاح الخاص والشهادة
شهادات CA للعميل بتنسيق PFX |
passphrase |
سلسلة تحتوي على عبارة المرور للمفتاح الخاص أو PFX. |
ca |
مسار إلى ملف يحتوي على قائمة بالشهادات الموثوق بها بتنسيق PEM. |
ciphers |
سلسلة تصف الرموز المراد استخدامها مفصولة بـ ":". |
rejectUnauthorized |
إذا كانت القيمة هي true، سيتم التحقّق من شهادة الخادم وفقًا لقائمة مراجع التصديق المُقدّمة. في حال حذف فشل التحقق، سيتم إرجاع خطأ. |
secureProtocol |
طريقة طبقة المقابس الآمنة (SSL) المستخدمة. على سبيل المثال، SSLv3_method لفرض طبقة المقابس الآمنة (SSL) على الإصدار 3. |
servername |
اسم الخادم لإضافة بروتوكول أمان طبقة النقل (SNI) (إشارة اسم الخادم) |
requestCert |
صحيح بالنسبة إلى طبقة المقابس الآمنة الثنائية الاتجاه؛ خطأ في طبقة المقابس الآمنة الأحادية الاتجاه |
استخدام خيارات طبقة المقابس الآمنة/بروتوكول أمان طبقة النقل (TLS) الخاصة بالعميل
يمكنك تهيئة Edge Microgateway ليكون عميل بروتوكول أمان طبقة النقل (TLS) أو طبقة المقابس الآمنة (SSL) عند الاتصال للاستهداف والنقاط النهائية. في ملف إعداد Microgateway، استخدم عنصر الأهداف لضبط طبقة المقابس الآمنة/بروتوكول أمان طبقة النقل (TLS) الخيارات.
يوفّر هذا المثال الإعدادات التي سيتم تطبيقها على جميع المضيفين:
targets: ssl: client: key: /Users/jdoe/nodecellar/twowayssl/ssl/client.key cert: /Users/jdoe/nodecellar/twowayssl/ssl/ca.crt passphrase: admin123 rejectUnauthorized: true
في هذا المثال، يتم تطبيق الإعدادات على المضيف المحدّد فقط:
targets: host: 'myserver.example.com' ssl: client: key: /Users/myname/twowayssl/ssl/client.key cert: /Users/myname/twowayssl/ssl/ca.crt passphrase: admin123 rejectUnauthorized: true
في ما يلي مثال على بروتوكول أمان طبقة النقل (TLS):
targets: host: 'myserver.example.com' tls: client: pfx: /Users/myname/twowayssl/ssl/client.pfx passphrase: admin123 rejectUnauthorized: true
في ما يلي قائمة بجميع خيارات البرامج المتوافقة:
Option | الوصف |
---|---|
pfx |
مسار إلى ملف pfx يتضمن المفتاح الخاص والشهادة
شهادات CA للعميل بتنسيق PFX |
key |
المسار إلى ملف ca.key (بتنسيق PEM). |
passphrase |
سلسلة تحتوي على عبارة المرور للمفتاح الخاص أو PFX. |
cert |
المسار إلى ملف ca.cert (بتنسيق PEM). |
ca |
مسار إلى ملف يحتوي على قائمة بالشهادات الموثوق بها بتنسيق PEM. |
ciphers |
سلسلة تصف الرموز المراد استخدامها مفصولة بـ ":". |
rejectUnauthorized |
إذا كانت القيمة هي true، سيتم التحقّق من شهادة الخادم وفقًا لقائمة مراجع التصديق المُقدّمة. في حال حذف فشل التحقق، سيتم إرجاع خطأ. |
secureProtocol |
طريقة طبقة المقابس الآمنة (SSL) المستخدمة. على سبيل المثال، SSLv3_method لفرض طبقة المقابس الآمنة (SSL) على الإصدار 3. |
servername |
اسم الخادم لإضافة بروتوكول أمان طبقة النقل (SNI) (إشارة اسم الخادم) |
تخصيص الخادم الوكيل لمصادقة Edgemicro
بشكل تلقائي، تستخدم Edge Microgateway خادمًا وكيلاً تم نشره على Apigee Edge لمصادقة OAuth2.
يتم تفعيل هذا الخادم الوكيل عند تشغيل edgemicro configure
في البداية. يمكنك
يمكنك تغيير الإعدادات التلقائية لهذا الخادم الوكيل لإتاحة المطالبات المخصّصة في ملف JSON على الويب
الرمز المميّز (JWT)، وضبط تاريخ انتهاء صلاحية الرمز المميّز، وإنشاء رموز مميّزة للتحديث. للحصول على التفاصيل، يمكنك مراجعة
صفحة edgemicro-auth
في GitHub.
استخدام خدمة مصادقة مخصصة
بشكل تلقائي، تستخدم Edge Microgateway خادمًا وكيلاً تم نشره على Apigee Edge لمصادقة OAuth2.
يتم تفعيل هذا الخادم الوكيل عند تشغيل edgemicro configure
في البداية. بشكل افتراضي،
يتم تحديد عنوان URL لهذا الخادم الوكيل في ملف تهيئة Edge Microgateway على النحو التالي:
authUri: https://myorg-myenv.apigee.net/edgemicro-auth
إذا كنت تريد استخدام خدمتك المخصصة لمعالجة المصادقة، يمكنك تغيير
قيمة authUri
في ملف الإعداد للتوجيه إلى خدمتك. بالنسبة
على سبيل المثال، قد يكون لديك خدمة تستخدم بروتوكول النفاذ إلى الدليل البسيط لإثبات الهوية.
الإدارة ملفات السجلّ
يسجل Edge Microgateway المعلومات المتعلقة بكل طلب واستجابة. توفر ملفات السجل معلومات مفيدة معلومات لتصحيح الأخطاء واستكشاف الأخطاء وإصلاحها.
مكان تخزين ملفات السجلّ
يتم تخزين ملفات السجلّ تلقائيًا في /var/tmp
.
كيفية تغيير السجلّ التلقائي دليل الملفات
يتم تحديد الدليل الذي يتم تخزين ملفات السجلّ فيه في إعدادات Edge Microgateway الملف. وللحصول على تفاصيل حول إجراء تغييرات على الضبط، يُرجى الاطِّلاع على إجراء تغييرات على الضبط.
edgemicro: home: ../gateway port: 8000 max_connections: -1 max_connections_hard: -1 logging: level: info dir: /var/tmp stats_log_interval: 60 rotate_interval: 24
غيِّر القيمة dir لتحديد دليل مختلف لملف السجلّ.
إرسال السجلّات إلى وحدة التحكّم
يمكنك تهيئة التسجيل بحيث يتم إرسال معلومات السجل إلى إخراج قياسي بدلاً من
ملف السجل. اضبط العلامة to_console
على "صحيح" على النحو التالي:
edgemicro: logging: to_console: true
من خلال هذا الإعداد، سيتم إرسال السجلّات إلى الإصدار العادي. في الوقت الحالي، لا يمكنك إرسال السجلات إلى كليهما stdout وإلى ملف السجل.
كيفية ضبط مستوى التسجيل
يمكنك ضبط مستويات السجلّ التالية: info وwarn وerror. مستوى المعلومات المقترَح. فهو يسجل جميع طلبات واجهة برمجة التطبيقات الردود، وهو الخيار الافتراضي.
كيفية تغيير الفواصل الزمنية للسجلات
يمكنك تهيئة هذه الفواصل في ملف تهيئة Edge Microgateway. للحصول على تفاصيل حول إعداد لتغييرات التهيئة، راجع إجراء تهيئة التغييرات.
السمات التي يمكن ضبطها هي:
- stats_log_interval: (التلقائي: 60) الفاصل الزمني بالثواني عند عرض الإحصاءات سجلك في ملف سجل واجهة برمجة التطبيقات.
- rotate_interval: (الافتراضي: 24) الفاصل الزمني، بالساعات، عندما تكون ملفات السجل تم تدويره. على سبيل المثال:
edgemicro: home: ../gateway port: 8000 max_connections: -1 max_connections_hard: -1 logging: level: info dir: /var/tmp stats_log_interval: 60 rotate_interval: 24
ملاحظة: لا يتم ضغط ملفات السجلّ المؤرشفة. عندما يبدأ الفاصل الزمني، يتم إنشاء ملف سجل جديد بطابع زمني جديد.
جيدة ممارسات صيانة ملفات السجلّ
ومع تراكم بيانات ملف السجلّ بمرور الوقت، تنصح Apigee باستخدام ما يلي: الممارسات:
- ونظرًا لأن ملفات السجل يمكن أن تصبح كبيرة للغاية، تأكد من أن دليل ملف السجل مساحة كافية. راجِع القسمَين التاليَين مكان تخزين ملفات السجلّ وكيفية تغيير ملف السجلّ التلقائي. الدليل.
- عليك حذف ملفات السجلّ أو نقلها إلى دليل أرشيف منفصل مرة واحدة على الأقل أسبوعيًا.
- إذا كانت سياستك هي حذف السجلات، يمكنك استخدام أمر واجهة سطر الأوامر
edgemicro log -c
لإزالة (تنظيف) السجلات القديمة.
اصطلاح تسمية ملف السجلّ
ينتج عن كل مثيل Edge Microgateway ثلاثة أنواع من ملفات السجل:
- api - لتسجيل جميع الطلبات والردود التي تتدفق من خلال Edge مدخل مصغّر. يتم أيضًا تسجيل عدّادات (الإحصاءات) والأخطاء في واجهة برمجة التطبيقات في هذا الملف.
- err - لتسجيل أي شيء تم إرساله إلى Stderr.
- out: لتسجيل أي شيء تم إرساله إلى stdout.
هذا هو اصطلاح التسمية:
edgemicro-<Host Name>-<Instance ID>-<Log Type>.log
على سبيل المثال:
edgemicro-mymachine-local-MTQzNTgNDMxODAyMQ-api.log edgemicro-mymachine-local-MTQzNTg1NDMODAyMQ-err.log edgemicro-mymachine-local-mtqzntgndmxodaymq-out.log
لمحة عن محتوى ملف السجلّ
تمت الإضافة في: الإصدار 2.3.3
بشكل تلقائي، تحذف خدمة التسجيل ملف JSON للخوادم الوكيلة والمنتجات وملف JSON الذي تم تنزيله
رمز الويب المميّز (JWT). إذا أردت إخراج هذه الكائنات إلى ملفات السجل، اضبط
DEBUG=*
عند بدء تشغيل Edge Microgateway. على سبيل المثال:
DEBUG=* edgemicro start -o docs -e test -k abc123 -s xyz456
ملاحظة: على نظام التشغيل Windows، استخدِم SET DEBUG=*
.
محتوى "واجهة برمجة التطبيقات" ملف السجلّ
"واجهة برمجة التطبيقات" يحتوي ملف السجلّ على معلومات تفصيلية حول تدفق الطلبات والردود عبر بوابة Edge Microgateway. "واجهة برمجة التطبيقات" على النحو التالي:
edgemicro-mymachine-local-MTQzNjIxOTk0NzY0Nw-api.log
لكل طلب يتم إجراؤه على Edge Microgateway، يتم تسجيل أربعة أحداث في "واجهة برمجة التطبيقات" تسجيل الملف:
- طلب وارد من العميل
- طلب صادر تم إجراؤه إلى الهدف
- ردّ وارد من الهدف
- رد صادر للعميل
يتم تمثيل كل إدخال من هذه الإدخالات المنفصلة في تدوين مختصر للمساعدة في جعل السجل الملفات أكثر إحكاما. فيما يلي أربعة نماذج من الإدخالات تمثل كل من الأحداث الأربعة. في السجلّ هكذا، تظهر أرقام الأسطر كمرجع في المستند فقط، ولا تظهر في ملف السجل).
(1) 1436403888651 info req m=GET, u=/, h=localhost:8000, r=::1:59715, i=0 (2) 1436403888665 info treq m=GET, u=/, h=127.0.0.18080, i=0 (3) 1436403888672 info tres s=200, d=7, i=0 (4) 1436403888676 info res s=200, d=11, i=0
لنلقِ نظرة عليهما واحدة تلو الأخرى:
1. نموذج لطلب وارد من العميل:
1436403888651 info req m=GET, u=/, h=localhost:8000, r=::1:59715, i=0
- 1436403888651 - طابع تاريخ Unix
- info: استنادًا إلى السياق. يمكن أن تكون معلومات أو تحذيرًا أو أخطاءً اعتمادًا على مستوى السجل. يمكن أن يكون إحصاءات لسجل إحصاءات، أو تحذير، أو عن الأخطاء.
- req - لتحديد الحدث. في هذه الحالة، يطلب من البرنامج.
- m - الفعل HTTP المستخدم في الطلب.
- u - جزء عنوان URL الذي يلي المسار الأساسي.
- h - المضيف ورقم المنفذ حيث توجد بوابة Edge Microgateway الاستماع.
- r - المضيف البعيد والمنفذ حيث يطلب العميل التي تم إنشاؤها.
- i - معرّف الطلب ستتشارك جميع إدخالات الحدث الأربعة هذا المعرّف. على كل يتم تعيين معرف طلب فريد لطلبك. يمكن أن يوفر ربط سجلات السجل حسب معرّف الطلب إحصاءات قيّمة حول وقت استجابة الهدف.
- d - المدة بالمللي ثانية منذ استلام الطلب من قِبل مدخل مصغّر على حافة في المثال أعلاه، تم استلام ردّ الاستهداف على الطلب 0 بعد 7 مللي ثانية (السطر 3)، وتم إرسال الاستجابة إلى العميل بعد مللي ثانية (السطر 4). أو بعبارةٍ أخرى، بلغ إجمالي وقت استجابة الطلب 11 مللي ثانية، من والتي تم أخذها 7 مللي ثانية بواسطة الهدف و4 مللي ثانية بواسطة Edge Microgateway نفسها.
2. نموذج من الطلب الصادر الذي تم تقديمه إلى الهدف:
1436403888665 info treq m=GET, u=/, h=127.0.0.1:8080, i=0
- 1436403888651 - طابع تاريخ Unix
- info: استنادًا إلى السياق. يمكن أن تكون معلومات أو تحذيرًا أو أخطاءً اعتمادًا على مستوى السجل. يمكن أن يكون إحصاءات لسجل إحصاءات، أو تحذير، أو عن الأخطاء.
- treq - لتحديد الحدث. في هذه الحالة، الطلب المستهدف.
- m - الفعل HTTP المستخدَم في الطلب المستهدف.
- u - جزء عنوان URL الذي يلي المسار الأساسي.
- h - المضيف ورقم المنفذ لهدف الخلفية.
- i - رقم تعريف إدخال السجل. ستشارك جميع إدخالات الحدث الأربعة هذه رقم التعريف
3. نموذج للردود الواردة من الهدف
1436403888672 info tres s=200, d=7, i=0
1436403888651 - طابع تاريخ Unix
- info: استنادًا إلى السياق. يمكن أن تكون معلومات أو تحذيرًا أو أخطاءً اعتمادًا على مستوى السجل. يمكن أن يكون إحصاءات لسجل إحصاءات، أو تحذير، أو عن الأخطاء.
- tres - لتحديد الحدث. في هذه الحالة، الاستجابة المستهدفة.
- s: حالة استجابة HTTP.
- d - المدة بالمللي ثانية. الوقت الذي يستغرقه استدعاء واجهة برمجة التطبيقات بواسطة الهدف.
- i - رقم تعريف إدخال السجل. ستشارك جميع إدخالات الحدث الأربعة هذه رقم التعريف
4- نموذج من الردّ الصادر إلى العميل
1436403888676 info res s=200, d=11, i=0
1436403888651 - طابع تاريخ Unix
- info: استنادًا إلى السياق. يمكن أن تكون معلومات أو تحذيرًا أو أخطاءً اعتمادًا على مستوى السجل. يمكن أن يكون إحصاءات لسجل إحصاءات، أو تحذير، أو عن الأخطاء.
- res - لتحديد الحدث في هذه الحالة، الاستجابة على البرنامج.
- s: حالة استجابة HTTP.
- d - المدة بالمللي ثانية. هذا هو إجمالي الوقت المستغرق من خلال طلب بيانات من واجهة برمجة التطبيقات، بما في ذلك الوقت الذي تستغرقه واجهة برمجة التطبيقات المستهدفة والوقت الذي يستغرقه Edge المدخل المصغّر نفسه.
- i - رقم تعريف إدخال السجل. ستشارك جميع إدخالات الحدث الأربعة هذه رقم التعريف
الجدول الزمني لملف السجلّ
يتم تدوير ملفات السجل على الفاصل الزمني المحدد إعداد rotate_interval . وستستمر إضافة الإدخالات إلى ملف السجلّ نفسه إلى أن ينتهي الفاصل الزمني للتدوير. تنتهي صلاحيته. ومع ذلك، فإنه في كل مرة يتم فيها إعادة تشغيل Edge Microgateway، فإنه يتلقى معرفًا فريدًا (UID) جديدًا وينشئ مجموعة جديدة من ملفات السجلات بالمعرف الفريد هذا. يمكنك الاطّلاع أيضًا على الممارسات الجيدة لصيانة ملفات السجلّ.
ضبط المدخل المصغّر على الحافة مرجع
موقع ملف إعداد
تقع سمات الإعدادات الموضحة في هذا القسم في بوابة Edge Microgateway ملف الإعداد. وللحصول على تفاصيل حول إجراء تغييرات على الضبط، يُرجى الاطِّلاع على إجراء تغييرات على الضبط.
سمات Edge_config
تُستخدم هذه الإعدادات لتهيئة التفاعل بين مثيل Edge Microgateway Apigee Edge.
- bootsttrip: (الإعداد التلقائي: لا شيء) عنوان URL يشير إلى إحدى الحافة.
خدمة خاصة بالبوابة المصغّرة قيد التشغيل على Apigee Edge. تستخدم Edge Microgateway هذه الخدمة
التواصل مع Apigee Edge. ويتم عرض عنوان URL هذا عند تنفيذ الأمر لإنشاء
مفتاحا التشفير العام/الخاص:
edgemicro genkeys
. راجع الإعدادات لضبط Edge Microgateway للحصول على التفاصيل. - jwt_public_key: (الإعداد التلقائي: none) عنوان URL يشير إلى بوابة Edge Microgateway الخادم الوكيل الذي تم نشره على Apigee Edge. يعمل هذا الخادم الوكيل كنقطة نهاية للمصادقة إصدار رموز الدخول الموقعة للعملاء. يتم عرض عنوان URL هذا عند تنفيذ الأمر تفعيل الخادم الوكيل: edgemicro Configuration راجع الإعدادات لضبط Edge Microgateway للحصول على التفاصيل.
سمات Edgemicro
تعمل هذه الإعدادات على تهيئة عملية بوابة Edge Microgateway.
- port: (الإعداد التلقائي: 8000) رقم المنفذ الذي على بوابة Edge Microgateway الاستماع إلى عملية ما.
- max_connections: (الإعداد التلقائي: -1) لتحديد الحدّ الأقصى
الاتصالات الواردة المتزامنة التي يمكن أن تستقبلها Edge Microgateway. إذا كان هذا الرقم
تم تجاوزه، يتم عرض الحالة التالية:
res.statusCode = 429; // Too many requests
- max_connections_hard: (التلقائي: -1) الحد الأقصى لعدد الاتصالات المتزامنة التي يمكن أن يتلقاها Edge Microgateway قبل إيقاف الاتصال. هذا الإعداد يهدف إلى إحباط هجمات الحرمان من الخدمة. وعادةً ما يتم ضبطها على رقم أكبر من max_connections.
-
تسجيل الدخول:
-
level: (القيمة التلقائية: خطأ)
- info: لتسجيل جميع الطلبات والردود التي تتدفق من خلال مثيل Edge Microgateway.
- warn - لتسجيل رسائل التحذير فقط.
- error - يُسجّل رسائل الخطأ فقط.
- dir: (الإعداد التلقائي: /var/tmp) الدليل الذي يتضمّن ملفات السجلّ تخزين البيانات.
- stats_log_interval: (التلقائي: 60) الفاصل الزمني بالثواني عند عرض الإحصاءات سجلك في ملف سجل واجهة برمجة التطبيقات.
- rotate_interval: (الافتراضي: 24) الفاصل الزمني، بالساعات، عندما تكون ملفات السجل تم تدويره.
-
level: (القيمة التلقائية: خطأ)
- المكوّنات الإضافية: تضيف المكوّنات الإضافية وظائف إلى بوابة Edge Microgateway. للحصول على التفاصيل حول تطوير المكوّنات الإضافية، راجع تطوير المكوّنات الإضافية المكونات الإضافية.
- dir: مسار نسبي من دليل ./gateway إلى الدليل دليل ./extensions أو مسار مطلق.
- التسلسل: قائمة بوحدات المكوّنات الإضافية المطلوب إضافتها إلى جهاز Edge Microgateway مثال. سيتم تنفيذ الوحدات بالترتيب المحدد هنا.
-
debug: لإضافة تصحيح الأخطاء عن بُعد إلى عملية Edge Microgateway.
- port: رقم المنفذ المطلوب الاستماع إليه على سبيل المثال، يمكنك ضبط برنامج تصحيح أخطاء بيئة التطوير المتكاملة (IDE). من الاستماع على هذا المنفذ.
- الوسيطات: وسيطات لعملية تصحيح الأخطاء على سبيل المثال:
args --nolazy
- config_change_poll_interval: (الافتراضي: 600 ثانية) بوابة Edge Microgateway
يُحمِّل ضبطًا جديدًا بشكلٍ دوري وينفِّذ عملية إعادة تحميل في حال حدوث أي تغيير. الاستطلاع
تلتقط أي تغييرات يتم إجراؤها على Edge (التغييرات على المنتجات، والخوادم الوكيلة الواعية بالبوابة المصغّرة، وما إلى ذلك)
بالإضافة إلى التغييرات التي تم إجراؤها على ملف التهيئة المحلي.
- disable_config_poll_interval: (الإعداد التلقائي: خطأ) إلى true إلى إيقاف التغيير التلقائي والاستطلاعات.
- request_timeout: لضبط مهلة للطلبات المستهدفة. تم تعيين المهلة في ثوانٍ. في حال انتهاء المهلة، يستجيب Edge Microgateway برمز الحالة 504. (مضاف) v2.4.x)
سمات العناوين
تضبط هذه الإعدادات كيفية التعامل مع عناوين HTTP معيّنة.
- x-forwarded-for: (تلقائي: true) يتم الضبط على false لمنع إعادة توجيه x للعناوين إلى الهدف. لاحظ أنه إذا كان العنوان x-forwarded-for في الطلب، فسيتم تعيين قيمته على قيمة client-ip في Edge Analytics.
- x-forwarded-host: (تلقائي: true) يتم ضبطها على "خطأ" لمنع رؤوس x-forwarded-host يتم تمريرها إلى الهدف.
- x-request-id: (تلقائي: صحيح) يتم ضبطه على "خطأ" لمنع رؤوس x-request-id لتمريرها إلى الهدف.
- x-response-time: (تلقائي: صحيح) يتمّ ضبطه على خطأ لمنع تمرير رؤوس x-response-time إلى الهدف.
- عبر: (تلقائي: صواب) يتم الضبط على خطأ لمنع أن تكون العناوين تمريره إلى الهدف.
سمات OAuth
تعمل هذه الإعدادات على ضبط كيفية فرض مصادقة العميل بواسطة Edge Microgateway.
- allowNoAuthorization: (الإعداد التلقائي: خطأ) في حال الضبط على "صحيح"، تصبح طلبات البيانات من واجهة برمجة التطبيقات يُسمح بالمرور من خلال Edge Microgateway بدون أي عنوان تفويض على الإطلاق. ضبط هذا الإعداد على false لطلب عنوان التفويض (الإعداد التلقائي).
- allowInvalidAuthorization: (الإعداد التلقائي: خطأ) في حال ضبطه على "صحيح"، تصبح طلبات البيانات من واجهة برمجة التطبيقات يُسمح باجتيازها إذا كان الرمز المميز الذي تم تمريره في عنوان التفويض غير صالح أو منتهي الصلاحية. ضبط هذا الإعداد إلى false لطلب رموز مميزة صالحة (الإعداد التلقائي).
- Authorize-header: (تلقائي: التفويض: الحامل) الرأس المُستخدَم إرسال رمز الدخول إلى بوابة Edge Microgateway. وقد تحتاج إلى تغيير الإعداد التلقائي في الحالات التي يحتاج الهدف إلى استخدام رأس التفويض لغرض آخر.
- api-key-header: (default: x-api-key) اسم الرأس أو طلب البحث المعلمة المستخدمة لتمرير مفتاح واجهة برمجة التطبيقات إلى Edge Microgateway. يمكنك الاطّلاع أيضًا على استخدام مفتاح واجهة برمجة التطبيقات.
- keepAuthHeader: (الإعداد التلقائي: خطأ) في حال الضبط على "صحيح"، يعرض عنوان التفويض المرسلة في الطلب يتم تمريرها إلى الهدف (يتم الاحتفاظ بها).
- allowOAuthOnly -- في حال الضبط على "صحيح"، يجب أن تتضمن كل واجهة برمجة تطبيقات عنوان تفويض مع رمز دخول الحامل يُتيح لك السماح ببروتوكول OAuth فقط (مع الحفاظ على التوافق مع الأنظمة القديمة). (تمت الإضافة 4.2.x)
- allowAPIKeyOnly -- إذا تم ضبط هذه السياسة على "صحيح"، يجب أن تتضمن كل واجهة برمجة تطبيقات عنوان x-api-key (أو موقع مخصّص) مع مفتاح واجهة برمجة التطبيقات.Allows السماح بنموذج أمان مفتاح واجهة برمجة التطبيقات فقط (مع الحفاظ على التوافق مع الأنظمة القديمة). (تمت الإضافة 4.2.x)
الخاص بالمكوّن الإضافي السمات
راجع استخدام المكوّنات الإضافية للحصول على تفاصيل حول السمات القابلة للتهيئة لكل مكوّن إضافي.
الخوادم الوكيلة للتصفية
يمكنك فلترة الخوادم الوكيلة الواعية بالبوابة المصغّرة التي سيعالجها مثيل Edge Microgateway.
عندما تبدأ بوابة Edge Microgateway، يتم تنزيل جميع الخوادم الوكيلة الواعية بالبوابة المصغّرة في
والمؤسسة التي ترتبط بها. استخدم التهيئة التالية لتحديد الخوادم الوكيلة
عملية المدخل الصغير. فعلى سبيل المثال، تحد هذه التهيئة من الخوادم الوكيلة للبوابة المصغّرة
ستتم المعالجة على ثلاثة: edgemicro_proxy-1
، edgemicro_proxy-2
،
وedgemicro_proxy-3
:
proxies: - edgemicro_proxy-1 - edgemicro_proxy-2 - edgemicro_proxy-3
إخفاء بيانات التحليلات
تمنع الإعدادات التالية ظهور معلومات مسار الطلب في Edge "إحصاءات YouTube". أضف ما يلي إلى إعداد المدخل الصغير لحجب عنوان URI للطلب و/أو مسار الطلب. تجدر الإشارة إلى أنّ معرّف الموارد المنتظم (URI) مؤلف من أجزاء مسار الطلب واسم المضيف.
analytics: mask_request_uri: 'string_to_mask' mask_request_path: 'string_to_mask'
إعداد ممر Edge Microgateway خلف جدار حماية للشركة
الإصدار 4.2.x المتوافق
إذا تم تثبيت Edge Microgateway خلف جدار حماية، فقد لا يتمكن المدخل من التواصل مع Apigee Edge. في هذه الحالة، هناك خياران يمكنك أخذهما في الاعتبار:
الخيار 1:
الخيار الأول هو تعيين Edgemicro: Proxy_tunnel على "true" في ملف تهيئة Microgateway:
edge_config: proxy: http://10.224.16.85:3128 proxy_tunnel: true
عندما تكون قيمة proxy_tunnel هي true، فإن Edge تستخدم بوابة Microgateway طريقة ربط HTTP لإجراء طلبات HTTP النفقية عبر اتصال TCP واحد. (ينطبق الشيء نفسه إذا كانت متغيرات البيئة لتكوين الخادم الوكيل يتم فيها تفعيل بروتوكول أمان طبقة النقل (TLS).
الخيار 2:
الخيار الثاني هو تحديد خادم وكيل وتعيينProxy_tunnel على "false" في ملف تهيئة Microgateway. على سبيل المثال:
edge_config: proxy: http://10.224.16.85:3128 proxy_tunnel: false
في هذه الحالة، يمكنك إعداد المتغيرات التالية للتحكم في المضيفات لكل HTTP الخادم الوكيل الذي تريد استخدامه، أو المضيفات التي يجب ألا تتعامل مع Edge Microgateway الخوادم الوكيلة: HTTP_PROXY وHTTPS_PROXY وNO_PROXY.
يمكنك ضبط NO_PROXY كقائمة نطاقات مفصولة بفواصل. التي يجب ألا يصل إليها Edge Microgateway. على سبيل المثال:
export NO_PROXY='localhost,localhost:8080'
ضبط HTTP_PROXY وHTTPS_PROXY على HTTP نقطة نهاية الخادم الوكيل Edge Microgateway يمكنها إرسال رسائل إليها. على سبيل المثال:
export HTTP_PROXY='http://localhost:3786' export HTTPS_PROXY='https://localhost:3786'
لمزيد من المعلومات عن هذه المتغيّرات، اطّلِع على:
https://www.npmjs.com/package/request#controlling-proxy-behaviour-using-environment-variables
انظر أيضًا
كيفية إعداد Edge Microgateway وراء جدار حماية للشركة على منتدى Apigee
استخدام أحرف البدل في نسخ مخصصة لبوابة الدخول الصغيرة خوادم وكيلة
يمكنك استخدام علامة "*" واحدة أو أكثر أحرف البدل في المسار الأساسي
الخادم الوكيل edgemicro_* (متوافق مع Microgateway). على سبيل المثال، قد يكون المسار الأساسي
من /team/*/members يسمح للعملاء
طلب https://[host]/team/blue/members وhttps://[host]/team/green/members بدون
كنت بحاجة إلى إنشاء خوادم وكيلة جديدة لواجهة برمجة التطبيقات لدعم الفرق الجديدة. ملاحظة
أنّ /**/
غير متاح.
ملاحظة مهمة: لا تتيح Apigee استخدام حرف بدل "*". باعتباره
العنصر الأول في المسار الأساسي. على سبيل المثال، هذا ليس NOT
مدعوم: بحث /*/
.
تصحيح الأخطاء تحديد المشاكل وحلّها
الاتصال ببرنامج تصحيح الأخطاء
يمكنك تشغيل Edge Microgateway باستخدام برنامج تصحيح أخطاء، مثل node-inspector. هذا مفيد استكشاف الأخطاء وإصلاحها وتصحيح الأخطاء في المكونات الإضافية المخصصة.
- أعِد تشغيل Edge Microgateway في وضع تصحيح الأخطاء. لإجراء ذلك، أضِف "
DEBUG=*
" إلى بداية أمر البدء. مثال:
DEBUG=* edgemicro start -o myorg -e test -k db4e9e8a95aa7fabfdeacbb1169d0a8cbe42bec19c6b98129e02 -s 6e56af7c1b26dfe93dae78a735c8afc9796b077d105ae5618ce7ed
ملاحظة: على نظام التشغيل Windows، استخدِم
SET DEBUG=*
. - ابدأ برنامج تصحيح الأخطاء واضبطه على الاستماع إلى رقم المنفذ لعملية تصحيح الأخطاء.
- يمكنك الآن التنقل عبر كود Edge Microgateway وتعيين نقاط التوقف وتعبيرات المشاهدة وهكذا
يمكنك تحديد علامات Node.js العادية المرتبطة بوضع تصحيح الأخطاء. على سبيل المثال:
يساعد --nolazy
في تصحيح أخطاء الرمز غير المتزامن.
جارٍ التحقّق من ملفات السجلّ
إذا كنت تواجه مشاكل، يُرجى التأكّد من فحص ملفات السجلّ بحثًا عن تفاصيل التنفيذ والخطأ. المعلومات. لمعرفة التفاصيل، يُرجى الاطّلاع على إدارة ملفات السجلّ.
استخدام أمان مفتاح واجهة برمجة التطبيقات
توفر مفاتيح واجهة برمجة التطبيقات آلية بسيطة لمصادقة العملاء الذين يقدمون طلبات إلى Edge مدخل مصغّر. يمكنك الحصول على مفتاح واجهة برمجة التطبيقات عن طريق نسخ قيمة مفتاح المستهلك (يُسمى أيضًا رقم تعريف العميل) من منتج Apigee Edge الذي يشتمل على الخادم الوكيل لمصادقة Edge Microgateway.
التخزين المؤقت للمفاتيح
يتم استبدال مفاتيح واجهة برمجة التطبيقات برموز الحامل المميزة، والتي يتم تخزينها مؤقتًا. يمكنك تعطيل التخزين المؤقت عن طريق تعيين
عنوان Cache-Control: no-cache
في الطلبات الواردة إلى Edge
مدخل مصغّر.
استخدام أمان رمز OAuth2 المميز
للحصول على تفاصيل حول استخدام رمز OAuth المميز مع طلبات الخادم الوكيل، يمكنك الاطلاع على تأمين مدخل Microgateway
استخدام مفتاح واجهة برمجة التطبيقات
للحصول على تفاصيل عن استخدام مفاتيح واجهة برمجة التطبيقات مع طلبات الخادم الوكيل، راجِع المقالة تأمين مدخل Microgateway
ضبط اسم مفتاح واجهة برمجة التطبيقات
بشكل تلقائي، يكون x-api-key
هو الاسم المستخدَم لعنوان مفتاح واجهة برمجة التطبيقات أو طلب البحث
. يمكنك تغيير هذا الخيار التلقائي في ملف الإعداد، كما هو موضّح في مقالة إجراء تغييرات على الإعدادات.
ل
على سبيل المثال، لتغيير الاسم إلى apiKey:
oauth: allowNoAuthorization: false allowInvalidAuthorization: false api-key-header: apiKey