আপনি Apigee Edge ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশনে যান । তথ্য
এজ মাইক্রোগেটওয়ে v. 2.4.x
ওভারভিউ
এই বিষয় আলোচনা করে কিভাবে এজ মাইক্রোগেটওয়ে পরিচালনা এবং কনফিগার করতে হয়, যার মধ্যে রয়েছে পর্যবেক্ষণ, লগিং এবং ডিবাগিং।
কনফিগারেশন পরিবর্তন করা
আপনার যে কনফিগারেশন ফাইলগুলি সম্পর্কে জানতে হবে তার মধ্যে রয়েছে:
- ডিফল্ট সিস্টেম কনফিগারেশন ফাইল
- একটি নতুন আরম্ভকৃত এজ মাইক্রোগেটওয়ে উদাহরণের জন্য ডিফল্ট কনফিগার ফাইল
- চলমান উদাহরণের জন্য ডায়নামিক কনফিগারেশন ফাইল
এই বিভাগে এই ফাইলগুলি এবং সেগুলি পরিবর্তন করার বিষয়ে আপনার যা জানা দরকার তা নিয়ে আলোচনা করা হয়েছে৷ কনফিগারেশন ফাইল সেটিংস সম্পর্কে বিশদ বিবরণের জন্য, এজ মাইক্রোগেটওয়ে কনফিগারেশন রেফারেন্স দেখুন।
ডিফল্ট সিস্টেম কনফিগারেশন ফাইল
আপনি যখন এজ মাইক্রোগেটওয়ে ইনস্টল করেন, তখন একটি ডিফল্ট সিস্টেম কনফিগারেশন ফাইল এখানে রাখা হয়:
[prefix]/lib/node_modules/edgemicro/config/default.yaml
যেখানে [prefix] হল npm উপসর্গ ডিরেক্টরি। এজ মাইক্রোগেটওয়ে কোথায় ইনস্টল করা আছে দেখুন।
আপনি যদি সিস্টেম কনফিগার ফাইলটি পরিবর্তন করেন তবে আপনাকে অবশ্যই এজ মাইক্রোগেটওয়ে পুনরায় চালু করতে হবে, পুনরায় কনফিগার করতে হবে এবং পুনরায় চালু করতে হবে:
-
edgemicro initকল করুন -
edgemicro configure [params] - কল
edgemicro start [params]
নতুন আরম্ভ করা এজ মাইক্রোগেটওয়ে দৃষ্টান্তগুলির জন্য ডিফল্ট কনফিগার ফাইল
আপনি যখন edgemicro init চালান, তখন সিস্টেম কনফিগার ফাইল (উপরে বর্ণিত), default.yaml , এই ডিরেক্টরিতে স্থাপন করা হয়: ~ /.edgemicro
আপনি যদি ~ /.edgemicro এ কনফিগার ফাইলটি পরিবর্তন করেন, তাহলে আপনাকে অবশ্যই এজ মাইক্রোগেটওয়ে পুনরায় কনফিগার করে পুনরায় চালু করতে হবে:
-
edgemicro stop -
edgemicro configure[params] -
edgemicro start[params]
চলমান উদাহরণের জন্য ডায়নামিক কনফিগারেশন ফাইল
আপনি যখন edgemicro configure [params] চালান, তখন ~ /.edgemicro এ একটি ডায়নামিক কনফিগারেশন ফাইল তৈরি হয়। এই প্যাটার্ন অনুসারে ফাইলটির নামকরণ করা হয়েছে: [org]-[env]-config.yaml , যেখানে org এবং env হল আপনার Apigee Edge প্রতিষ্ঠান এবং পরিবেশের নাম। আপনি কনফিগারেশন পরিবর্তন করতে এই ফাইলটি ব্যবহার করতে পারেন, এবং তারপর শূন্য-ডাউনটাইম দিয়ে পুনরায় লোড করতে পারেন। উদাহরণস্বরূপ, যদি আপনি একটি প্লাগইন যোগ করেন এবং কনফিগার করেন, তাহলে নিচের ব্যাখ্যা অনুযায়ী কোনো ডাউনটাইম খরচ না করে আপনি কনফিগারেশনটি পুনরায় লোড করতে পারেন।
যদি এজ মাইক্রোগেটওয়ে চলছে (শূন্য-ডাউনটাইম বিকল্প):
- এজ মাইক্রোগেটওয়ে কনফিগারেশনটি পুনরায় লোড করুন:
edgemicro reload -o [org] -e [env] -k [key] -s [secret]
কোথায়:
-
orgহল আপনার এজ প্রতিষ্ঠানের নাম (আপনাকে অবশ্যই একজন প্রতিষ্ঠান প্রশাসক হতে হবে)। -
envহল আপনার প্রতিষ্ঠানের একটি পরিবেশ (যেমন পরীক্ষা বা পণ্য)। -
keyহল সেই কী যা পূর্বে কনফিগার কমান্ড দ্বারা ফেরত দেওয়া হয়েছিল। -
secretহল সেই কী যা পূর্বে কনফিগার কমান্ড দ্বারা ফেরত দেওয়া হয়েছিল।
উদাহরণ
edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d000723 -s 05c14356e42ed136b8dd35cf8a18531ff52d7299134677e30ef4e34ab0cc824
-
যদি এজ মাইক্রোগেটওয়ে বন্ধ করা হয়:
- এজ মাইক্রোগেটওয়ে পুনরায় চালু করুন:
edgemicro start -o [org] -e [env] -k [key] -s [secret]
কোথায়:
-
orgহল আপনার এজ প্রতিষ্ঠানের নাম (আপনাকে অবশ্যই একজন প্রতিষ্ঠান প্রশাসক হতে হবে)। -
envহল আপনার প্রতিষ্ঠানের একটি পরিবেশ (যেমন পরীক্ষা বা পণ্য)। -
keyহল সেই কী যা পূর্বে কনফিগার কমান্ড দ্বারা ফেরত দেওয়া হয়েছিল। -
secretহল সেই কী যা পূর্বে কনফিগার কমান্ড দ্বারা ফেরত দেওয়া হয়েছিল।
উদাহরণ
edgemicro start -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d000723 -s 05c14356e42ed136b8dd35cf8a18531ff52d7299134677e30ef4e34ab0cc824
-
এখানে একটি উদাহরণ কনফিগার ফাইল। কনফিগারেশন ফাইল সেটিংস সম্পর্কে বিশদ বিবরণের জন্য, এজ মাইক্রোগেটওয়ে কনফিগারেশন রেফারেন্স দেখুন।
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
পরিবেশের ভেরিয়েবল সেট করা
কমান্ড-লাইন ইন্টারফেস কমান্ডগুলি যেগুলির জন্য আপনার এজ সংস্থা এবং পরিবেশের জন্য মান প্রয়োজন এবং এজ মাইক্রোগেটওয়ে শুরু করার জন্য প্রয়োজনীয় কী এবং গোপনীয়তাগুলি এই পরিবেশ ভেরিয়েবলগুলিতে সংরক্ষণ করা যেতে পারে:
-
EDGEMICRO_ORG -
EDGEMICRO_ENV -
EDGEMICRO_KEY -
EDGEMICRO_SECRET
এই ভেরিয়েবল সেট করা ঐচ্ছিক. আপনি যদি সেগুলি সেট করেন, আপনি এজ মাইক্রোগেটওয়ে কনফিগার করতে এবং শুরু করতে কমান্ড-লাইন ইন্টারফেস (CLI) ব্যবহার করার সময় আপনাকে তাদের মানগুলি নির্দিষ্ট করতে হবে না।
এজ মাইক্রোগেটওয়ে সার্ভারে SSL কনফিগার করা হচ্ছে
আপনি SSL ব্যবহার করতে Microgateway সার্ভার কনফিগার করতে পারেন। উদাহরণস্বরূপ, SSL কনফিগার করা হলে, আপনি এজ মাইক্রোগেটওয়ের মাধ্যমে "https" প্রোটোকল সহ API কল করতে পারেন, যেমন:
https://localhost:8000/myapi
মাইক্রোগেটওয়ে সার্ভারে SSL কনফিগার করতে, এই পদক্ষেপগুলি অনুসরণ করুন:
- Openssl ইউটিলিটি বা আপনার পছন্দের যে কোনও পদ্ধতি ব্যবহার করে একটি SSL শংসাপত্র এবং কী তৈরি করুন বা প্রাপ্ত করুন।
- এজ মাইক্রোগেটওয়ে কনফিগারেশন ফাইলে
edgemicro:sslঅ্যাট্রিবিউট যোগ করুন। বিকল্পগুলির একটি সম্পূর্ণ তালিকার জন্য, নীচের টেবিলটি দেখুন। এজ মাইক্রোগেটওয়ে কনফিগারেশন পরিবর্তন করার বিষয়ে বিস্তারিত জানতে, কনফিগারেশন পরিবর্তন করা দেখুন। যেমন: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 - এজ মাইক্রোগেটওয়ে পুনরায় চালু করুন। আপনি কোন কনফিগারেশন ফাইলটি সম্পাদনা করেছেন তার উপর নির্ভর করে কনফিগারেশন পরিবর্তন করার ক্ষেত্রে বর্ণিত ধাপগুলি অনুসরণ করুন: ডিফল্ট ফাইল বা রানটাইম কনফিগারেশন ফাইল।
এখানে 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
এখানে সমর্থিত সার্ভার বিকল্পগুলির একটি তালিকা রয়েছে:
| অপশন | বর্ণনা |
|---|---|
key | একটি ca.key ফাইলের পাথ (PEM ফরম্যাটে)। |
cert | একটি ca.cert ফাইলের পাথ (PEM ফর্ম্যাটে)। |
pfx | PFX বিন্যাসে ক্লায়েন্টের ব্যক্তিগত কী, শংসাপত্র এবং CA শংসাপত্র সহ একটি pfx ফাইলের পথ। |
passphrase | ব্যক্তিগত কী বা PFX-এর জন্য পাসফ্রেজ ধারণকারী একটি স্ট্রিং। |
ca | PEM বিন্যাসে বিশ্বস্ত শংসাপত্রের একটি তালিকা ধারণকারী ফাইলের পাথ৷ |
ciphers | একটি ":" দ্বারা পৃথক করা সাইফার ব্যবহার করার জন্য একটি স্ট্রিং বর্ণনা করে। |
rejectUnauthorized | সত্য হলে, সরবরাহকৃত CA-এর তালিকার বিরুদ্ধে সার্ভার শংসাপত্র যাচাই করা হয়। যাচাইকরণ ব্যর্থ হলে, একটি ত্রুটি ফেরত দেওয়া হয়। |
secureProtocol | ব্যবহার করার জন্য SSL পদ্ধতি। উদাহরণ স্বরূপ, SSL কে বাধ্য করার জন্য SSLv3_method সংস্করণ 3। |
servername | SNI (সার্ভার নেম ইঙ্গিত) TLS এক্সটেনশনের সার্ভারের নাম। |
requestCert | 2-ওয়ে SSL এর জন্য সত্য; 1-ওয়ে SSL-এর জন্য মিথ্যা |
ক্লায়েন্ট SSL/TLS বিকল্প ব্যবহার করে
টার্গেট এন্ডপয়েন্টের সাথে সংযোগ করার সময় আপনি এজ মাইক্রোগেটওয়েকে একটি TLS বা SSL ক্লায়েন্ট হিসাবে কনফিগার করতে পারেন। মাইক্রোগেটওয়ে কনফিগারেশন ফাইলে, SSL/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এখানে সমর্থিত ক্লায়েন্ট বিকল্পগুলির একটি তালিকা রয়েছে:
| অপশন | বর্ণনা |
|---|---|
pfx | PFX বিন্যাসে ক্লায়েন্টের ব্যক্তিগত কী, শংসাপত্র এবং CA শংসাপত্র সহ একটি pfx ফাইলের পথ। |
key | একটি ca.key ফাইলের পাথ (PEM ফরম্যাটে)। |
passphrase | ব্যক্তিগত কী বা PFX-এর জন্য পাসফ্রেজ ধারণকারী একটি স্ট্রিং। |
cert | একটি ca.cert ফাইলের পাথ (PEM ফর্ম্যাটে)। |
ca | PEM বিন্যাসে বিশ্বস্ত শংসাপত্রের একটি তালিকা ধারণকারী ফাইলের পাথ৷ |
ciphers | একটি ":" দ্বারা পৃথক করা সাইফার ব্যবহার করার জন্য একটি স্ট্রিং বর্ণনা করে। |
rejectUnauthorized | সত্য হলে, সরবরাহকৃত CA-এর তালিকার বিরুদ্ধে সার্ভার শংসাপত্র যাচাই করা হয়। যাচাইকরণ ব্যর্থ হলে, একটি ত্রুটি ফেরত দেওয়া হয়। |
secureProtocol | ব্যবহার করার জন্য SSL পদ্ধতি। উদাহরণ স্বরূপ, SSL কে বাধ্য করার জন্য SSLv3_method সংস্করণ 3। |
servername | SNI (সার্ভার নেম ইঙ্গিত) TLS এক্সটেনশনের সার্ভারের নাম। |
edgemicro-auth প্রক্সি কাস্টমাইজ করা হচ্ছে
ডিফল্টরূপে, এজ মাইক্রোগেটওয়ে OAuth2 প্রমাণীকরণের জন্য Apigee Edge-এ স্থাপন করা একটি প্রক্সি ব্যবহার করে। আপনি যখন প্রাথমিকভাবে edgemicro configure চালান তখন এই প্রক্সিটি স্থাপন করা হয়। আপনি JSON ওয়েব টোকেন (JWT) তে কাস্টম দাবির জন্য সমর্থন যোগ করতে, টোকেনের মেয়াদ শেষ করতে এবং রিফ্রেশ টোকেন তৈরি করতে এই প্রক্সিটির ডিফল্ট কনফিগারেশন পরিবর্তন করতে পারেন। বিশদ বিবরণের জন্য, গিটহাবের এজমাইক্রো-প্রমাণ পৃষ্ঠাটি দেখুন।
একটি কাস্টম প্রমাণীকরণ পরিষেবা ব্যবহার করে৷
ডিফল্টরূপে, এজ মাইক্রোগেটওয়ে OAuth2 প্রমাণীকরণের জন্য Apigee Edge-এ স্থাপন করা একটি প্রক্সি ব্যবহার করে। আপনি যখন প্রাথমিকভাবে edgemicro configure চালান তখন এই প্রক্সিটি স্থাপন করা হয়। ডিফল্টরূপে, এই প্রক্সির URL এজ মাইক্রোগেটওয়ে কনফিগারেশন ফাইলে নিম্নরূপ নির্দিষ্ট করা হয়েছে:
authUri: https://myorg-myenv.apigee.net/edgemicro-auth
আপনি যদি প্রমাণীকরণ পরিচালনা করতে আপনার নিজস্ব কাস্টম পরিষেবা ব্যবহার করতে চান তবে আপনার পরিষেবার দিকে নির্দেশ করতে কনফিগার ফাইলে authUri মান পরিবর্তন করুন। উদাহরণস্বরূপ, আপনার একটি পরিষেবা থাকতে পারে যা পরিচয় যাচাই করতে LDAP ব্যবহার করে।
লগ ফাইল পরিচালনা
এজ মাইক্রোগেটওয়ে প্রতিটি অনুরোধ এবং প্রতিক্রিয়া সম্পর্কে তথ্য লগ করে। লগ ফাইলগুলি ডিবাগিং এবং সমস্যা সমাধানের জন্য দরকারী তথ্য প্রদান করে।
যেখানে লগ ফাইল সংরক্ষণ করা হয়
ডিফল্টরূপে, লগ ফাইলগুলি /var/tmp এ সংরক্ষণ করা হয়।
ডিফল্ট লগ ফাইল ডিরেক্টরি পরিবর্তন কিভাবে
যে ডিরেক্টরিতে লগ ফাইলগুলি সংরক্ষণ করা হয় সেটি এজ মাইক্রোগেটওয়ে কনফিগারেশন ফাইলে নির্দিষ্ট করা আছে। কনফিগারেশন পরিবর্তন করার বিষয়ে বিস্তারিত জানার জন্য, কনফিগারেশন পরিবর্তন করা দেখুন।
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 এবং একটি লগ ফাইল উভয়েই লগ পাঠাতে পারবেন না।
লগিং লেভেল কিভাবে সেট করবেন
আপনি এই লগ স্তরগুলি সেট করতে পারেন: তথ্য , সতর্ক , এবং ত্রুটি ৷ তথ্য স্তর সুপারিশ করা হয়. এটি সমস্ত API অনুরোধ এবং প্রতিক্রিয়াগুলি লগ করে এবং এটি ডিফল্ট৷
লগের ব্যবধান কিভাবে পরিবর্তন করবেন
আপনি এজ মাইক্রোগেটওয়ে কনফিগার ফাইলে এই ব্যবধানগুলি কনফিগার করতে পারেন। কনফিগারেশন পরিবর্তন করার বিষয়ে বিস্তারিত জানার জন্য, কনফিগারেশন পরিবর্তন করা দেখুন।
কনফিগারযোগ্য বৈশিষ্ট্যগুলি হল:
- stats_log_interval : (ডিফল্ট: 60) ব্যবধান, সেকেন্ডে, যখন পরিসংখ্যান রেকর্ড API লগ ফাইলে লেখা হয়।
- 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 সুপারিশ করে যে আপনি নিম্নলিখিত অনুশীলনগুলি গ্রহণ করুন:
- যেহেতু লগ ফাইলগুলি বেশ বড় হতে পারে, নিশ্চিত করুন যে লগ ফাইল ডিরেক্টরিতে পর্যাপ্ত স্থান রয়েছে। নিম্নলিখিত বিভাগগুলি দেখুন যেখানে লগ ফাইলগুলি সংরক্ষণ করা হয় এবং কীভাবে ডিফল্ট লগ ফাইল ডিরেক্টরি পরিবর্তন করতে হয় ।
- সপ্তাহে অন্তত একবার লগ ফাইলগুলিকে আলাদা আর্কাইভ ডিরেক্টরিতে মুছুন বা সরান৷
- যদি আপনার নীতি লগ মুছে ফেলা হয়, আপনি CLI কমান্ড
edgemicro log -cব্যবহার করতে পারেন পুরানো লগ অপসারণ (পরিষ্কার) করতে।
লগ ফাইল নামকরণ কনভেনশন
প্রতিটি এজ মাইক্রোগেটওয়ে ইনস্ট্যান্স তিন ধরনের লগ ফাইল তৈরি করে:
- api - এজ মাইক্রোগেটওয়ের মাধ্যমে প্রবাহিত সমস্ত অনুরোধ এবং প্রতিক্রিয়া লগ করে। API কাউন্টার (পরিসংখ্যান) এবং ত্রুটিগুলিও এই ফাইলে লগ করা হয়েছে৷
- err - stderr এ পাঠানো যেকোনো কিছু লগ করে।
- আউট - 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
লগ ফাইল বিষয়বস্তু সম্পর্কে
যোগ করা হয়েছে: v2.3.3
ডিফল্টরূপে, লগিং পরিষেবা ডাউনলোড করা প্রক্সি, পণ্যের JSON এবং JSON ওয়েব টোকেন (JWT) বাদ দেয়। আপনি যদি লগ ফাইলগুলিতে এই বস্তুগুলি আউটপুট করতে চান, আপনি এজ মাইক্রোগেটওয়ে শুরু করার সময় DEBUG=* সেট করুন। যেমন:
DEBUG=* edgemicro start -o docs -e test -k abc123 -s xyz456
দ্রষ্টব্য: উইন্ডোজে, SET DEBUG=* ব্যবহার করুন
"api" লগ ফাইলের বিষয়বস্তু
"api" লগ ফাইলটিতে এজ মাইক্রোগেটওয়ের মাধ্যমে অনুরোধ এবং প্রতিক্রিয়া প্রবাহ সম্পর্কে বিস্তারিত তথ্য রয়েছে। "api" লগ ফাইলগুলির নাম এইরকম:
edgemicro-mymachine-local-MTQzNjIxOTk0NzY0Nw-api.log
এজ মাইক্রোগেটওয়েতে করা প্রতিটি অনুরোধের জন্য, "api" লগ ফাইলে চারটি ইভেন্ট ক্যাপচার করা হয়েছে:
- ক্লায়েন্ট থেকে ইনকামিং অনুরোধ
- টার্গেট করা বহির্গামী অনুরোধ
- লক্ষ্য থেকে ইনকামিং প্রতিক্রিয়া
- ক্লায়েন্ট বহির্গামী প্রতিক্রিয়া
লগ ফাইলগুলিকে আরও কমপ্যাক্ট করতে সাহায্য করার জন্য এই পৃথক এন্ট্রিগুলির প্রতিটি একটি সংক্ষিপ্ত স্বরলিপিতে উপস্থাপন করা হয়। এখানে চারটি ইভেন্টের প্রতিটির প্রতিনিধিত্ব করে চারটি নমুনা এন্ট্রি রয়েছে৷ লগ ফাইলে, এগুলি দেখতে এইরকম (লাইন নম্বরগুলি কেবল ডকে রেফারেন্সের জন্য, সেগুলি লগ ফাইলে উপস্থিত হয় না)।
(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 - ইউনিক্স তারিখ স্ট্যাম্প
- তথ্য - প্রসঙ্গের উপর নির্ভর করে। লগ লেভেলের উপর নির্ভর করে তথ্য, সতর্কতা বা ত্রুটি হতে পারে। একটি পরিসংখ্যান রেকর্ডের জন্য পরিসংখ্যান, সতর্কতার জন্য সতর্কতা বা ত্রুটির জন্য ত্রুটি হতে পারে।
- req - ইভেন্ট সনাক্ত করে। এই ক্ষেত্রে, ক্লায়েন্ট থেকে অনুরোধ.
- m - অনুরোধে ব্যবহৃত HTTP ক্রিয়া।
- u - বেসপাথ অনুসরণ করে URL এর অংশ।
- h - হোস্ট এবং পোর্ট নম্বর যেখানে এজ মাইক্রোগেটওয়ে শুনছে।
- r - দূরবর্তী হোস্ট এবং পোর্ট যেখানে ক্লায়েন্ট অনুরোধ উদ্ভূত হয়েছে।
- i - অনুরোধ আইডি। চারটি ইভেন্ট এন্ট্রি এই আইডি শেয়ার করবে। প্রতিটি অনুরোধ একটি অনন্য অনুরোধ আইডি বরাদ্দ করা হয়. রিকোয়েস্ট আইডির মাধ্যমে লগ রেকর্ডের সম্পর্ক টার্গেটের লেটেন্সি সম্পর্কে মূল্যবান অন্তর্দৃষ্টি দিতে পারে।
- d - এজ মাইক্রোগেটওয়ে অনুরোধটি পাওয়ার পর থেকে মিলিসেকেন্ডে সময়কাল। উপরের উদাহরণে, অনুরোধ 0 এর লক্ষ্যের প্রতিক্রিয়া 7 মিলিসেকেন্ড (লাইন 3) পরে গৃহীত হয়েছিল এবং অতিরিক্ত 4 মিলিসেকেন্ড (লাইন 4) পরে ক্লায়েন্টকে প্রতিক্রিয়া পাঠানো হয়েছিল। অন্য কথায়, মোট অনুরোধের বিলম্ব ছিল 11 মিলিসেকেন্ড, যার মধ্যে 7 মিলিসেকেন্ড টার্গেট এবং 4 মিলিসেকেন্ড এজ মাইক্রোগেটওয়ে নিজেই নিয়েছিল।
2. লক্ষ্যে করা বহির্গামী অনুরোধের নমুনা:
1436403888665 info treq m=GET, u=/, h=127.0.0.1:8080, i=0
- 1436403888651 - ইউনিক্স তারিখ স্ট্যাম্প
- তথ্য - প্রসঙ্গের উপর নির্ভর করে। লগ লেভেলের উপর নির্ভর করে তথ্য, সতর্কতা বা ত্রুটি হতে পারে। একটি পরিসংখ্যান রেকর্ডের জন্য পরিসংখ্যান, সতর্কতার জন্য সতর্কতা বা ত্রুটির জন্য ত্রুটি হতে পারে।
- treq - ইভেন্ট সনাক্ত করে। এই ক্ষেত্রে, লক্ষ্য অনুরোধ.
- m - লক্ষ্য অনুরোধে ব্যবহৃত HTTP ক্রিয়া।
- u - বেসপাথ অনুসরণ করে URL এর অংশ।
- h - ব্যাকএন্ড টার্গেটের হোস্ট এবং পোর্ট নম্বর।
- i - লগ এন্ট্রির আইডি। চারটি ইভেন্ট এন্ট্রি এই আইডি শেয়ার করবে।
3. লক্ষ্য থেকে আগত প্রতিক্রিয়ার নমুনা
1436403888672 info tres s=200, d=7, i=0
1436403888651 - ইউনিক্স তারিখ স্ট্যাম্প
- তথ্য - প্রসঙ্গের উপর নির্ভর করে। লগ লেভেলের উপর নির্ভর করে তথ্য, সতর্কতা বা ত্রুটি হতে পারে। একটি পরিসংখ্যান রেকর্ডের জন্য পরিসংখ্যান, সতর্কতার জন্য সতর্কতা বা ত্রুটির জন্য ত্রুটি হতে পারে।
- tres - ঘটনা চিহ্নিত করে। এই ক্ষেত্রে, লক্ষ্য প্রতিক্রিয়া.
- s - HTTP প্রতিক্রিয়া স্থিতি।
- d - মিলিসেকেন্ডে সময়কাল। টার্গেট দ্বারা API কলের জন্য সময় লাগে।
- i - লগ এন্ট্রির আইডি। চারটি ইভেন্ট এন্ট্রি এই আইডি শেয়ার করবে।
4. ক্লায়েন্ট বহির্গামী প্রতিক্রিয়া নমুনা
1436403888676 info res s=200, d=11, i=0
1436403888651 - ইউনিক্স তারিখ স্ট্যাম্প
- তথ্য - প্রসঙ্গের উপর নির্ভর করে। লগ লেভেলের উপর নির্ভর করে তথ্য, সতর্কতা বা ত্রুটি হতে পারে। একটি পরিসংখ্যান রেকর্ডের জন্য পরিসংখ্যান, সতর্কতার জন্য সতর্কতা বা ত্রুটির জন্য ত্রুটি হতে পারে।
- res - ইভেন্ট সনাক্ত করে। এই ক্ষেত্রে, ক্লায়েন্টের প্রতিক্রিয়া।
- s - HTTP প্রতিক্রিয়া স্থিতি।
- d - মিলিসেকেন্ডে সময়কাল। টার্গেট এপিআই দ্বারা নেওয়া সময় এবং এজ মাইক্রোগেটওয়ে নিজেই যে সময় নেয় তা সহ এটি API কল দ্বারা নেওয়া মোট সময়।
- i - লগ এন্ট্রির আইডি। চারটি ইভেন্ট এন্ট্রি এই আইডি শেয়ার করবে।
লগ ফাইল সময়সূচী
লগ ফাইলগুলি rotate_interval কনফিগারেশন বৈশিষ্ট্য দ্বারা নির্দিষ্ট ব্যবধানে ঘোরানো হয়। ঘূর্ণন ব্যবধানের মেয়াদ শেষ না হওয়া পর্যন্ত এন্ট্রি একই লগ ফাইলে যোগ করা অব্যাহত থাকবে। যাইহোক, প্রতিবার এজ মাইক্রোগেটওয়ে পুনরায় চালু হলে এটি একটি নতুন UID পায় এবং এই UID দিয়ে লগ ফাইলের একটি নতুন সেট তৈরি করে। এছাড়াও ভাল লগ ফাইল রক্ষণাবেক্ষণ অনুশীলন দেখুন.
এজ মাইক্রোগেটওয়ে কনফিগারেশন রেফারেন্স
কনফিগারেশন ফাইলের অবস্থান
এই বিভাগে বর্ণিত কনফিগারেশন বৈশিষ্ট্যগুলি এজ মাইক্রোগেটওয়ে কনফিগারেশন ফাইলে অবস্থিত। কনফিগারেশন পরিবর্তন করার বিষয়ে বিস্তারিত জানার জন্য, কনফিগারেশন পরিবর্তন করা দেখুন।
edge_config বৈশিষ্ট্য
এই সেটিংস এজ মাইক্রোগেটওয়ে ইনস্ট্যান্স এবং এপিজি এজ এর মধ্যে মিথস্ক্রিয়া কনফিগার করতে ব্যবহৃত হয়।
- বুটস্ট্র্যাপ : (ডিফল্ট: কোনোটিই নয়) একটি URL যা Apigee এজ-এ চলমান একটি এজ মাইক্রোগেটওয়ে-নির্দিষ্ট পরিষেবার দিকে নির্দেশ করে। এজ মাইক্রোগেটওয়ে অ্যাপিজি এজের সাথে যোগাযোগ করতে এই পরিষেবাটি ব্যবহার করে। আপনি যখন পাবলিক/প্রাইভেট কী পেয়ার জেনারেট করতে কমান্ডটি চালান তখন এই URLটি ফেরত দেওয়া হয়:
edgemicro genkeys। বিস্তারিত জানার জন্য এজ মাইক্রোগেটওয়ে সেট আপ এবং কনফিগার করা দেখুন। - jwt_public_key : (ডিফল্ট: কোনটিই নয়) একটি ইউআরএল যা এজ মাইক্রোগেটওয়ে প্রক্সির দিকে নির্দেশ করে যা এপিজি এজ এ স্থাপন করা হয়েছে। এই প্রক্সি ক্লায়েন্টদের স্বাক্ষরিত অ্যাক্সেস টোকেন ইস্যু করার জন্য একটি প্রমাণীকরণ শেষ পয়েন্ট হিসাবে কাজ করে। আপনি যখন প্রক্সি স্থাপনের কমান্ডটি চালান তখন এই URLটি ফেরত দেওয়া হয়: edgemicro configure । বিস্তারিত জানার জন্য এজ মাইক্রোগেটওয়ে সেট আপ এবং কনফিগার করা দেখুন।
edgemicro বৈশিষ্ট্য
এই সেটিংস এজ মাইক্রোগেটওয়ে প্রক্রিয়া কনফিগার করে।
- port : (ডিফল্ট: 8000) যে পোর্ট নম্বরে এজ মাইক্রোগেটওয়ে প্রক্রিয়া শোনে।
- max_connections : (ডিফল্ট: -1) এজ মাইক্রোগেটওয়ে প্রাপ্ত সর্বোচ্চ সংখ্যক যুগপত ইনকামিং সংযোগ নির্দিষ্ট করে। এই সংখ্যা অতিক্রম করা হলে, নিম্নলিখিত স্থিতি ফেরত দেওয়া হয়:
res.statusCode = 429; // Too many requests - max_connections_hard : (ডিফল্ট: -1) সংযোগ বন্ধ করার আগে Edge Microgateway প্রাপ্ত সর্বোচ্চ সংখ্যক একযোগে অনুরোধ পেতে পারে। এই সেটিং পরিষেবা আক্রমণ অস্বীকার করার উদ্দেশ্যে করা হয়েছে. সাধারণত, এটিকে max_connections এর চেয়ে বড় সংখ্যায় সেট করুন।
- লগিং :
- স্তর : (ডিফল্ট: ত্রুটি)
- তথ্য - একটি এজ মাইক্রোগেটওয়ে উদাহরণের মাধ্যমে প্রবাহিত সমস্ত অনুরোধ এবং প্রতিক্রিয়া লগ করে।
- সতর্কতা - শুধুমাত্র সতর্ক বার্তা লগ করুন।
- ত্রুটি - লগ ত্রুটি বার্তা শুধুমাত্র.
- dir : (ডিফল্ট: /var/tmp) ডিরেক্টরি যেখানে লগ ফাইল সংরক্ষণ করা হয়।
- stats_log_interval : (ডিফল্ট: 60) ব্যবধান, সেকেন্ডে, যখন পরিসংখ্যান রেকর্ড এপিআই লগ ফাইলে লেখা হয়।
- rotate_interval : (ডিফল্ট: 24) ব্যবধান, ঘন্টার মধ্যে, যখন লগ ফাইলগুলি ঘোরানো হয়।
- স্তর : (ডিফল্ট: ত্রুটি)
- প্লাগইন : প্লাগইন এজ মাইক্রোগেটওয়েতে কার্যকারিতা যোগ করে। প্লাগইন তৈরির বিষয়ে বিস্তারিত জানার জন্য, কাস্টম প্লাগইন তৈরি করা দেখুন।
- dir : ./gateway ডিরেক্টরি থেকে ./plugins ডিরেক্টরিতে একটি আপেক্ষিক পথ, বা একটি পরম পথ।
- ক্রম : আপনার এজ মাইক্রোগেটওয়ে উদাহরণে যোগ করার জন্য প্লাগইন মডিউলগুলির একটি তালিকা। মডিউলগুলি এখানে উল্লিখিত ক্রম অনুসারে কার্যকর হবে।
- ডিবাগ: এজ মাইক্রোগেটওয়ে প্রক্রিয়াতে দূরবর্তী ডিবাগিং যোগ করে।
- পোর্ট : শোনার জন্য পোর্ট নম্বর। উদাহরণস্বরূপ, এই পোর্টে শুনতে আপনার IDE ডিবাগার সেট করুন।
- args : ডিবাগ প্রক্রিয়ার আর্গুমেন্ট। যেমন:
args --nolazy
- config_change_poll_interval: (ডিফল্ট: 600 সেকেন্ড) Edge Microgateway পর্যায়ক্রমে একটি নতুন কনফিগারেশন লোড করে এবং কিছু পরিবর্তন হলে পুনরায় লোড চালায়। পোলিং এজ-এ করা যেকোনো পরিবর্তন (পণ্যে পরিবর্তন, মাইক্রোগেটওয়ে-সচেতন প্রক্সি, ইত্যাদি) এবং সেইসাথে স্থানীয় কনফিগারেশন ফাইলে করা পরিবর্তনগুলি তুলে নেয়।
- disable_config_poll_interval: (ডিফল্ট: মিথ্যা) স্বয়ংক্রিয় পরিবর্তন পোলিং বন্ধ করতে সত্য সেট করুন।
- request_timeout : লক্ষ্য অনুরোধের জন্য একটি টাইমআউট সেট করে। সময়সীমা সেকেন্ডে সেট করা হয়। যদি একটি টাইমআউট ঘটে, এজ মাইক্রোগেটওয়ে একটি 504 স্ট্যাটাস কোড সহ প্রতিক্রিয়া জানায়। (v2.4.x যোগ করা হয়েছে)
শিরোনাম বৈশিষ্ট্য
এই সেটিংসগুলি কনফিগার করে যে কীভাবে নির্দিষ্ট HTTP শিরোনামগুলি ব্যবহার করা হয়।
- x-forwarded-for : (ডিফল্ট: true) টার্গেটে পাস করার জন্য x-ফরোয়ার্ড-এর হেডার প্রতিরোধ করতে মিথ্যা সেট করুন। মনে রাখবেন যে যদি একটি x-ফরোয়ার্ড-এর জন্য হেডার অনুরোধে থাকে, তাহলে এর মান এজ অ্যানালিটিক্সে ক্লায়েন্ট-আইপি মানতে সেট করা হবে।
- x-forwarded-host : (ডিফল্ট: সত্য) x-ফরোয়ার্ডেড-হোস্ট শিরোনামকে লক্ষ্যে পাস করা প্রতিরোধ করতে মিথ্যাতে সেট করুন।
- x-request-id : (ডিফল্ট: true) x-request-id হেডার টার্গেটে পাস করা প্রতিরোধ করতে মিথ্যা সেট করুন।
- x-response-time : (ডিফল্ট: সত্য) টার্গেটে পাস করা x-প্রতিক্রিয়া-সময় শিরোনাম প্রতিরোধ করতে মিথ্যা সেট করুন।
- মাধ্যমে : (ডিফল্ট: সত্য) হেডারের মাধ্যমে লক্ষ্যে পাস করা প্রতিরোধ করতে মিথ্যা সেট করুন।
শপথ বৈশিষ্ট্য
এই সেটিংস কনফিগার করে কিভাবে ক্লায়েন্ট প্রমাণীকরণ এজ মাইক্রোগেটওয়ে দ্বারা প্রয়োগ করা হয়।
- allowNoAuthorization : (ডিফল্ট: মিথ্যা) সত্যে সেট করা হলে, API কলগুলিকে এজ মাইক্রোগেটওয়ের মধ্য দিয়ে যাওয়ার অনুমতি দেওয়া হয় কোনো অনুমোদন শিরোনাম ছাড়াই। একটি অনুমোদন শিরোনাম (ডিফল্ট) প্রয়োজনের জন্য এটি মিথ্যাতে সেট করুন।
- allowInvalidAuthorization : (ডিফল্ট: মিথ্যা) সত্যে সেট করা থাকলে, অনুমোদন শিরোনামে পাস করা টোকেনটি অবৈধ বা মেয়াদ শেষ হলে API কলগুলি পাস করার অনুমতি দেওয়া হয়। বৈধ টোকেন (ডিফল্ট) প্রয়োজনের জন্য এটি মিথ্যাতে সেট করুন।
- অনুমোদন-শিরোনাম : (ডিফল্ট: অনুমোদন: বহনকারী) হেডারটি এজ মাইক্রোগেটওয়েতে অ্যাক্সেস টোকেন পাঠাতে ব্যবহৃত হয়। আপনি এমন ক্ষেত্রে ডিফল্ট পরিবর্তন করতে চাইতে পারেন যেখানে লক্ষ্যকে অন্য কোনো উদ্দেশ্যে অনুমোদন শিরোনাম ব্যবহার করতে হবে।
- api-key-header : (ডিফল্ট: x-api-key) এজ মাইক্রোগেটওয়েতে একটি API কী পাস করতে ব্যবহৃত হেডার বা ক্যোয়ারী প্যারামিটারের নাম। এপিআই কী ব্যবহার করাও দেখুন।
- keepAuthHeader : (ডিফল্ট: মিথ্যা) সত্যে সেট করা হলে, অনুরোধে প্রেরিত অনুমোদনের শিরোনাম টার্গেটে চলে যায় (এটি সংরক্ষিত থাকে)।
- allowOAuthOnly -- যদি সত্যে সেট করা হয়, প্রতিটি API অবশ্যই একটি বিয়ারার অ্যাক্সেস টোকেন সহ একটি অনুমোদন শিরোনাম বহন করবে৷ আপনাকে শুধুমাত্র OAuth নিরাপত্তা মডেলের অনুমতি দেওয়ার অনুমতি দেয় (পশ্চাদগামী সামঞ্জস্য বজায় রাখার সময়)। (4.2.x যোগ করা হয়েছে)
- অনুমতি দেয়APIKeyOnly -- যদি সত্যে সেট করা হয়, প্রতিটি API-কে অবশ্যই একটি API কী সহ একটি x-api-কী শিরোনাম (বা একটি কাস্টম অবস্থান) বহন করতে হবে৷ আপনাকে শুধুমাত্র API কী নিরাপত্তা মডেলের অনুমতি দিতে দেয় (পশ্চাদগামী সামঞ্জস্য বজায় রাখার সময়)৷ (4.2.x যোগ করা হয়েছে)
প্লাগইন-নির্দিষ্ট বৈশিষ্ট্য
প্রতিটি প্লাগইনের জন্য কনফিগারযোগ্য বৈশিষ্ট্যের বিস্তারিত জানার জন্য প্লাগইন ব্যবহার করা দেখুন।
ফিল্টারিং প্রক্সি
আপনি কোন মাইক্রোগেটওয়ে-সচেতন প্রক্সিগুলিকে একটি এজ মাইক্রোগেটওয়ে দৃষ্টান্ত প্রক্রিয়া করবে তা ফিল্টার করতে পারেন। যখন এজ মাইক্রোগেটওয়ে শুরু হয়, এটি যে সংস্থার সাথে যুক্ত তার সমস্ত মাইক্রোগেটওয়ে-সচেতন প্রক্সি ডাউনলোড করে। মাইক্রোগেটওয়ে কোন প্রক্সি প্রক্রিয়া করবে তা সীমাবদ্ধ করতে নিম্নলিখিত কনফিগারেশন ব্যবহার করুন। উদাহরণস্বরূপ, এই কনফিগারেশনটি মাইক্রোগেটওয়ে তিনটি প্রক্সিতে প্রসেস করবে তা সীমাবদ্ধ করে: edgemicro_proxy-1 , edgemicro_proxy-2 , এবং edgemicro_proxy-3 :
proxies: - edgemicro_proxy-1 - edgemicro_proxy-2 - edgemicro_proxy-3
বিশ্লেষণ তথ্য মাস্কিং
নিম্নলিখিত কনফিগারেশন এজ অ্যানালিটিক্সে দেখানো থেকে অনুরোধের পথের তথ্যকে বাধা দেয়। অনুরোধ URI এবং/অথবা অনুরোধ পাথ মাস্ক করতে মাইক্রোগেটওয়ে কনফিগারেশনে নিম্নলিখিত যোগ করুন। মনে রাখবেন যে ইউআরআই অনুরোধের হোস্টনাম এবং পাথ অংশ নিয়ে গঠিত।
analytics: mask_request_uri: 'string_to_mask' mask_request_path: 'string_to_mask'
একটি কোম্পানির ফায়ারওয়ালের পিছনে এজ মাইক্রোগেটওয়ে সেট আপ করা হচ্ছে
সমর্থিত v4.2.x
যদি এজ মাইক্রোগেটওয়ে ফায়ারওয়ালের পিছনে ইনস্টল করা থাকে তবে গেটওয়ে অ্যাপিজি এজের সাথে যোগাযোগ করতে সক্ষম নাও হতে পারে। এই ক্ষেত্রে, আপনি বিবেচনা করতে পারেন দুটি বিকল্প আছে:
বিকল্প 1:
প্রথম বিকল্পটি হল edgemicro: proxy_tunnel অপশনটিকে মাইক্রোগেটওয়ে কনফিগারেশন ফাইলে সত্যে সেট করা:
edge_config:
proxy: http://10.224.16.85:3128
proxy_tunnel: trueযখন proxy_tunnel সত্য হয়, তখন এজ মাইক্রোগেটওয়ে একটি একক TCP সংযোগের মাধ্যমে HTTP অনুরোধগুলিকে টানেল করতে HTTP CONNECT পদ্ধতি ব্যবহার করে। (প্রক্সি কনফিগার করার জন্য এনভায়রনমেন্ট ভেরিয়েবল TLS সক্ষম হলে একই কথা)।
বিকল্প 2:
দ্বিতীয় বিকল্পটি হল একটি প্রক্সি নির্দিষ্ট করা এবং প্রক্সি_টানেলকে মাইক্রোগেটওয়ে কনফিগারেশন ফাইলে মিথ্যাতে সেট করা। যেমন:
edge_config:
proxy: http://10.224.16.85:3128
proxy_tunnel: falseএই ক্ষেত্রে, আপনি ব্যবহার করতে চান এমন প্রতিটি HTTP প্রক্সির জন্য হোস্টগুলি নিয়ন্ত্রণ করতে আপনি নিম্নলিখিত ভেরিয়েবলগুলি সেট করতে পারেন, বা কোন হোস্টগুলি এজ মাইক্রোগেটওয়ে প্রক্সিগুলি পরিচালনা করবে না: HTTP_PROXY , HTTPS_PROXY , এবং NO_PROXY ।
আপনি NO_PROXY কে কমা সীমাবদ্ধ ডোমেনের তালিকা হিসাবে সেট করতে পারেন যা এজ মাইক্রোগেটওয়ের প্রক্সি করা উচিত নয়৷ যেমন:
export NO_PROXY='localhost,localhost:8080'
HTTP_PROXY এবং HTTPS_PROXY সেট করুন HTTP প্রক্সি এন্ডপয়েন্ট এজ মাইক্রোগেটওয়ে এটিতে বার্তা পাঠাতে পারে। যেমন:
export HTTP_PROXY='http://localhost:3786' export HTTPS_PROXY='https://localhost:3786'
এই ভেরিয়েবল সম্পর্কে আরও তথ্যের জন্য, দেখুন:
https://www.npmjs.com/package/request#controlling-proxy-behaviour-using-environment-variables
এছাড়াও দেখুন
অ্যাপিজি কমিউনিটিতে কোম্পানির ফায়ারওয়ালের পিছনে এজ মাইক্রোগেটওয়ে কীভাবে সেট আপ করবেন ।
মাইক্রোগেটওয়ে-সচেতন প্রক্সিগুলিতে ওয়াইল্ডকার্ড ব্যবহার করা
আপনি একটি এজমিক্রো_* (মাইক্রোগেটওয়ে-সচেতন) প্রক্সির বেস পাথে এক বা একাধিক "*" ওয়াইল্ডকার্ড ব্যবহার করতে পারেন। উদাহরণস্বরূপ, /team/*/members- এর একটি বেস পাথ ক্লায়েন্টদের https://[host]/team/blue/members এবং https://[host]/team/green/members কল করার অনুমতি দেয় আপনাকে নতুন তৈরি করার প্রয়োজন ছাড়াই নতুন দলকে সমর্থন করার জন্য API প্রক্সি। নোট করুন যে /**/ সমর্থিত নয়।
গুরুত্বপূর্ণ: Apigee একটি বেস পাথের প্রথম উপাদান হিসাবে একটি ওয়াইল্ডকার্ড "*" ব্যবহার করা সমর্থন করে না। উদাহরণস্বরূপ, এটি সমর্থিত নয়: /*/ অনুসন্ধান।
ডিবাগিং এবং ট্রাবলশুটিং
একটি ডিবাগারের সাথে সংযোগ করা হচ্ছে৷
আপনি একটি ডিবাগার দিয়ে এজ মাইক্রোগেটওয়ে চালাতে পারেন, যেমন নোড-ইন্সপেক্টর । এটি সমস্যা সমাধান এবং কাস্টম প্লাগইন ডিবাগ করার জন্য দরকারী।
- ডিবাগ মোডে এজ মাইক্রোগেটওয়ে পুনরায় চালু করুন। এটি করার জন্য, স্টার্ট কমান্ডের শুরুতে
DEBUG=*যোগ করুন। যেমন:
DEBUG=* edgemicro start -o myorg -e test -k db4e9e8a95aa7fabfdeacbb1169d0a8cbe42bec19c6b98129e02 -s 6e56af7c1b26dfe93dae78a735c8afc9796b077d105ae5618ce7edদ্রষ্টব্য: উইন্ডোজে,
SET DEBUG=*ব্যবহার করুন - আপনার ডিবাগার শুরু করুন এবং ডিবাগিং প্রক্রিয়ার জন্য পোর্ট নম্বরে শুনতে এটি সেট করুন।
- আপনি এখন এজ মাইক্রোগেটওয়ে কোডের মধ্য দিয়ে যেতে পারেন, ব্রেকপয়েন্ট সেট করতে পারেন, এক্সপ্রেশন দেখতে পারেন এবং আরও অনেক কিছু করতে পারেন।
আপনি ডিবাগ মোড সম্পর্কিত স্ট্যান্ডার্ড Node.js পতাকা নির্দিষ্ট করতে পারেন। উদাহরণস্বরূপ, --nolazy অ্যাসিঙ্ক্রোনাস কোড ডিবাগ করতে সাহায্য করে।
লগ ফাইল চেক করা হচ্ছে
যদি আপনার সমস্যা হয়, এক্সিকিউশন বিশদ এবং ত্রুটি তথ্যের জন্য লগ ফাইলগুলি পরীক্ষা করতে ভুলবেন না। বিস্তারিত জানার জন্য, লগ ফাইল পরিচালনা দেখুন।
API কী নিরাপত্তা ব্যবহার করে
এজ মাইক্রোগেটওয়েতে অনুরোধ করা ক্লায়েন্টদের প্রমাণীকরণের জন্য API কীগুলি একটি সহজ পদ্ধতি প্রদান করে। আপনি এজ মাইক্রোগেটওয়ে প্রমাণীকরণ প্রক্সি অন্তর্ভুক্ত Apigee এজ পণ্য থেকে কনজিউমার কী (ক্লায়েন্ট আইডিও বলা হয়) মান অনুলিপি করে একটি API কী পেতে পারেন।
কী ক্যাশিং
API কীগুলি বহনকারী টোকেনের জন্য বিনিময় করা হয়, যা ক্যাশে করা হয়। আপনি এজ মাইক্রোগেটওয়েতে ইনকামিং রিকোয়েস্টে Cache-Control: no-cache হেডার সেট করে ক্যাশিং অক্ষম করতে পারেন।
OAuth2 টোকেন নিরাপত্তা ব্যবহার করা হচ্ছে
প্রক্সি অনুরোধের সাথে একটি OAuth টোকেন ব্যবহার করার বিষয়ে বিস্তারিত জানার জন্য, Secure Edge Microgateway দেখুন।
একটি API কী ব্যবহার করে
প্রক্সি অনুরোধের সাথে API কী ব্যবহার করার বিষয়ে বিস্তারিত জানার জন্য, সিকিউর এজ মাইক্রোগেটওয়ে দেখুন।
API কী নাম কনফিগার করা হচ্ছে
ডিফল্টরূপে, x-api-key হল API কী শিরোনাম বা ক্যোয়ারী প্যারামিটারের জন্য ব্যবহৃত নাম। আপনি কনফিগারেশন ফাইলে এই ডিফল্টটি পরিবর্তন করতে পারেন, যেমনটি কনফিগারেশন পরিবর্তন করা এ ব্যাখ্যা করা হয়েছে। উদাহরণস্বরূপ, apiKey নামটি পরিবর্তন করতে:
oauth: allowNoAuthorization: false allowInvalidAuthorization: false api-key-header: apiKey