การอ้างอิงข้อผิดพลาด Edge Microgateway

คุณกำลังดูเอกสารประกอบของ Apigee Edge
ไปที่เอกสารประกอบของ Apigee X
info

หัวข้อนี้อธิบายข้อผิดพลาดและคำเตือนที่คุณอาจพบใน Edge Microgateway

ข้อผิดพลาดทั่วไปของแอปพลิเคชัน

  • HTTP 500, ล้มเหลวในตัวแฮนเดิลข้อผิดพลาด - ข้อผิดพลาดส่วนใหญ่จะมีหมายเลขนี้ เช่นเดียวกับข้อผิดพลาดบางอย่างที่ส่งคืนจากเป้าหมาย โดยเฉพาะอย่างยิ่ง errors-middleware.js จะใช้ในโมดูล microgateway-core ทั้งหมด เมื่อมีการใช้งาน ระบบจะเขียน statusCodes ไปยังบันทึกโดยใช้ 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

  • assert: โดยปกติแล้ว Edge Microgateway จะหยุดทำงานเมื่อการประเมิน assert ล้มเหลว อย่างไรก็ตาม กรณีนี้อาจไม่เกิดขึ้นเสมอไป เนื่องจาก "asserts" จะส่งข้อยกเว้นที่อาจตรวจพบได้
  • throws: ระบบอาจหยุดทำงาน
  • การเรียกกลับ: ระบบจะส่งข้อผิดพลาดไปยังการเรียกกลับและระบบอาจดำเนินการต่อ
ประเภท ข้อความ ตัวแฮนเดิล หมายเหตุ

โมดูล microgateway

ข้อผิดพลาด ต้องระบุ 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')
ข้อผิดพลาด ต้องระบุ Callback ยืนยัน 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);
ข้อผิดพลาด plugin dir is not a directory: + 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
ข้อผิดพลาด ตรวจสอบการเปลี่ยนแปลงในการกำหนดค่าไม่สำเร็จ จะลองอีกครั้งหลังวันที่ console.error ปัญหาเกี่ยวกับการสื่อสารที่ Edge
ข้อผิดพลาด หากเซิร์ฟเวอร์ไม่ทำงาน อาจเป็นเพราะการปิดระบบไม่ถูกต้องในการเริ่มต้นครั้งก่อน 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 ตัวแปรสภาพแวดล้อมที่จำเป็นต่อการเรียกใช้
ข้อผิดพลาด ข้อผิดพลาด - การแก้ไข Callout.xml ของ API Proxy console.error การเข้าถึงไฟล์
ข้อผิดพลาด ข้อผิดพลาด - การแก้ไข 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
ข้อผิดพลาด เริ่มไฟล์ configpath %s ไม่สำเร็จ console.error การกำหนดค่าไม่โหลด
ข้อผิดพลาด คำตอบที่เป็นโมฆะจากภูมิภาค API console.error key-gen.js, cert-lib.js และ private.js
ข้อผิดพลาด ต้องระบุคีย์ console.error พารามิเตอร์
ข้อผิดพลาด ต้องระบุ org console.error พารามิเตอร์
ข้อผิดพลาด พอร์ตไม่พร้อมใช้งาน console.error พารามิเตอร์
ข้อผิดพลาด ต้องระบุข้อมูลลับ console.error พารามิเตอร์
ข้อผิดพลาด ไม่รองรับโปรโตคอล URL: console.error ข้อมูลการกำหนดค่าระบุโปรโตคอลอินเทอร์เน็ตที่ไม่อยู่ในขอบเขตของ Edge Microgateway
ข้อผิดพลาด ยืนยันกรณีเชิงลบของ Analytics: ไม่สำเร็จ console.error อาจเกิดข้อขัดข้อง/ล้มเหลว
ข้อผิดพลาด การยืนยันข้อมูลวิเคราะห์ด้วยเพย์โหลด: ไม่สำเร็จ console.error อาจเกิดข้อขัดข้อง/ล้มเหลว
ข้อผิดพลาด การยืนยันความพร้อมใช้งานของ URL การเริ่มต้นระบบ:ล้มเหลว console.error อาจเกิดข้อขัดข้อง/ล้มเหลว
ข้อผิดพลาด การยืนยันความพร้อมใช้งานของ jwt_public_key: ไม่สำเร็จ console.error อาจเกิดข้อขัดข้อง/ล้มเหลว
ข้อผิดพลาด ยืนยันความพร้อมจำหน่ายผลิตภัณฑ์: ไม่สำเร็จ console.error อาจเกิดข้อขัดข้อง/ล้มเหลว
ข้อผิดพลาด ยืนยันโควต้าด้วยผลิตภัณฑ์ที่กำหนดค่าไว้: ไม่สำเร็จ console.error อาจเกิดข้อขัดข้อง/ล้มเหลว
เตือน เรียกข้อมูลการกำหนดค่าจากเกตเวย์ไม่สำเร็จ จะดำเนินการต่อโดยใช้สำเนาที่แคชไว้ console.error
เตือน องค์กรของคุณมี KVM อยู่แล้ว console.log
เตือน ใช้งานแล้ว console.log
เตือน ไม่พบปลั๊กอินที่จัดลำดับ: console.warn
เตือน ไม่มี pluginDir %s console.log ไม่มี pluginDir (.*)

โมดูล microgateway-core

ข้อผิดพลาด ไม่ได้เริ่มต้นการกำหนดค่า ยืนยัน assert(config, 'config not initialized')
ข้อผิดพลาด ต้องมีการกำหนดค่า ยืนยัน assert(config, ' must have a config')
ข้อผิดพลาด ต้องมีการกำหนดค่า ยืนยัน assert(config, 'must have 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);
ข้อผิดพลาด ตัวเลือกต้องมีการกำหนดค่า ยืนยัน 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 ไม่ได้โหลดปลั๊กอิน
ข้อผิดพลาด ล้มเหลวในตัวแฮนเดิลข้อผิดพลาด callback ฟังก์ชัน HTTP server.on()
ข้อผิดพลาด ความยาวของส่วนหัวมากกว่าขนาดที่อนุญาต ข้อผิดพลาด HTTP ไม่เรียกใช้ปลั๊กอิน
ข้อผิดพลาด คำตอบเสร็จสิ้นก่อนที่จะทำงานได้ logger.error ปลั๊กอินเป้าหมายไม่ทำงาน
ข้อผิดพลาด ตัวแฮนเดิลส่งข้อยกเว้น callback ข้อผิดพลาดในการจับภาพจากปลั๊กอิน (catch)
ข้อผิดพลาด ข้อผิดพลาดในการเริ่มต้น Edge Micro callback Edge Microgateway ไม่เริ่มทำงาน
ข้อผิดพลาด ปลั๊กอินต้องเป็นฟังก์ชัน ผ้าคลุม
เตือน console.error เตือน การเขียนบันทึก
เตือน ข้อผิดพลาด targetRequest เรียกใช้การจัดการข้อผิดพลาดของเป้าหมาย ข้อผิดพลาดของไคลเอ็นต์ HTTP ในการเชื่อมต่อกับเป้าหมาย
เตือน ข้อผิดพลาด targetResponse เรียกใช้การจัดการข้อผิดพลาดของเป้าหมาย ข้อผิดพลาดของเซิร์ฟเวอร์เป้าหมาย HTTP ในการเชื่อมต่อกับเป้าหมายตามที่เห็นในไคลเอ็นต์

โมดูล microgateway-config

ข้อผิดพลาด allow_message ยืนยัน assert(+config.quota.allow > 0, allow_message);
ข้อผิดพลาด ไม่มีการกำหนดค่า ผ้าคลุม ไฟล์ YAML ของการกำหนดค่า
ข้อผิดพลาด config ว่างเปล่า ผ้าคลุม ไฟล์ YAML ของการกำหนดค่า
ข้อผิดพลาด config ไม่ใช่ไฟล์ ผ้าคลุม ไฟล์ YAML ของการกำหนดค่า
ข้อผิดพลาด ไม่ได้กำหนดค่า ยืนยัน 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 ไม่ใช่ "dummy" ยืนยัน 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 น้อยเกินไป (ขั้นต่ำ 1 ชั่วโมง) ยืนยัน 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');
ข้อผิดพลาด ข้อผิดพลาดร้ายแรง: ข้อผิดพลาดในการแยกวิเคราะห์รายการผลิตภัณฑ์ที่ดาวน์โหลด callback
ข้อผิดพลาด ข้อผิดพลาดร้ายแรง: เกิดข้อผิดพลาดในการแยกวิเคราะห์รายการพร็อกซีที่ดาวน์โหลด callback
ข้อผิดพลาด ตรวจพบข้อผิดพลาดในการกำหนดค่าผลิตภัณฑ์ไม่ถูกต้อง console.error ตามด้วย console.warn('using old cached configuration');
ข้อผิดพลาด เกิดข้อผิดพลาดในการอ่านการกำหนดค่าจาก ผ้าคลุม ไฟล์ YAML ของการกำหนดค่า
ข้อผิดพลาด เกิดข้อผิดพลาดในการบันทึกการกำหนดค่าไปยัง callback ไฟล์ YAML ของการกำหนดค่า
ข้อผิดพลาด fatal: cached config not available, unable to continue callback
ข้อผิดพลาด 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 โปรดดูคู่มือผู้ดูแลระบบ callback ผลลัพธ์: โหลดการกำหนดค่าไม่สำเร็จ
ข้อผิดพลาด ไม่มีคีย์ ยืนยัน 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')
ข้อผิดพลาด ตัวเลือกต้องไม่เป็นค่า Null ยืนยัน assert(options, 'options cannot be null');
ข้อผิดพลาด options.keys ต้องไม่เป็นค่า Null ยืนยัน 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');
ข้อผิดพลาด 'พร็อกซีสำหรับผลิตภัณฑ์ ' + ผลิตภัณฑ์ + ' ควรเป็นอาร์เรย์' ยืนยัน assert(Array.isArray(product.proxies), 'proxies for product ' + product + ' should be an array');
ข้อผิดพลาด ไม่มีข้อมูลลับ ยืนยัน assert(keys.secret, 'secret is missing');
ข้อผิดพลาด ไม่ได้ตั้งเป้าหมาย ยืนยัน assert(target, 'target is not set');
เตือน เกิดข้อผิดพลาดในการดาวน์โหลดการกำหนดค่า โปรดตรวจสอบการกำหนดค่าการเริ่มต้น console.warn
เตือน ดาวน์โหลด jwt_public_key ไม่สำเร็จ console.warn
เตือน ไม่ได้เปิดใช้คีย์ JWK console.warn
เตือน message, 'download from', url, 'returned' console.warn ค้นหา: (.*)\sdownload from\s(.*)\sreturned
เตือน ไม่พบผลิตภัณฑ์ Edge Micro ในการตอบกลับ console.warn
เตือน ไม่พบพร็อกซีขนาดเล็กที่ Edge ในองค์กร 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 callback เกิดขึ้นใน deletecache.js รหัสสถานะจาก Apigee Edge ส่งข้อผิดพลาดสแต็กเทรซไปยังการเรียกกลับพร้อมข้อความนี้: done(new Error(errMsg));
ข้อผิดพลาด ลบผลิตภัณฑ์ไม่สำเร็จโดยมีรหัสสถานะ %d', res.statusCode callback ส่งใน deleteproduct.js รหัสสถานะจาก Apigee Edge ส่งข้อผิดพลาดสแต็กเทรซไปยังการเรียกกลับพร้อมข้อความนี้: done(new Error(errMsg));
ข้อผิดพลาด ต้องระบุ org, api และ revision ทั้งหมด callback เกิดขึ้นใน fetchproxy.js ข้อผิดพลาดของการกำหนดค่า
ข้อผิดพลาด ได้รับข้อผิดพลาด %d เมื่อดึงข้อมูลพร็อกซี: %j callback เกิดขึ้นใน fetchproxy.js รหัสสถานะอื่นๆ ที่ไม่ใช่ 200
ข้อผิดพลาด สร้างแอปไม่สำเร็จโดยมีรหัสสถานะ %d callback โยนใน createapp.js ส่งข้อผิดพลาดทั้งหมดกลับไปยัง Callback เป็นข้อผิดพลาดของสแต็กเทรซ ไม่พิมพ์คอนโซลหรือรายการบันทึก
ข้อผิดพลาด คำสั่ง + ' ไม่สำเร็จโดยมีรหัสสถานะ %d callback โยนใน command-utils.js สำหรับคำสั่งใดก็ตามที่แยกวิเคราะห์และส่งไปยังโมดูลนี้ โค้ดที่ไม่ใช่ 200 หรือ 201 จะสร้างข้อความแสดงข้อผิดพลาด จัดรูปแบบข้อความนี้ แต่ไม่ พิมพ์ ส่งข้อผิดพลาดของสแต็กเทรซพร้อมข้อความกลับไปยังการเรียกกลับ
ข้อผิดพลาด ได้รับข้อผิดพลาด %d เมื่อดึงข้อมูลโฟลว์ที่แชร์: %s callback เกิดข้อผิดพลาดใน fetchsharedflow.js สำหรับสถานะ HTTP ที่ไม่ใช่ 200 หากสำเร็จแต่เขียนไฟล์ไม่สำเร็จ ระบบจะเขียนไปยังคอนโซลว่า
เขียนไฟล์ไม่สำเร็จ
ข้อความแสดงข้อผิดพลาด: [stack_trace_error]
ข้อผิดพลาด สร้าง KeySecret ไม่สำเร็จโดยมีรหัสสถานะ %d', res.statusCode callback เกิดขึ้นใน createappkey.js สำหรับรหัสสถานะ HTTP จาก Apigee Edge ที่ไม่ใช่ 200 หรือ 201
ข้อผิดพลาด สร้างแคชไม่สำเร็จด้วยรหัสสถานะ %d', res.statusCode callback เกิดขึ้นใน createcache.js สำหรับรหัสสถานะ HTTP จาก Apigee Edge ที่ไม่ใช่ 200 หรือ 201
ข้อผิดพลาด สร้างผลิตภัณฑ์ไม่สำเร็จโดยมีรหัสสถานะ %d', res.statusCode callback ส่งใน createproduct.js สำหรับรหัสสถานะ HTTP จาก Apigee Edge ที่ไม่ใช่ 201 หากสถานะ HTTP เป็น 201 แต่การตอบกลับมี JSON ข้อผิดพลาด ระบบจะส่งต่อ JSON ข้อผิดพลาดไปยัง การเรียกกลับ
ข้อผิดพลาด ลบแอปไม่สำเร็จโดยมีรหัสสถานะ %d', res.statusCode callback เกิดขึ้นใน deleteapp.js สำหรับรหัสสถานะ HTTP จาก Apigee Edge ที่ไม่ใช่ 200 หากสถานะ HTTP เป็น 200 แต่การตอบกลับมี JSON ข้อผิดพลาด ระบบจะส่งต่อ JSON ข้อผิดพลาดไปยัง การเรียกกลับ
ข้อผิดพลาด สร้างนักพัฒนาแอปไม่สำเร็จโดยมีรหัสสถานะ %d', res.statusCode callback ส่งใน createdeveloper.js สำหรับรหัสสถานะ HTTP จาก Apigee Edge ที่ไม่ใช่ 201 หากสถานะ HTTP เป็น 201 แต่การตอบกลับมี JSON ข้อผิดพลาด ระบบจะส่งต่อ JSON ข้อผิดพลาดไปยัง การเรียกกลับ
ข้อผิดพลาด ลบนักพัฒนาแอปไม่สำเร็จโดยมีรหัสสถานะ %d', res.statusCode callback โยนใน 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.