مرجع خطأ Edge Microgateway

أنت تطّلع على مستندات Apigee Edge.
انتقِل إلى مستندات Apigee X.
info

يوضّح هذا الموضوع الأخطاء والتحذيرات التي قد تواجهها في Edge Microgateway.

أخطاء عامة في التطبيق

  • HTTP 500، تعذّر في معالج الخطأ: سيظهر هذا الرقم في معظم الأخطاء، كما سيظهر في بعض الأخطاء المعروضة من الاستهدافات. على وجه الخصوص، يتم استخدام errors-middleware.js في ملف برمجي microgateway-core. عند استخدامها، يتم تسجيل رموز الحالة في السجلّ باستخدام Edge Microgateway logger object: logger.error(err, 'failed in error handler');. بالنسبة إلى الرموز التي يتم استلامها من الاستهدافات التي تتراوح بين 100 و300، يعيد ملف errors-middleware.js كتابة statusCode إلى 500 لإعادته إلى العميل.

  • HTTP 404: قد تظهر لك هذه الحالة على شكل تتبع تسلسل استدعاء الدوال البرمجية مع الرسالة: no match found for [API_path_name].

أخطاء الوحدة والتحذيرات المتعلّقة بها

يمكنك استخدام هذه المعلومات لضبط التنبيهات التي تساعدك في مراقبة وإدارة عملية بدء استخدام Edge Microgateway.

تشير المصطلحات التالية، التي تظهر في مرجع الخطأ ضمن "المعالج"، إلى كيفية التعامل مع الأخطاء المختلفة في Edge Microgateway.

  • التأكيد: سيتوقّف Edge Microgateway عادةً عند تعذُّر تقييم التأكيد. ومع ذلك، قد لا يكون هذا هو الحال دائمًا، لأنّ التأكيدات تُلقي استثناءات قد يتمّ رصدها.
  • throws: يشير ذلك إلى احتمال توقُّف النظام.
  • callback: يتم تمرير الخطأ إلى دالة استدعاء وربما يواصل النظام العمل.
النوع الرسالة المعالج ملاحظات

وحدة البوابة الصغيرة

خطأ يجب إدخال org. تأكيد الملكية assert(options.org,"org is required");
خطأ يجب توفير env. تأكيد الملكية assert(options.env,"env is required")
خطأ يجب إدخال اسم المستخدم. تأكيد الملكية assert(options.username || options.token,"username is required");
خطأ كلمة المرور مطلوبة تأكيد الملكية assert(options.password || options.token,"password is required")
خطأ يجب إدخال org. تأكيد الملكية assert(options.org,"org is required");
خطأ يجب توفير env. تأكيد الملكية assert(options.env,"env is required")
خطأ يجب إدخال اسم المستخدم. تأكيد الملكية assert(options.username || options.token,"username is required");
خطأ كلمة المرور مطلوبة تأكيد الملكية assert(options.password || options.token,"password is required")
خطأ يجب إدخال org. تأكيد الملكية assert(options.org,"org is required");
خطأ يجب توفير env. تأكيد الملكية assert(options.env,"env is required")
خطأ يجب إدخال org. تأكيد الملكية assert(options.org,"org is required");
خطأ يجب توفير env. تأكيد الملكية assert(options.env,"env is required")
خطأ يجب إدخال اسم المستخدم. تأكيد الملكية assert(options.username, 'username is required');
خطأ كلمة المرور مطلوبة تأكيد الملكية assert(options.password, 'password is required');
خطأ يجب إدخال org. تأكيد الملكية assert(options.org, 'org is required');
خطأ يجب توفير env. تأكيد الملكية assert(options.env, 'env is required');
خطأ يجب أن يكون لها ملف مستهدَف محدّد تأكيد الملكية assert(targetFile, 'must have an assigned target file')
خطأ يجب أن يكون لها مفتاح تأكيد الملكية assert(key, 'must have a key');
خطأ يجب أن يكون لها سر تأكيد الملكية assert(secret, 'must have a secret');
خطأ يجب ضبط dir تأكيد الملكية assert(dir, 'dir must be configured')
خطأ يجب أن يكون هناك عنصر معاودة اتصال. تأكيد الملكية assert(callback, 'callback must be present')
خطأ يجب إدخال اسم المستخدم. تأكيد الملكية assert(options.username, 'username is required');
خطأ كلمة المرور مطلوبة تأكيد الملكية assert(options.password, 'password is required');
خطأ يجب إدخال org. تأكيد الملكية assert(options.org, 'org is required');
خطأ يجب توفير env. تأكيد الملكية assert(options.env, 'env is required');
خطأ يجب إدخال runtimeUrl. تأكيد الملكية assert(options.runtimeUrl, 'runtimeUrl is required');
خطأ يجب إدخال mgmtUrl. تأكيد الملكية assert(options.mgmtUrl, 'mgmtUrl is required');
خطأ يجب توفير ملف تأكيد الملكية assert(options.file,"file is required")
خطأ يجب أن يكون لها هدف تأكيد الملكية assert(options.target, 'must have target');
خطأ لم يتم إعداد المكوّنات الإضافية تأكيد الملكية assert(config.edgemicro.plugins, 'plugins not configured');
خطأ لا يتوفّر دليل المكوّن الإضافي: + pluginDir تأكيد الملكية assert(fs.existsSync(pluginDir), 'plugin dir does not exist: ' + pluginDir);
خطأ دليل المكوّنات الإضافية ليس دليلاً: + pluginDir تأكيد الملكية assert(stat.isDirectory(), 'plugin dir is not a directory: ' + pluginDir);
خطأ خطأ في قراءة دليل المكوّنات الإضافية: + pluginDir تأكيد الملكية assert(dirs, 'error reading plugin dir: ' + pluginDir);
خطأ يجب أن يتضمّن رمزًا مميّزًا تأكيد الملكية assert(token, 'must have a token');
خطأ لا يمكن أن يكون configpath فارغًا. تأكيد الملكية assert(config, 'configpath can't be empty');
خطأ يجب أن يتضمّن EDGEMICRO_KEY تأكيد الملكية assert(key, 'must have EDGEMICRO_KEY');
خطأ يجب أن يتضمّن EDGEMICRO_SECRET تأكيد الملكية assert(secret, 'must have EDGEMICRO_SECRET');
خطأ لا يتوفّر ملف الإعدادات يرمي ذات صلة بملف YAML
خطأ يبدو أنّ edgemicro قيد التشغيل حاليًا. console.error محاولة استبدال ملف ‎ .sock
خطأ تعذّر التحقّق من التغيير في Config. ستتم إعادة المحاولة بعد console.error مشكلة في الاتصال بالشبكة
خطأ إذا لم يكن الخادم قيد التشغيل، قد يرجع ذلك إلى إيقاف التشغيل غير الصحيح في المرة السابقة. console.error
خطأ لا يتوفّر %s، يُرجى تشغيل console.error لا يتوفّر (.*)، يُرجى تنفيذ
خطأ تعذّرت إعادة تحميل edgemicro console.error مستوى الأوامر
خطأ تعذّر إيقاف edgemicro console.error مستوى الطلب
خطأ "جرِّب إزالة ' + ipcPath + ' والبدء من جديد" console.error
خطأ 'cache configuration ' + cache + ' does not exist. exiting.' console.error
خطأ تعذّر كتابة ملف الإعداد: console.error تعذُّر الإعداد
خطأ لم يتم تنزيل ملف الإعداد: console.error تعذُّر الإعداد
خطأ تعذّر بدء edge micro console.error يجب ألا يكون قيد التشغيل
خطأ لا يعمل edgemicro. console.error التحقّق من العملية التي يجب عدم إدراجها
خطأ يجب توفير env. console.error متغيّرات البيئة المطلوبة للتشغيل
خطأ error - editing apiproxy Callout.xml console.error الوصول إلى الملفات
خطأ error - editing apiproxy default.xml console.error الوصول إلى الملفات
خطأ حدث خطأ أثناء التحقّق من شهادة الاعتماد. جارٍ تثبيت شهادة جديدة. console.error لا يمكن استخدام المفتاح العام
خطأ حدث خطأ أثناء استرداد منطقة المؤسسة console.error key-gen.js وcert-lib.js وprivate.js
خطأ حدث خطأ أثناء تحميل بيانات الاعتماد console.error لا يمكن مزامنة المفتاح العام مع Edge
خطأ فشل console.error key-gen.js
خطأ تعذّر بدء ملف مسار الإعداد %s console.error عدم تحميل الإعدادات
خطأ استجابة غير صالحة من واجهة برمجة التطبيقات الخاصة بالمنطقة console.error key-gen.js وcert-lib.js وprivate.js
خطأ يجب إدخال مفتاح. console.error المَعلمة
خطأ يجب إدخال org. console.error المَعلمة
خطأ المنفذ غير متاح. console.error المَعلمة
خطأ يجب إدخال سر console.error المَعلمة
خطأ بروتوكول عنوان URL غير متاح: console.error تشير معلومات الضبط إلى بروتوكول إنترنت غير مضمّن في نطاق Edge Microgateway
خطأ التحقّق من حالة الكلمات الرئيسية السلبية في "إحصاءات YouTube": تعذّر إكمال العملية console.error تعطُّل/تعذُّر محتمل
خطأ تحقّق من الإحصاءات باستخدام الحمولة: تعذّر console.error تعطُّل/تعذُّر محتمل
خطأ verifying bootstrap url availability:FAIL console.error تعطُّل/تعذُّر محتمل
خطأ verifying jwt_public_key availability: FAIL console.error تعطُّل/تعذُّر محتمل
خطأ تحقّق من مدى توفّر المنتجات: تعذّر إكمال العملية console.error تعطُّل/تعذُّر محتمل
خطأ التحقّق من الحصة باستخدام المنتجات التي تم ضبطها: تعذّر console.error تعطُّل/تعذُّر محتمل
تحذير تعذّر استرداد الإعدادات من البوابة. سنواصل المحاولة باستخدام النسخة المخزّنة مؤقتًا. console.error
تحذير توفُّر تقنية KVM في مؤسستك console.log
تحذير تم نشره من قبل console.log
تحذير لم يتم العثور على المكوّن الإضافي المُدرَج: console.warn
تحذير لا يتوفّر دليل المكوّنات الإضافية %s console.log لا يتوفّر دليل pluginDir (‎.*)

وحدة microgateway-core

خطأ لم يتمّ إعداد الإعدادات تأكيد الملكية assert(config, 'config not initialized')
خطأ يجب أن يكون لها إعداد تأكيد الملكية assert(config, ' must have a config')
خطأ يجب أن يكون لديك إعدادات تأكيد الملكية assert(config, 'must have config')
خطأ يجب أن يحتوي config على uid تأكيد الملكية assert(config.uid, 'config must have uid');
خطأ يجب أن يتضمّن ملف الإعدادات config.edgemicro.logging تأكيد الملكية assert(logConfig, 'must have config.edgemicro.logging in config');
خطأ يجب أن تتضمّن طريقة طلب تأكيد الملكية assert(httpLibrary.request, 'must have request method');
خطأ يجب تحميل المكوّن الإضافي في الذاكرة تأكيد الملكية assert(options.plugin, "must have plugin loaded in memory");
خطأ يجب أن تكون init دالة. تأكيد الملكية assert(_.isFunction(options.plugin.init), 'init must be a function');
خطأ يجب أن يتضمّن اسم المكوّن الإضافي تأكيد الملكية assert(options.pluginName, "must have plugin name");
خطأ تجاهل أسماء ومعالجات المكوّنات الإضافية غير الصالحة تأكيد الملكية assert(_.isObject(middleware), 'ignoring invalid plugin handlers ' + name);
خطأ يجب أن تحتوي الخيارات على config تأكيد الملكية assert(config, 'options must contain config')
خطأ يجب أن يكون للمكوّن الإضافي اسم. تأكيد الملكية assert(name,"plugin must have a name")
خطأ يجب أن يكون الاسم سلسلة. تأكيد الملكية assert(_.isString(name),"name must be a string");
خطأ يجب أن يكون المكوّن الإضافي دالة. تأكيد الملكية assert(_.isFunction(plugin),"plugin must be a function(config,logger,stats){return {onresponse:function(req,res,data,next){}}}");
خطأ يجب أن يكون لها مفتاح تأكيد الملكية assert(key, 'must have a key');
خطأ يجب أن يكون لها سر تأكيد الملكية assert(secret, 'must have a secret');
خطأ يجب أن يتضمّن دليل إعدادات المصدر تأكيد الملكية assert(source, 'must have a source config directory');
خطأ حدث خطأ أثناء تحميل المكوّن الإضافي console.error تعذّر تحميل المكوّن الإضافي
خطأ تعذّر في معالج الأخطاء ردّ الاتصال دالة HTTP server.on()
خطأ طول العنوان أكبر من الحجم المسموح به خطأ في بروتوكول HTTP عدم تشغيل المكوّن الإضافي
خطأ اكتمال الردّ قبل أن يتمّ تنفيذ العمل logger.error لا يتم تشغيل مكوّن Target الإضافي
خطأ طرح المعالِج استثناءً ردّ الاتصال تسجيل الخطأ من المكوّن الإضافي (التقاط)
خطأ error starting edge micro ردّ الاتصال لا يبدأ تشغيل Edge Microgateway
خطأ يجب أن يكون المكوّن الإضافي دالة. يرمي
تحذير console.error تحذيرات كتابة السجلّات
تحذير خطأ في targetRequest استدعاء معالجة الخطأ المستهدَف خطأ في برنامج HTTP العميل في ما يتعلّق بالهدف
تحذير خطأ في targetResponse استدعاء معالجة الأخطاء المستهدَفة حدث خطأ في خادم HTTP المستهدف في ما يتعلّق بالهدف كما هو موضّح في العميل

وحدة microgateway-config

خطأ allow_message تأكيد الملكية assert(+config.quota.allow > 0, allow_message);
خطأ لا يتوفّر ملف الإعدادات يرمي ملف الإعدادات بتنسيق YAML
خطأ config is empty يرمي ملف الإعدادات بتنسيق YAML
خطأ ملف الإعداد ليس ملفًا يرمي ملف الإعدادات بتنسيق YAML
خطأ عدم تحديد قيمة لسمة config تأكيد الملكية assert(config, 'config is not defined');
خطأ قيمة config.analytics.batchSize غير صالحة تأكيد الملكية assert(+config.analytics.batchSize > 0, 'config.analytics.batchSize is invalid');
خطأ config.analytics.batchSize ليس رقمًا تأكيد الملكية assert(typeof config.analytics.batchSize === 'number', 'config.analytics.batchSize is not a number');
خطأ config.analytics.bufferSize غير صالح تأكيد الملكية assert(+config.analytics.bufferSize > 0, 'config.analytics.bufferSize is invalid');
خطأ config.analytics.bufferSize ليس رقمًا تأكيد الملكية assert(typeof config.analytics.bufferSize === 'number', 'config.analytics.bufferSize is not a number');
خطأ قيمة config.analytics.flushInterval غير صالحة تأكيد الملكية assert(+config.analytics.flushInterval > 0, 'config.analytics.flushInterval is invalid');
خطأ config.analytics.flushInterval ليس رقمًا تأكيد الملكية assert(typeof config.analytics.flushInterval === 'number', 'config.analytics.flushInterval is not a number');
خطأ config.analytics.proxy ليس "قيمة وهمية" تأكيد الملكية assert(config.analytics.proxy === 'dummy', 'config.analytics.proxy is not "dummy"');
خطأ لم يتم تحديد config.analytics.proxy تأكيد الملكية assert(config.analytics.proxy, 'config.analytics.proxy is not defined');
خطأ config.analytics.proxy_revision ليس رقمًا تأكيد الملكية assert(typeof config.analytics.proxy_revision === 'number', 'config.analytics.proxy_revision is not a number');
خطأ لم يتم تحديد config.analytics.proxy_revision تأكيد الملكية assert(config.analytics.proxy_revision, 'config.analytics.proxy_revision is not defined');
خطأ config.analytics.source ليس "microgateway" تأكيد الملكية assert(config.analytics.source === 'microgateway', 'config.analytics.source is not "microgateway"');
خطأ لم يتم تحديد config.analytics.source تأكيد الملكية assert(config.analytics.source, 'config.analytics.source is not defined');
خطأ config.analytics.uri ليست سلسلة تأكيد الملكية assert(typeof config.analytics.uri === 'string', 'config.analytics.uri is not a string');
خطأ لم يتمّ تحديد config.analytics.uri تأكيد الملكية assert(config.analytics.uri, 'config.analytics.uri is not defined');
خطأ لم يتم تحديد config.apikeys.public_key تأكيد الملكية assert(typeof config.apikeys.public_key === 'string', 'config.apikeys.public_key is not defined');
خطأ لم يتم تحديد config.edge_config تأكيد الملكية assert(config.edge_config, 'config.edge_config is not defined');
خطأ لم يتم تحديد config.edge_config.bootstrap تأكيد الملكية assert(config.edge_config.bootstrap, 'config.edge_config.bootstrap is not defined');
خطأ لم يتم تحديد config.edge_config.jwt_public_key تأكيد الملكية assert(config.edge_config.jwt_public_key, 'config.edge_config.jwt_public_key is not defined');
خطأ يجب تحديد config.edge_config.proxy إذا تم تحديد config.edge_config.proxy_tunnel تأكيد الملكية assert(typeof config.edge_config.proxy !== 'undefined', 'config.edge_config.proxy must be defined if config.edge_config.proxy_tunnel is defined');
خطأ config.edge_config.proxy_tunnel ليست قيمة منطقية تأكيد الملكية assert(typeof config.edge_config.proxy_tunnel === 'boolean', 'config.edge_config.proxy_tunnel is not a boolean');
خطأ config.edge_config.refresh_interval ليس رقمًا تأكيد الملكية assert(typeof config.edge_config.refresh_interval === 'number', 'config.edge_config.refresh_interval is not a number');
خطأ الفاصل الزمني لإعادة التحميل config.edge_config.refresh_interval صغير جدًا (ساعة واحدة بحد أدنى) تأكيد الملكية assert(config.edge_config.refresh_interval >= 3600000, 'config.edge_config.refresh_interval is too small (min 1h)');
خطأ config.edge_config.retry_interval ليس رقمًا تأكيد الملكية assert(typeof config.edge_config.retry_interval === 'number', 'config.edge_config.retry_interval is not a number');
خطأ config.edge_config.retry_interval صغير جدًا (5 ثوانٍ بحد أدنى) تأكيد الملكية assert(config.edge_config.retry_interval >= 5000, 'config.edge_config.retry_interval is too small (min 5s)');
خطأ لم يتم تحديد config.edgemicro تأكيد الملكية assert(config.edgemicro, 'config.edgemicro is not defined');
خطأ لم يتم تحديد config.edgemicro.logging تأكيد الملكية assert(config.edgemicro.logging, 'config.edgemicro.logging is not defined');
خطأ لم يتم تحديد config.edgemicro.logging.dir تأكيد الملكية if (!config.edgemicro.logging.to_console) assert(config.edgemicro.logging.dir, 'config.edgemicro.logging.dir is not defined');
خطأ لم يتم تحديد config.edgemicro.logging.level تأكيد الملكية assert(config.edgemicro.logging.level, 'config.edgemicro.logging.level is not defined');
خطأ config.edgemicro.max_connections ليس رقمًا تأكيد الملكية assert(typeof config.edgemicro.max_connections === 'number', 'config.edgemicro.max_connections is not a number');
خطأ لم يتم تحديد config.edgemicro.max_connections تأكيد الملكية assert(config.edgemicro.max_connections, 'config.edgemicro.max_connections is not defined');
خطأ config.edgemicro.plugins.sequence ليست مصفوفة تأكيد الملكية assert(Array.isArray(config.edgemicro.plugins.sequence), 'config.edgemicro.plugins.sequence is not an array');
خطأ لم يتم تحديد config.edgemicro.port تأكيد الملكية assert(config.edgemicro.port, 'config.edgemicro.port is not defined');
خطأ لم يتم تحديد config.oauth.allowInvalidAuthorization تأكيد الملكية assert(typeof config.oauth.allowInvalidAuthorization === 'boolean', 'config.oauth.allowInvalidAuthorization is not defined');
خطأ لم يتم تحديد config.oauth.allowNoAuthorization تأكيد الملكية assert(typeof config.oauth.allowNoAuthorization === 'boolean', 'config.oauth.allowNoAuthorization is not defined');
خطأ لم يتم تحديد config.oauth.public_key تأكيد الملكية assert(typeof config.oauth.public_key === 'string', 'config.oauth.public_key is not defined');
خطأ لم يتم تحديد config.oauthv2.public_key تأكيد الملكية assert(typeof config.oauthv2.public_key === 'string', 'config.oauthv2.public_key is not defined');
خطأ لم يتم تحديد config.proxies تأكيد الملكية assert(config.proxies, 'config.proxies is not defined');
خطأ لم يتم تحديد config.proxy[ + index + ].base_path تأكيد الملكية assert(proxy.base_path, 'config.proxy[' + index + '].base_path is not defined');
خطأ config.proxy[ + index + ].max_connections ليس رقمًا تأكيد الملكية assert(typeof proxy.max_connections === 'number', 'config.proxy[' + index + '].max_connections is not a number');
خطأ لم يتم تحديد config.proxy[ + index + ].max_connections تأكيد الملكية assert(proxy.max_connections, 'config.proxy[' + index + '].max_connections is not defined');
خطأ لم يتم تحديد config.proxy[ + index + ].name تأكيد الملكية assert(proxy.name, 'config.proxy[' + index + '].name is not defined');
خطأ لم يتم تحديد config.proxy[ + index + ].proxy_name تأكيد الملكية assert(proxy.target_name, 'config.proxy[' + index + '].proxy_name is not defined');
خطأ لم يتم تحديد config.proxy[ + index + ].revision تأكيد الملكية assert(proxy.revision, 'config.proxy[' + index + '].revision is not defined');
خطأ لم يتم تحديد config.proxy[ + index + ].url تأكيد الملكية assert(proxy.url, 'config.proxy[' + index + '].url is not defined');
خطأ config.quota.allow ليس رقمًا تأكيد الملكية assert(typeof config.quota.allow === 'number', 'config.quota.allow is not a number');
خطأ لم يتم تحديد config.quota.allow تأكيد الملكية assert(config.quota.allow, 'config.quota.allow is not defined');
خطأ config.quota.interval ليس رقمًا تأكيد الملكية assert(typeof config.quota.interval === 'number', 'config.quota.interval is not a number');
خطأ لم يتم تحديد config.quota.interval تأكيد الملكية assert(config.quota.interval, 'config.quota.interval is not defined');
خطأ لم يتم تحديد config.spikearrest تأكيد الملكية assert(config.spikearrest, 'config.spikearrest is not defined');
خطأ القيمة config.spikearrest.allow غير صالحة تأكيد الملكية assert(+config.spikearrest.allow > 0, 'config.spikearrest.allow is invalid');
خطأ config.spikearrest.allow ليس رقمًا تأكيد الملكية assert(typeof config.spikearrest.allow === 'number', 'config.spikearrest.allow is not a number');
خطأ لم يتم تحديد config.spikearrest.allow تأكيد الملكية assert(config.spikearrest.allow, 'config.spikearrest.allow is not defined');
خطأ القيمة config.spikearrest.bufferSize غير صالحة تأكيد الملكية assert(+config.spikearrest.bufferSize > 0, 'config.spikearrest.bufferSize is invalid');
خطأ config.spikearrest.bufferSize ليس رقمًا تأكيد الملكية assert(typeof config.spikearrest.bufferSize === 'number', 'config.spikearrest.bufferSize is not a number');
خطأ لم يتم تحديد config.spikearrest.timeUnit تأكيد الملكية assert(config.spikearrest.timeUnit, 'config.spikearrest.timeUnit is not defined');
خطأ خطأ فادح: حدث خطأ في تحليل قائمة المنتجات التي تم تنزيلها ردّ الاتصال
خطأ خطأ خطير: حدث خطأ في تحليل قائمة الخوادم الوكيلة التي تم تنزيلها ردّ الاتصال
خطأ تم رصد خطأ في ضبط إعدادات المنتج console.error متبوعًا بـ console.warn('using old cached configuration');
خطأ حدث خطأ في قراءة الإعدادات من يرمي ملف الإعدادات بتنسيق YAML
خطأ حدث خطأ أثناء حفظ الإعدادات في ردّ الاتصال ملف الإعدادات بتنسيق YAML
خطأ خطأ فادح: الإعدادات المخزّنة مؤقتًا غير متاحة، يتعذّر المتابعة ردّ الاتصال
خطأ interval_message تأكيد الملكية assert(+config.quota.interval > 0, interval_message);
خطأ بروتوكول غير صالح لـ config.edge_config.proxy (من المفترض أن يكون http: أو https:: + proxy_url.protocol) تأكيد الملكية assert(proxy_url.protocol === 'http:' || proxy_url.protocol === 'https:', 'invalid protocol for config.edge_config.proxy (expected http: or https:): ' + proxy_url.protocol);
خطأ مضيف خادم وكيل غير صالح لـ config.edge_config.proxy تأكيد الملكية assert(proxy_url.hostname, 'invalid proxy host for config.edge_config.proxy: ' + proxy_url.hostname);
خطأ يبدو أنّه لم يتم ضبط Edge Micro، يُرجى الاطّلاع على دليل المشرف. ردّ الاتصال النتيجة: تعذّر تحميل الإعدادات
خطأ المفتاح غير متوفّر تأكيد الملكية assert(keys.key, 'key is missing');
خطأ يجب أن يتضمّن configDir تأكيد الملكية assert(configDir, 'must have configDir')
خطأ الخيارات المطلوبة تأكيد الملكية assert(options, 'must have options');
خطأ يجب أن يتضمّن مصدرًا تأكيد الملكية assert(source, 'must have source')
خطأ يجب أن يكون لها مصدر للتحميل منه تأكيد الملكية assert(options.source, 'must have source to load from')
خطأ يجب أن يتضمّن targetFile تأكيد الملكية assert(fileName, 'must have targetFile')
خطأ لا يمكن أن تكون الخيارات فارغة تأكيد الملكية assert(options, 'options cannot be null');
خطأ لا يمكن أن تكون options.keys فارغة تأكيد الملكية assert(options.keys, 'options.keys cannot be null');
خطأ port_message تأكيد الملكية assert(+config.edgemicro.port < 65536, port_message);
خطأ يجب أن تكون المنتجات مصفوفة. تأكيد الملكية assert(Array.isArray(products), 'products should be an array');
خطأ ‎'proxies for product ' + product + ' should be an array' تأكيد الملكية assert(Array.isArray(product.proxies), 'proxies for product ' + product + ' should be an array');
خطأ عدم توفّر مفتاح سري تأكيد الملكية assert(keys.secret, 'secret is missing');
خطأ لم يتم ضبط target تأكيد الملكية assert(target, 'target is not set');
تحذير حدث خطأ أثناء تنزيل الإعدادات، يُرجى التحقّق من إعدادات Bootstrap console.warn
تحذير تعذّر تنزيل jwt_public_key console.warn
تحذير مفاتيح jwk غير مفعّلة console.warn
تحذير message, 'download from', url, 'returned' console.warn البحث عن: (.*)\sdownload from\s(.*)\sreturned
تحذير لم يتم العثور على أي منتجات صغيرة في الصفحة في الردّ console.warn
تحذير لم يتم العثور على أيّ أدوات وكيلة صغيرة للحدود في المؤسسة console.warn
تحذير لم يتم العثور على أيّ وكيل صغرى للحدود في الاستجابة console.warn
تحذير لم يتم العثور على أي منتجات في المؤسسة console.warn
تحذير لم يتم العثور على أي منتجات في الردّ console.warn
تحذير استخدام الإعدادات القديمة المخزّنة مؤقتًا console.warn

وحدة microgateway-plugins

خطأ لا يتوفّر ملف الإعدادات يرمي ذات صلة بملف YAML
خطأ apikey استجابة HTTP حالات تعذُّر في المكوّن الإضافي apiky
خطأ bauth استجابة HTTP حالات تعذُّر في المكوّن الإضافي bauth
خطأ extauth استجابة HTTP حالات تعذُّر في المكوّن الإضافي extauth
خطأ بروتوكول OAuth استجابة HTTP حالات تعذُّر في مكوّن oauth الإضافي
تحذير حدث خطأ أثناء معالجة إحصاءات Apigee. السماح بمواصلة معالجة الطلب logger.error
تحذير تجاهل الخطأ console.warn مكوّنات apikeys وoauth وoauthv2 الإضافية
تحذير خطأ في تحليل jwt: console.warn
تحذير لا يحتوي عنصر استجابة oath على setHeader console.warn يشير خطأ مَعلمة oauth إلى أنّه لن يتم الإبلاغ عن بعض الأخطاء.
تحذير لا يتم توفير عنصر ردّ oath من خلال وقت التشغيل console.warn خطأ في مَعلمة oauth
تحذير لا يتم توفير عنصر إحصاءات oath من خلال وقت التشغيل console.warn خطأ في مَعلمة oauth

وحدة apigeetool-node

خطأ تعذّر حذف ذاكرة التخزين المؤقت برمز الحالة %d، res.statusCode ردّ الاتصال تم طرحها في deletecache.js. رمز الحالة من Apigee Edge تمرير خطأ تتبُّع تسلسل استدعاء الدوال البرمجية إلى دالة الاستدعاء مع هذه الرسالة: done(new Error(errMsg));
خطأ تعذّر حذف المنتج برمز الحالة %d، res.statusCode ردّ الاتصال تم طرحه في deleteproduct.js. رمز الحالة من Apigee Edge تمرير خطأ تتبُّع تسلسل استدعاء الدوال البرمجية إلى دالة الاستدعاء مع هذه الرسالة: done(new Error(errMsg));
خطأ يجب تحديد org وapi وrevision. ردّ الاتصال تم طرحه في fetchproxy.js. خطأ في الإعدادات
خطأ حدث خطأ %d عند جلب الخادم الوكيل: %j ردّ الاتصال تم طرحه في fetchproxy.js. رمز حالة غير 200
خطأ تعذّر إنشاء التطبيق برمز الحالة %d ردّ الاتصال تم طرحه في createapp.js. تمرير جميع الأخطاء إلى وظائف الاستدعاء كأخطاء تتبُّع تسلسل استدعاء الدوال البرمجية لا يتم إجراء أي عمليات طباعة في وحدة التحكّم أو إدخالات في السجلّ.
خطأ تعذّر تنفيذ الأمر + ' برمز الحالة %d ردّ الاتصال تم طرحه في command-utils.js. بالنسبة إلى أيّ أمر يتم تحليله ونقله إلى هذه الوحدة، سيؤدي أيّ رمز غير 200 أو 201 إلى إنشاء رسالة خطأ. تنسيق هذه الرسالة ولكن بدون طباعتها تمرير خطأ تتبُّع تسلسل استدعاء الدوال البرمجية مع الرسالة إلى وظائف الاستدعاء
خطأ حدث خطأ %d عند جلب العملية المشترَكة: %s ردّ الاتصال تم طرحه في fetchsharedflow.js. لأي حالة HTTP غير 200 إذا نجحت العملية ولكن تعذّر عليها كتابة ملف، يتم تسجيلها في وحدة التحكّم:
تعذّر كتابة الملف
نص الخطأ: [stack_trace_error]
خطأ تعذّر إنشاء KeySecret باستخدام رمز الحالة %d، res.statusCode ردّ الاتصال تم طرحه في createappkey.js. لرموز حالة HTTP من Apigee Edge التي لا تبلغ 200 أو 201
خطأ تعذّر إنشاء ذاكرة التخزين المؤقت باستخدام رمز الحالة %d، res.statusCode ردّ الاتصال تم طرحه في createcache.js. لرموز حالة HTTP من Apigee Edge التي لا تبلغ 200 أو 201
خطأ تعذّر إنشاء المنتج برمز الحالة %d، res.statusCode ردّ الاتصال تم طرحها في createproduct.js. لرموز حالة HTTP من Apigee Edge التي لا تُمثّل 201. إذا كانت حالة HTTP هي 201 ولكنّ الاستجابة تتضمّن ملف JSON للخطأ، تتم إعادة توجيه ملف JSON للخطأ إلى دالة الاستدعاء.
خطأ تعذّر حذف التطبيق برمز الحالة %d، res.statusCode ردّ الاتصال تم طرحه في deleteapp.js. لرموز حالة HTTP من Apigee Edge التي لا تبلغ 200. إذا كانت حالة HTTP هي 200 ولكنّ الاستجابة تتضمّن ملف JSON للخطأ، تتم إعادة توجيه ملف JSON للخطأ إلى دالة الاستدعاء.
خطأ تعذّر إنشاء حساب المطوِّر برمز الحالة %d، res.statusCode ردّ الاتصال تم طرحه في createdeveloper.js. لرموز حالة HTTP من Apigee Edge التي لا تُمثّل 201. إذا كانت حالة HTTP هي 201 ولكنّ الاستجابة تتضمّن ملف JSON للخطأ، تتم إعادة توجيه ملف JSON للخطأ إلى دالة الاستدعاء.
خطأ تعذّر حذف المطوّر برمز الحالة %d، res.statusCode ردّ الاتصال تم طرحه في deletedeveloper.js. لرموز حالة HTTP من Apigee Edge التي لا تبلغ 200. إذا كانت حالة HTTP هي 200 ولكنّ الاستجابة تتضمّن ملف JSON للخطأ، تتم إعادة توجيه ملف JSON للخطأ إلى دالة الاستدعاء.

أخطاء في المكوّن الإضافي

accesscontrol plug-in

This section describes the error codes and messages that are returned by the accesscontrol plug-in with descriptions of possible causes.

Error Message HTTP status Possible Causes
Not printed Forbidden 403 Access control rule

accumulate-request plug-in

This section describes the error codes and messages that are returned by the accumulate-request plug-in with descriptions of possible causes.

No errors generated.

accumulate-resopnse plug-in

This section describes the error codes and messages that are returned by the accumulate-response plug-in with descriptions of possible causes.

No errors generated.

analytics plug-in

This section describes the error codes and messages that are returned by the analytics plug-in with descriptions of possible causes.

Errors encountered processing Apigee analytics are written to the Edge Microgateway log. Edge Microgateway processing continues.

apikeys plug-in

This section describes the error codes and messages that are returned by the apikeys plug-in with descriptions of possible causes.

Error Message HTTP status Possible Causes
invalid_request Invalid Request 400 allowNoAuthorization == false

No Authorization header in the HTTP request

allowOAuthOnly == true

invalid_request API Key Verification URL not configured 400 Verification API service not in header.
access_denied Copy service message 403 In response to the auth service timeout
missing_authorization Missing API Key header 401 allowAPIKeyOnly == true

Unless allowInvalidAuthorization

invalid_authorization Invalid Authorization header 401 allowOAuthOnly == true

Authorization-header not in HTTP

gateway_timeout Copy service message 504 In response to the auth timeout
default 500 All other not categorized

bauth plug-in

This section describes the error codes and messages that are returned by the bauth plug-in with descriptions of possible causes.

Error Message HTTP status Possible Causes
missing_authorization Missing API Key header 401 allowAPIKeyOnly == true

Unless allowInvalidAuthorization

invalid_authorization Invalid Authorization header 401 allowOAuthOnly == true

Authorization-header not in HTTP

gateway_timeout Copy service message 504 In response to the auth timeout
default 500 All other not categorized

cloud-foundry-route-service plug-in

This section describes the error codes and messages that are returned by the cloud-foundry-route-service plug-in with descriptions of possible causes.

No errors generated.

cors plug-in

This section describes the error codes and messages that are returned by the cors plug-in with descriptions of possible causes.

No errors generated.

eurekaclient plug-in

This section describes the error codes and messages that are returned by the eurekaclient plug-in with descriptions of possible causes.

The eurekaclient plug-in throws a few console errors only, including a stack trace error on failed start and a warning about the target endpoint from Eureka not found.

extauth plug-in

This section describes the error codes and messages that are returned by the extauth plug-in with descriptions of possible causes.

Error Message HTTP status Possible Causes
invalid_request Invalid Request 400 allowNoAuthorization == false

No Authorization header in the HTTP request

allowOAuthOnly == true

invalid_request API Key Verification URL not configured 400 Verification API service not in header.
access_denied Copy service message 403 In response to the auth service timeout
missing_authorization Missing API Key header 401 allowAPIKeyOnly == true

Unless allowInvalidAuthorization

invalid_authorization Invalid Authorization header 401 allowOAuthOnly == true

Authorization-header not in HTTP

gateway_timeout Copy service message 504 In response to the auth timeout
default 500 All other not categorized

header-uppercase plug-in

This section describes the error codes and messages that are returned by the header-uppercase plug-in with descriptions of possible causes.

No errors generated.

healthcheck plug-in

This section describes the error codes and messages that are returned by the healthcheck plug-in with descriptions of possible causes.

Error Message HTTP status Possible Causes
503 Too busy. No messages in HTTP or console
default Application is not running on specified application port 500 All other not categorized

invalidHeader plug-in

This section describes the error codes and messages that are returned by the invalidHeader plug-in with descriptions of possible causes.

No errors generated.

json2xml plug-in

This section describes the error codes and messages that are returned by the json2xml plug-in with descriptions of possible causes.

Parsing errors are sent to a callback.

Error Message HTTP status Possible Causes
default 500 All other not categorized

monitor plug-in

This section describes the error codes and messages that are returned by the monitor plug-in with descriptions of possible causes.

No errors generated.

oauth plug-in (v1)

This section describes the error codes and messages that are returned by the oauth plug-in (v1) with descriptions of possible causes.

Error Message HTTP status Possible Causes
invalid_request Invalid Authorization Header 400
  • allowNoAuthorization attribute == false
  • allowOAuthOnly == true
  • No Authorization header in the HTTP request
invalid_request API Key Verification URL not configured 400 Verification API service not in header.
Access_denied Copy service message 403 In response to the auth service timeout
invalid_token Missing API Key header 401 allowAPIKeyOnly == true

Unless allowInvalidAuthorization is set

invalid_token token could not be parsed 401 allowAPIKeyOnly == true

Bad token delivered

missing_authorization Missing Authorization header 401 allowNoAuthorization == false

Authorization-header in HTTP

allowOAuthOnly == true

invalid_authorization Invalid Authorization header 401 allowOAuthOnly == true

Authorization-header not in HTTP

gateway_timeout Copy service message 504 In response to the auth timeout
default 500 All other uncategorized responses

oauthv2 plug-in

This section describes the error codes and messages that are returned by the oauthv2 plug-in with descriptions of possible causes.

Error Message HTTP status Possible Causes
invalid_request Invalid Authorization Header 400
  • allowNoAuthorization attribute == false
  • allowOAuthOnly == true
  • No Authorization header in the HTTP request
invalid_request API Key Verification URL not configured 400 Verification API service not in header
access_denied Copy service message 403 In response to the auth service timeout
invalid_token Missing API Key header 401 allowAPIKeyOnly == true

Unless allowInvalidAuthorization is set

invalid_token token could not be parsed 401 allowAPIKeyOnly == true

Bad token delivered

missing_authorization Missing Authorization header 401 allowNoAuthorization == false

Authorization-header in HTTP

allowOAuthOnly == true

invalid_authorization Invalid Authorization header 401 allowOAuthOnly == true

Authorization-header not in HTTP

gateway_timeout Copy service message 504 In response to the auth timeout
default 500 All other uncategorized responses

quota plug-in

This section describes the error codes and messages that are returned by the quota plug-in with descriptions of possible causes.

Defers to volos quota/apigee.

Error Message HTTP status Possible Causes
invalid_authorization Invalid Authorization header 401 allowOAuthOnly == true

Authorization-header not in HTTP

gateway_timeout Not authorized to call the remote proxy. Check the "key" parameter. 404 In response to the auth timeout
default 500 All other not categorized
throw uri parameter must be specified apigeequota.js
throw key parameter must be specified apigeequota.js
callback Apigee Remote Proxy not found at: ' + self.uri + '. Check your configuration apigeequota.js
callback HTTP error getting proxy version: %d. Check the "uri" parameter. apigeequota.js
callback Quotas with a fixed starting time are not supported apigeequota.js
callback Error updating remote quota: %d %s', resp.statusCode, body apigeequota.js

If there is an error on an entry in the product list, the product list will stop being processed.

quota-memory plug-in

This section describes the error codes and messages that are returned by the quota-memory plug-in with descriptions of possible causes.

Defers to volos quota/apigee.

Error Message HTTP status Possible Causes
invalid_authorization Invalid Authorization header 401 allowOAuthOnly == true

Authorization-header not in HTTP

gateway_timeout Not authorized to call the remote proxy. Check the "key" parameter. 404 In response to the auth timeout
default 500 All other not categorized
throw start time not allowed for month time units quota.js. volos error on time format.
throw Invalid start time %s quota.js. volos error on time format.
throw Invalid timeUnit %s quota.js. volos error on time format.

If there is an error on an entry in the product list, the product list will stop being processed.

spikearrest plug-in

This section describes the error codes and messages that are returned by the spikearrest plug-in with descriptions of possible causes.

Defers to volos spikearrest/memory.

Error Message HTTP status Possible Causes
SpikeArrest engaged 503 Traffic spike. This is expected behavior.
throw Invalid timeUnit %s spikearrest.js
callback key must be a string spikearrest.js
throw %s must be a number', name spikearrest.js

transform-uppercase plug-in

This section describes the error codes and messages that are returned by the transform-uppercase plug-in with descriptions of possible causes.

No errors generated.